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

linuxÇý¶¯Ä£¿é


¹¤×÷¶ÓÁУ¨work queue£©ÊÇÁíÍâÒ»ÖÖ½«¹¤×÷ÍÆºóÖ´ÐеÄÐÎʽ £¬ËüºÍÎÒÃÇÇ°ÃæÌÖÂÛµÄËùÓÐÆäËûÐÎʽ¶¼Óв»Í¬¡£¹¤×÷¶ÓÁпÉÒ԰ѹ¤×÷ÍÆºó£¬½»ÓÉÒ»¸öÄÚºËÏß³ÌÈ¥Ö´ÐУ¬Ò²¾ÍÊÇ˵£¬Õâ¸öϰ벿·Ö¿ÉÒÔÔÚ½ø³ÌÉÏÏÂÎÄÖÐÖ´ÐС£ÕâÑù£¬Í¨¹ý¹¤×÷¶ÓÁÐÖ´ÐеĴúÂëÄÜÕ¼¾¡½ø³ÌÉÏÏÂÎĵÄËùÓÐÓÅÊÆ¡£×îÖØÒªµÄ¾ÍÊǹ¤×÷¶ÓÁÐÔÊÐí±»ÖØÐµ÷¶ÈÉõÖÁÊÇ˯Ãß¡£
ÄÇô£¬Ê²Ã´Çé¿öÏÂʹÓù¤×÷¶ÓÁУ¬Ê²Ã´Çé¿öÏÂʹÓÃtasklet¡£Èç¹ûÍÆºóÖ´ÐеÄÈÎÎñÐèҪ˯Ãߣ¬ÄÇô¾ÍÑ¡Ôñ¹¤×÷¶ÓÁС£Èç¹ûÍÆºóÖ´ÐеÄÈÎÎñ²»ÐèҪ˯Ãߣ¬ÄÇô¾ÍÑ¡Ôñtasklet¡£ÁíÍ⣬Èç¹ûÐèÒªÓÃÒ»¸ö¿ÉÒÔÖØÐµ÷¶ÈµÄʵÌåÀ´Ö´ÐÐÄãµÄϰ벿´¦Àí£¬Ò²Ó¦¸ÃʹÓù¤×÷¶ÓÁС£ËüÊÇΨһÄÜÔÚ½ø³ÌÉÏÏÂÎÄÔËÐеÄϰ벿ʵÏֵĻúÖÆ£¬Ò²Ö»ÓÐËü²Å¿ÉÒÔ˯Ãß¡£ÕâÒâζ×ÅÔÚÐèÒª»ñµÃ´óÁ¿µÄÄÚ´æÊ±¡¢ÔÚÐèÒª»ñÈ¡ÐźÅÁ¿Ê±£¬ÔÚÐèÒªÖ´ÐÐ×èÈûʽµÄI/O²Ù×÷ʱ£¬Ëü¶¼»á·Ç³£ÓÐÓá£Èç¹û²»ÐèÒªÓÃÒ»¸öÄÚºËÏß³ÌÀ´ÍƺóÖ´Ðй¤×÷£¬ÄÇô¾Í¿¼ÂÇʹÓÃtasklet¡£
 
1.      ¹¤×÷¡¢¹¤×÷¶ÓÁк͹¤×÷ÕßÏß³Ì
ÈçǰËùÊö£¬ÎÒÃǰÑÍÆºóÖ´ÐеÄÈÎÎñ½Ð×ö¹¤×÷£¨work£©£¬ÃèÊöËüµÄÊý¾Ý½á¹¹Îªwork_struct£¬ÕâЩ¹¤×÷ÒÔ¶ÓÁнṹ×éÖ¯³É¹¤×÷¶ÓÁУ¨workqueue£©£¬ÆäÊý¾Ý½á¹¹Îªworkqueue_struct£¬¶ø¹¤×÷Ï߳̾ÍÊǸºÔðÖ´Ðй¤×÷¶ÓÁÐÖеŤ×÷¡£ÏµÍ³Ä¬ÈϵŤ×÷ÕßÏß³ÌΪevents,×Ô¼ºÒ²¿ÉÒÔ´´½¨×Ô¼ºµÄ¹¤×÷ÕßÏ̡߳£
2.      ±íʾ¹¤×÷µÄÊý¾Ý½á¹¹
   ¹¤×÷ÓÃ<linux/workqueue.h>Öж¨ÒåµÄwork_struct½á¹¹±íʾ£º
struct  work_struct{
    unsigned long pending;          /* Õâ¸ö¹¤×÷ÕýÔڵȴý´¦ÀíÂð£¿*/
    struct list_head entry;         /* Á¬½ÓËùÓй¤×÷µÄÁ´±í */ 
    void (*func) (void *);          /* ÒªÖ´Ðеĺ¯Êý */
    void *data;                     /* ´«µÝ¸øº¯ÊýµÄ²ÎÊý */
    void *wq_data;                  /* ÄÚ²¿Ê¹Óà */
    struct timer_list timer;    &n


Ïà¹ØÎĵµ£º

linuxÄÚºËÏà¹Ø»ù´¡

Ò»¡¢ÈÎÎñ¹ÜÀí
linuxÄں˵Ä3ÖÖµ÷¶È·½·¨¼ò½éÈçÏ£º
@SCHED_OTHER  ·Öʱµ÷¶È²ßÂÔ£¬½ø³ÌµÄȱʡÀàÐÍ£¬²ÉÓö¯Ì¬ÓÅÏȵ÷¶È²ßÂÔ£¬Ñ¡Ôñ½ø³ÌµÄÒÀ¾ÝÖ÷ÒªÊǸù¾Ý½ø³ÌgoognessÖµµÄ´óС£¬ÕâÖÖ½ø³ÌÔÚÔËÐÐʱ£¬¿ÉÒÔ±»¸ßgoodnessÖµµÄ½ø³ÌÇÀÏÈ£»
@SCHED_FIFO  ʵʱµ÷¶È²ßÂÔ£¬Ïȵ½ÏÈ·þÎñ£¬×ñÊØPOSIX1.b±ê×¼µÄFIFOµ÷¶È¹æÔò£¬Ëü»áÒ»Ö±Ô ......

ǶÈëʽlinux½Ìѧ´ó¸Ù

1¡¢Linux »ù´¡
°²×°Linux²Ù×÷ϵͳ
LinuxÎļþϵͳ
Linux³£ÓÃÃüÁî
LinuxÆô¶¯¹ý³ÌÏê½â
ÊìϤLinux·þÎñÄܹ»¶ÀÁ¢°²×°Linux²Ù×÷ϵͳ
Äܹ»ÊìÁ·Ê¹ÓÃLinuxϵͳµÄ»ù±¾ÃüÁî
ÈÏʶLinuxϵͳµÄ³£Ó÷þÎñ°²×°Linux²Ù×÷ϵͳ
Linux»ù±¾ÃüÁîʵ¼ù
ÉèÖÃLinux»·¾³±äÁ¿
¶¨ÖÆLinuxµÄ·þÎñ Shell ±à³Ì»ù´¡Ê¹ÓÃvi±à¼­Îļþ
ʹÓÃEmac ......

Linux»·¾³ÏµÄSocket±à³Ì

Linux»·¾³ÏµÄSocket±à³Ì
ʲôÊÇSocket
¡¡¡¡Socket½Ó¿ÚÊÇTCP/IPÍøÂçµÄAPI£¬Socket½Ó¿Ú¶¨ÒåÁËÐí¶àº¯Êý»òÀý³Ì£¬³ÌÐòÔ±¿ÉÒÔÓÃËüÃÇÀ´¿ª·¢TCP/IPÍøÂçÉϵÄÓ¦ÓóÌÐò¡£ÒªÑ§InternetÉϵÄTCP/IPÍøÂç±à³Ì£¬±ØÐëÀí½âSocket½Ó¿Ú¡£
¡¡¡¡Socket½Ó¿ÚÉè¼ÆÕß×îÏÈÊǽ«½Ó¿Ú·ÅÔÚUnix²Ù×÷ϵͳÀïÃæµÄ¡£Èç¹ûÁ˽âUnixϵͳµÄÊäÈëºÍÊä³öµÄ»°£¬¾Íº ......

linux ϼ¯³É svn ÖÁ eclipse È«¹ý³Ì

 linux ϼ¯³É svn ÖÁ eclipse È«¹ý³Ì
ÒòΪ java ¿çƽ̨,¶ø eclipse ÊǸö´¿ java ¿ª·¢ÏîÄ¿,ËùÒԴ˼¯³É°²×°¹ý³ÌͬÑùÊÊÓÃÓÚ windows ϵͳ.
µÚÒ»²½:ÏÂÔØ¼¯³É svn ÖÁ eclipse ËùÐèµÄ°ü site-1.6.5.zip(¿ÉÒÔÈ¥¹ÙÍø http://subclipse.tigris.org/ ÏÂÔØ,Ò²¿ÉÒÔÈ¥×÷ÕßµÄ csdn ×ÊÔ´ÀïÏÂÔØ site-1.6.5.zip ²å¼þ)
µÚ¶þ²½:½« si ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ