Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

linuxÇý¶¯±à³ÌºËÐÄÀíÂÛÖ®²¢·¢¿ØÖÆ

Çý¶¯±à³ÌºËÐÄÀíÂÛÖ®²¢·¢¿ØÖÆ
²¢·¢£¬¾¹Ì¬µÄÀí½â£ºÒ²¾ÍÊÇLinuxµÄ¶«Î÷ÔÚʱ¼äºÍ¿Õ¼ä±»Í¬Ê±Ê¹Óõ¼ÖµÄÎÊÌâ
LinuxϵͳÌṩµÄ½â¾ö·½°¸£º
    ÖмÌÆÁ±Î
    Ô­×Ó²Ù×÷
    ×ÔÐýËø
    ÐźÅÁ¿
   
1,ÖжÏÆÁ±Î
    Ê×ÏÈÕâ¸öÒÀÀµÓÚCPU£¬CPUÒ»°ãÌṩÆÁ±ÎÖжϵĴò¿ªÖжϵŦÄÜ,ÖжÏÆÁ±ÎʹµÃÖжϺͽø³ÌÖ®¼äµÄ²¢·¢
    ²»ÔÙ·¢Éú£¬Í¬Ê±½ø³Ìµ÷ÊÔÒ²ÒÀÀµÓÚÖжϣ¬ÄÚºËÇÀÕ¼µÄ½ø³Ì¼ä²¢·¢Ò²¾Í¿ÉÒÔ±ÜÃâ
   
    ʹÓ÷½·¨
    local_irq_disable()//ÆÁ±ÎÖжÏ
    ...
    critical section()//ÁÙ½çÇø
    ...
    local_irq_enable()//´ò¿ªÖжÏ
    ÕâÖÖ·½·¨Ö»Äܽâ¾öµ¥¸öCPUµÄÎÊÌâ
   
    ×¢Òâ £º ³¤Ê±¼äÖжÏÆÁ±ÎºÜΣÏÕ£¬±È½ÏÊʺϺÍ×ÔÐýËøÁªºÏʹÓÃ
    local_irq_save(flags)    ½ûÖ¹ÖжÏͬʱ±£´æÄ¿Ç°CPUµÄÖжÏÐÅϢλ
    local_irq_restore(flags) ´ò¿ªÖжÏͬʱ»Ö¸´ÖжÏÐÅϢλ
    µ×°ë²¿²Ù×÷
    local_bh_disable()
    local_bh_enable()
   
2,Ô­×Ó²Ù×÷
    Ô­×Ó²Ù×÷ÊÇÖ¸ÔÚÖ´Ðйý³ÌÖв»»á±»µÄ´úÂë·¾¶ËùÖжϵIJÙ×÷¡£´ýÀí½â
    ·ÖΪÁ½À࣬Õë¶ÔλµÄ²Ù×÷ºÍÕûÐͱäÁ¿µÄ²Ù×÷
   
    Õë¶ÔÕûÐͱäÁ¿µÄÔ­×Ó²Ù×÷µÄÏà¹Øº¯Êý
    void atomic_set(atomic_t *v, int i);//ÉèÖÃÔ­×Ó±äÁ¿µÄֵΪi
    atomic_t v = ATOMIC_INIT(0);//¶¨ÒåÔ­×Ó±äÁ¿v²¢³õʼ»¯Îª0
    atomic_read(atomic_t *v);//·µ»ØÔ­×Ó±äÁ¿µÄÖµ
    void atomic_add(int i, atomic_t *v);//Ô­×Ó±äÁ¿Ôö¼Ói
    void atomic_sub(int i, atomic_t *v);//Ô­×Ó±äÁ¿¼õÉÙi
    void atomic_inc(atomic_t *v);//Ô­×Ó±äÁ¿×ÔÔö¼Ó1
    void atomic_dec(atomic_t *v);//Ô­×Ó±äÁ¿×Ô¼õÉÙ1
    ²Ù×÷²¢²âÊÔº¯Êý
    int atomic_inc_and_test(atomic_t *v);
    int atomic_dec


Ïà¹ØÎĵµ£º

LinuxÄ£¿é±à³Ì


ÕªÒª
LinuxÄÚºËÄ£¿é±à³ÌµÄ×ÊÁÏÓÐЩ·×·±¸´ÔÓ£¬ÓеĹýÓÚ¼òµ¥£¬ÓеĹýÓÚÅÓÔÓ£¬ÎÒÊÔͼÓñʼǵÄÐÎʽÏë¶ÁÕßչʾÔõÑùÀ´½ø³ÌLinuxÄ£¿é±à³Ì£¬Á¦Í¼×öµ½¼òÃ÷¶óÒª£¬ÕâƪÎÄÕÂÒ²ÊÇ×÷Ϊ±¾È˱¸ÍüµÄ×ÊÁÏ£¬ËùÒÔÓÐЩµØ·½¹ýÓÚ¼òÂÔÊÇÄÑÃâµÄ¡£±¾À´ÕâƪÎÄÕµÄÄ¿µÄ¾ÍÊÇÈÃÓû§ÖªÆäÈ»£¬ÖÁÓÚËùÒÔÈ»»¹ÊÇÇë²Î¿¼ÏàÓ¦µÄ×ÊÁÏ£¬Æäʵ×îºÃµÄ×ÊÁÏĪ¹ýÓÚLinux ......

LinuxϵĻ·¾³±äÁ¿

 
ÎÒÃÇÔÚLinuxÏ°²×°ÏµÍ³Èí¼þµÄʱºò,¾­³£Óöµ½Ò»Ð©ÏµÍ³»·¾³±äÁ¿ÅäÖõÄÎÊÌ⡣ʲôÊÇ»·¾³±äÁ¿£¿ÈçºÎ¶¨ÖÆ»·¾³±äÁ¿£¿ÎÒ½«ÔÚÏÂÃæ×öһЩ½éÉÜ¡£
Ò»¡¢ ʲôÊÇ»·¾³±äÁ¿£¿
LinuxÊÇÒ»¸ö¶àÓû§µÄ²Ù×÷ϵͳ¡£¶àÓû§Òâζ×Åÿ¸öÓû§µÇ¼ϵͳºó£¬¶¼ÓÐ×Ô¼º×¨ÓõÄÔËÐл·¾³¡£¶øÕâ¸ö»·¾³ÊÇÓÉÒ»×é±äÁ¿Ëù¶¨Òå, Õâ×é±äÁ¿±»³ÆΪ»·¾³±äÁ¿¡£Óû§ ......

LINUXϽøÐÐCÓïÑÔ±à³Ì

Ô´³ÌÐò±àÒë  

MakefileµÄ±àд  

³ÌÐò¿âµÄÁ´½Ó  

³ÌÐòµÄµ÷ÊÔ  

Í·ÎļþºÍϵͳÇóÖú  


1.Ô´³ÌÐòµÄ±àÒë  

ÔÚLinuxÏÂÃæ,Èç¹ûÒª±àÒëÒ»¸öCÓïÑÔÔ´³ÌÐò,ÎÒÃÇҪʹÓÃGNUµÄgcc±àÒëÆ÷.   ÏÂÃæÎÒÃÇÒÔÒ»¸öʵÀýÀ´ËµÃ÷ÈçºÎʹÓÃgcc±àÒëÆ÷.  
......

LINUX ÎÒÓÀÔ¶µÄÍ´

¸Õ¸Õ´ÓÒ»¼ÒÖªÃûµÄɱ¶¾Èí¼þ¹«Ë¾´ÇÖ°¡£ÔÚÕâ¼Ò¹«Ë¾¸ÉÁËÒ»Äê°ë£¬ÍêÈ«ÊÇWINDOWSƽ̨µÄÓ¦Óÿª·¢£¬×ö²»ÍêµÄ½çÃæ¡¢ÅäÖá¢ÈÕÖ¾£¬¶¥¶àÔÙÀ´Ð©Êý¾Ý¿â½Ó¿Ú¿ª·¢¡£·¦Î¶¡£¡£ÎÞÁÄ¡£¡£²»¸ÉÁË£¡
ÆäʵÎÒ±¾À´¾Í²»¸ÃÀ´Õâ¼Ò¹«Ë¾¡£Ö®Ç°ÔÚÖØÇì×ö¹ýÁ½ÄêµÄÍøÂçÓÎÏ·¿ª·¢£¬À´±±¾©µ½Ê±ºò±¾Ïë¼ÌÐøÕâ·½Ãæ¡£Ö»ÊÇÔÚÕâ¼ÒÖªÃû¹«Ë¾ÓиöÊìÈ˰ѼòÀú¸øµÝ¹ýÈ¥ÁË£¬µ±Ê ......

ÔÚLinuxÖÐÖ´ÐÐ.sh½Å±¾£¬Òì³£/bin/sh^M

ÔÚLinuxÖÐÖ´ÐÐ.sh½Å±¾£¬Òì³£/bin/sh^M
www.firnow.com    ʱ¼ä £º 2009-07-29  ×÷ÕߣºÄäÃû   ±à¼­£ºtoman µã»÷£º  199 [ ÆÀÂÛ ]
-
-
ÔÚLinuxÖÐÖ´ÐÐ.sh½Å±¾£¬Òì³£/bin/sh^M: bad interpreter: No such file or directory¡£
 
·ÖÎö£ºÕâÊDz»Í¬ÏµÍ³±àÂë¸ñʽÒýÆðµÄ£ºÔÚwindowsÏ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ