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
Ïà¹ØÎĵµ£º
1¡¢Linux »ù´¡
°²×°Linux²Ù×÷ϵͳ
LinuxÎļþϵͳ
Linux³£ÓÃÃüÁî
LinuxÆô¶¯¹ý³ÌÏê½â
ÊìϤLinux·þÎñÄܹ»¶ÀÁ¢°²×°Linux²Ù×÷ϵͳ
Äܹ»ÊìÁ·Ê¹ÓÃLinuxϵͳµÄ»ù±¾ÃüÁî
ÈÏʶLinuxϵͳµÄ³£Ó÷þÎñ°²×°Linux²Ù×÷ϵͳ
Linux»ù±¾ÃüÁîʵ¼ù
ÉèÖÃLinux»·¾³±äÁ¿
¶¨ÖÆLinuxµÄ·þÎñ Shell ±à³Ì»ù´¡Ê¹ÓÃvi±à¼Îļþ
ʹÓÃEmac ......
LinuxÏ»ñµÃϵͳʱ¼äµÄCÓïÑÔµÄʵÏÖ·½·¨
#include<time.h> //CÓïÑÔµÄÍ·Îļþ
#include<stdio.h> //C﵀I/O
void main()
{
time_t now; //ʵÀý»¯time_t½á¹¹
struct tm *timenow; //ʵÀý»¯tm½á¹¹Ö¸Õë
time(&now);
//timeº¯Êý¶ÁÈ¡ÏÖÔÚµ ......
¹¤×÷Öо³£ÐèÒªKill¶à¸ö½ø³Ì£¬Èç¹ûÕâЩ½ø³ÌÓй²Í¬µÄÌØµã£¬¾Í¿ÉÒÔÓÃÒ»ÌõÃüÁîKillµôËüÃÇ¡£
±ÈÈçÇå³ýOracleÊý¾Ý¿âµÄËùÓÐÔ¶³ÌÁ¬½Ó½ø³Ì£º
ps -efww|grep LOCAL=NO|grep -v grep|cut -c 9-15|xargs kill -9
¡¡¡¡¹ÜµÀ·û“|”ÓÃÀ´¸ô¿ªÁ½¸öÃüÁ¹ÜµÀ·û×ó±ßÃüÁîµÄÊä³ö»á×÷Ϊ¹ÜµÀ·ûÓÒ±ßÃüÁîµÄÊäÈë¡£ÏÂÃæËµËµÓà ......
linuxµÄ½ø³Ì¼äͨÐÅ·½Ê½Ö÷ÒªÓУºÄäÃû¹ÜµÀ¡¢ÓÐÃû¹ÜµÀ¡¢ÏûÏ¢¶ÓÁС¢¹²ÏíÄÚ´æ¡¢Ðźš¢ÐźÅÁ¿¼°Ðźŵơ¢socketÍøÂçͨÐÅ¡£½üÈÕÓÉÓÚÏîÄ¿ÐèÒª£¬ÓÃlinux±àдarmµÄÓ¦ÓóÌÐò£¬ÀïÃæÓм¸¸ö¹¦ÄÜÄ£¿é£¬Èô¸É½ø³Ì£¬½ø³Ì¼äµÄͨÐÅ·½Ê½Ñ¡ÔñÁ˹ܵÀ¡¢¹²ÏíÄÚ´æºÍÐźÅÁ¿µÄÅäºÏ¡£Õ⼸ÌìÖÕÓڰѳÌÐòµÄ¿ò¼Ü´î½¨ºÃÁË£¬¶øÎÒÒ²¶Ô¹ÜµÀͨÐÅÓÐÁ˽øÒ»²½µÄÈÏʶ¡£
......