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ÊÇÒ»¸ö¶àÓû§µÄ²Ù×÷ϵͳ¡£¶àÓû§Òâζ×Åÿ¸öÓû§µÇ¼ϵͳºó£¬¶¼ÓÐ×Ô¼º×¨ÓõÄÔËÐл·¾³¡£¶øÕâ¸ö»·¾³ÊÇÓÉÒ»×é±äÁ¿Ëù¶¨Òå, Õâ×é±äÁ¿±»³ÆΪ»·¾³±äÁ¿¡£Óû§ ......
Ô´³ÌÐò±àÒë
MakefileµÄ±àд
³ÌÐò¿âµÄÁ´½Ó
³ÌÐòµÄµ÷ÊÔ
Í·ÎļþºÍϵͳÇóÖú
1.Ô´³ÌÐòµÄ±àÒë
ÔÚLinuxÏÂÃæ,Èç¹ûÒª±àÒëÒ»¸öCÓïÑÔÔ´³ÌÐò,ÎÒÃÇҪʹÓÃGNUµÄgcc±àÒëÆ÷. ÏÂÃæÎÒÃÇÒÔÒ»¸öʵÀýÀ´ËµÃ÷ÈçºÎʹÓÃgcc±àÒëÆ÷.
......
¸Õ¸Õ´ÓÒ»¼ÒÖªÃûµÄɱ¶¾Èí¼þ¹«Ë¾´ÇÖ°¡£ÔÚÕâ¼Ò¹«Ë¾¸ÉÁËÒ»Äê°ë£¬ÍêÈ«ÊÇWINDOWSƽ̨µÄÓ¦Óÿª·¢£¬×ö²»ÍêµÄ½çÃæ¡¢ÅäÖá¢ÈÕÖ¾£¬¶¥¶àÔÙÀ´Ð©Êý¾Ý¿â½Ó¿Ú¿ª·¢¡£·¦Î¶¡£¡£ÎÞÁÄ¡£¡£²»¸ÉÁË£¡
ÆäʵÎÒ±¾À´¾Í²»¸ÃÀ´Õâ¼Ò¹«Ë¾¡£Ö®Ç°ÔÚÖØÇì×ö¹ýÁ½ÄêµÄÍøÂçÓÎÏ·¿ª·¢£¬À´±±¾©µ½Ê±ºò±¾Ïë¼ÌÐøÕâ·½Ãæ¡£Ö»ÊÇÔÚÕâ¼ÒÖªÃû¹«Ë¾ÓиöÊìÈ˰ѼòÀú¸øµÝ¹ýÈ¥ÁË£¬µ±Ê ......
ÔÚ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Ï ......