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

linux 2.6Ô´´úÂëÇé¾°·ÖÎö±Ê¼ÇÖ®½ø³Ì1

½ø³ÌÊdzÌÐòÖ´ÐÐʱµÄÒ»¸öʵÀý£¬Êdzä·ÖÃèÊö³ÌÐòÒѾ­Ö´Ðе½ºÎÖ̶ֳȵÄÊý¾Ý½á¹¹µÄ»ã¼¯¡£ÔÚlinuxÖУ¬³£½«½ø³Ì³ÆÎªÈÎÎñ£¨task£©»òÕßỊ̈߳¨thread£©¡£½ø³ÌµÄÄ¿µÄ¾ÍÊdzе£·ÖÅäϵͳ×ÊÔ´µÄʵÌå¡£
µ±Ò»¸ö½ø³Ì´´½¨Ê±£¬¼¸ºõÓ븸½ø³ÌÏàͬ¡£½ÓÊܸ¸½ø³ÌµØÖ·¿Õ¼äµÄÒ»¸öÂß¼­¿½±´£¬²¢´Ó½ø³Ì´´½¨ÏµÍ³µ÷ÓõÄÏÂÒ»ÌõÖ¸ÁʼִÐÐÓ븸½ø³ÌÏàͬµÄ´úÂë¡£¾¡¹Ü¸¸×Ó½ø³Ì¿ÉÒÔ¹²Ïíº¬ÓгÌÐò´úÂëµÄÒ³£¬µ«ÊÇËüÃǸ÷×ÔÓжÀÁ¢µÄÊý¾Ý¿½±´£¨Õ»ºÍ¶Ñ£©£¬Òò´Ë×Ó½ø³Ì¶ÔÒ»¸öÄÚ´æµ¥ÔªµÄÐ޸ĶԸ¸½ø³ÌÊDz»¿É¼ûµÄ¡£
linuxʹÓÃÇáÁ¿¼¶½ø³Ì£¨lightwetght process£©¶Ô¶àÏß³ÌÓ¦ÓóÌÐòÌṩ¸üºÃµÄÖ§³Ö¡£Á½¸öÇáÁ¿¼¶½ø³Ì»ù±¾ÉÏ¿ÉÒÔ¹²ÏíһЩ×ÊÔ´£¬ÖîÈçµØÖ·¿Õ¼ä¡¢´ò¿ªµÄÎļþµÈµÈ¡£Ö»ÒªÆäÖÐÒ»¸öÐ޸Ĺ²Ïí×ÊÔ´£¬ÁíÒ»¸ö¾ÍÁ¢¼´²é¿´ÕâÖÖÐ޸ġ£Á½¸öÏ̷߳ÃÎʹ²Ïí×ÊԴʱ¾Í±ØÐëͬ²½ËüÃÇ×Ô¼º¡£ÊµÏÖ¶àÏß³ÌÓ¦ÓóÌÐòµÄÁíÒ»¸ö¼òµ¥·½Ê½¾ÍÊǰÑÇáÁ¿¼¶½ø³ÌÓëÿ¸öÏ̹߳ØÁªÆðÀ´¡£Ïß³ÌÖ®¼ä¾Í¿ÉÒÔͨ¹ý¼òµ¥µØ¹²ÏíͬһÄÚ´æµØÖ·¿Õ¼ä¡¢Í¬Ò»´ò¿ªÎļþ¼¯µÈÀ´·ÃÎÊÏàͬµÄÓ¦ÓóÌÐòÊý¾Ý½á¹¹¼¯£»Í¬Ê±£¬Ã¿¸öÏ̶߳¼¿ÉÒÔÓÉÄں˶ÀÁ¢µ÷¶È£¬ÒÔ±ãÓÚÒ»¸ö˯ÃßµÄͬʱÁíÒ»¸öÈÔÈ»ÊÇ¿ÉÒÔÔËÐеġ£
ÃèÊö½ø³ÌÊý¾Ý½á¹¹µÄÊÇtask_struct,ËüµÄ×ֶΰüº¬ÁËÓëÒ»¸ö½ø³ÌÏà¹ØµÄËùÓÐÐÅÏ¢¡£/include/linux/sched.h
½ø³ÌµÄ״̬ºÍ½ø³ÌµÄ¸¸£¯×Ó¼ä¹ØÏµ
½ø³Ì״̬£º
½ø³ÌÃèÊö·ûÖеÄstate×Ö¶ÎÃèÊöÁ˽ø³Ìµ±Ç°Ëù´¦µÄ״̬¡£ÓÉÒ»×é±êÖ¾×é³É£¬ÆäÖÐÿ¸ö±êÖ¾ÃèÊöÒ»ÖÖ¿ÉÄܵĽø³Ì״̬¡£ÕâЩ״̬ÊÇ»¥³â£¬Òò´ËÖ»ÄÜÉèÖÃÒ»ÖÖ״̬£¬ÆäÓàµÄ±êÖ¾½«±»Çå³ý¡£
#define TASK_RUNNING            0    
¿ÉÔËÐÐ״̬£¬½ø³ÌҪôÔÚcpuÉÏÖ´ÐУ¬ÒªÃ´×¼±¸Ö´ÐС£
#define TASK_INTERRUPTIBLE      1    
¿ÉÖжϵȴý״̬£¬½ø³Ì±»¹ÒÆð£¨Ë¯Ãߣ©£¬Ö±µ½Ä³¸öÌõ¼þ±äÎªÕæ¡£²úÉúÒ»¸öÓ²¼þÖжϣ¬ÊͷŽø³ÌÕýµÈ´ýµÄϵͳ×ÊÔ´£¬»ò´«µÝÒ»¸öÐźŶ¼ÊÇ¿ÉÒÔ»½Ðѽø³ÌµÄÌõ¼þ£¨°Ñ½ø³ÌµÄ״̬·Å»Øµ½TASK_RUNNING£©.
#define TASK_UNINTERRUPTIBLE    2
²»¿ÉÖжϵĵȴý״̬£¬Óë¿ÉÖжϵĵȴý״̬ÀàËÆ£¬µ£ÓÇÒ»¸öÀýÍ⣬°ÑÐźŴ«µÝµ½Ë¯Ãß½ø³Ì²»ÄܸıäËüµÄ״̬¡£ÕâÖÖ״̬ºÜÉÙÓõ½£¬µ«ÔÚÒ»Ð©ÌØ¶¨µÄÇé¿öÏ£¨½ø³Ì±ØÐëµÈ´ý£¬Ö±µ½Ò»¸ö²»Äܱ»ÖжϵÄʼþ·¢Éú£©£¬ÕâÖÖ״̬ÊǺÜÓÐÓõġ£ÀýÈ磬µ±½ø³Ì´ò¿ªÒ»¸öÉ豸Îļþ£¬ÆäÏàÓ¦µÄÉ豸Çý¶¯³ÌÐò¿ªÊ¼Ì½²âÏàÓ¦µÄÓ²¼þÉ豸ʱ»áÓõ½ÕâÖÖ״̬¡£Ì½²âÍê³ÉÒÔǰ£¬É豸Çý


Ïà¹ØÎĵµ£º

linux selectº¯ÊýÓ÷¨

ת×Ô£ºhttp://www.91linux.com/html/article/kernel/20090102/15232.html
      selectϵͳµ÷ÓÃÊÇÓÃÀ´ÈÃÎÒÃǵijÌÐò¼àÊÓ¶à¸öÎļþ¾ä±úµÄ״̬±ä»¯µÄ¡£³ÌÐò»áÍ£ÔÚselectÕâÀïµÈ´ý£¬Ö±µ½±»¼àÊÓµÄÎļþ¾ä±úÓÐÒ»¸ö»ò¶à¸ö·¢ÉúÁË״̬¸Ä±ä¡£¹ØÓÚÎļþ¾ä±ú£¬Æäʵ¾ÍÊÇÒ»¸öÕûÊý£¬ÎÒÃÇ×îÊìϤµÄ¾ä±úÊÇ0¡¢1¡¢2Èý¸ö£¬ ......

linuxϸ÷ÖÖ¸ñʽµÄѹËõ°üµÄѹËõ¡¢½âѹ·½·¨


.tar
½â°ü£ºtar xvf FileName.tar
´ò°ü£ºtar cvf FileName.tar DirName
£¨×¢£ºtarÊÇ´ò°ü£¬²»ÊÇѹËõ£¡£©
———————————————
.gz
½âѹ1£ºgunzip FileName.gz
½âѹ2£ºgzip -d FileName.gz
ѹËõ£ºgzip FileName
.tar.gz º ......

LinuxϵĶδíÎóµÄÔ­Òò¼°µ÷ÊÔ

¼ò¶øÑÔÖ®,²úÉú¶Î´íÎó¾ÍÊÇ·ÃÎÊÁË´íÎóµÄÄÚ´æ¶Î£¬Ò»°ãÊÇÄãûÓÐȨÏÞ£¬»òÕ߸ù±¾¾Í²»´æÔÚ¶ÔÓ¦µÄÎïÀíÄÚ´æ,ÓÈÆä³£¼ûµÄÊÇ·ÃÎÊ0µØÖ·.
Ò»°ãÀ´Ëµ,
¶Î´íÎó¾ÍÊÇÖ¸·ÃÎʵÄÄڴ泬³öÁËϵͳËù¸øÕâ¸ö³ÌÐòµÄÄÚ´æ¿Õ¼ä£¬Í¨³£Õâ¸öÖµÊÇÓÉgdtrÀ´±£´æµÄ£¬ËûÊÇÒ»¸ö48λµÄ¼Ä´æÆ÷£¬ÆäÖеÄ32λÊDZ£´æÓÉËüÖ¸ÏòµÄ
gdt±í£¬ºó13λ±£´æÏàÓ¦ÓÚgdtµÄϱ꣬×îºó3 ......

linuxѹËõÃüÁî

01-.tar¸ñʽ
½â°ü£º[£ª£ª£ª£ª£ª£ª£ª]$ tar xvf FileName.tar
´ò°ü£º[£ª£ª£ª£ª£ª£ª£ª]$ tar cvf FileName.tar DirName£¨×¢£ºtarÊÇ´ò°ü£¬²»ÊÇѹËõ£¡£©
02-.gz¸ñʽ
½âѹ1£º[£ª£ª£ª£ª£ª£ª£ª]$ gunzip FileName.gz
½âѹ2£º[£ª£ª£ª£ª£ª£ª£ª]$ gzip -d FileName.gz
ѹ Ëõ£º[£ª£ª£ª£ª£ª£ª£ª]$ gzip FileName
03-.tar.gz¸ñʽ ......

»ùÓÚATMEL AT91RM9200µÄǶÈëʽLinuxÒÆÖ²±Ê¼Ç


  Ç°ÃæÀûÓÿª·¢°å´øµÄÏֳɵĶ«Î÷step by stepÈÃLinux 2.4.19ÔÚ¿ª·¢°åÉÏÅÜÆðÀ´ÁË£¬¶ÔÓÚ¿ª·¢µÄÁ÷³ÌÒ²ÓÐÁËÒ»¶¨µÄÈÏʶ¡£ÏÖÔÚÏë¶Ôÿһ²½½øÐÐÏêϸÉîÈëµÄ̽ÌÖ£¬ºÃºÃѧϰһÏ£¬°Ñ±Ê¼Ç¼Ç¼ÏÂÀ´£¬Ê¡µÃÍü¼ÇÁË¡£ÓÐЩÄÚÈÝÊÇ´Ó¿´¹ýµÄÊéÖÐÕªÒª¹ýÀ´µÄ£¬´ó²¿·ÖÊÇ×Ô¼ºÊµ¼ùºóµÄÐĵá£ÎÒÏë¼ÇµÃÏêϸµã£¬Ò²ºÃΪºóÃæ×ܽá´òºÃ»ù´¡¡£
------- ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ