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

LinuxÉ豸Çý¶¯ÖеÄ×èÈûÓë·Ç×èÈûI/O

LinuxÉ豸Çý¶¯ÖеÄ×èÈûÓë·Ç×èÈûI/O
×èÈûÓë·Ç×èÈûI/O
×èÈû²Ù×÷ÊÇÖ¸ÔÚÖ´ÐÐÉ豸²Ù×÷ʱÈô²»ÄÜ»ñµÃ×ÊÔ´Ôò¹ÒÆð½ø³Ì£¬Ö±µ½Âú×ã¿É²Ù×÷µÄÌõ¼þºóÔÙ½øÐвÙ×÷¡£
ÒòΪ×èÈûµÄ½ø³Ì»á½øÈëÐÝÃß״̬£¬Òò´Ë£¬±ØÐëÈ·±£ÓÐÒ»¸öµØ·½Äܹ»»½ÐÑÐÝÃߵĽø³Ì¡£»½Ðѽø³ÌµÄµØ·½×î´ó¿ÉÄÜ·¢ÉúÔÚÖжÏÀïÃæ£¬ÒòΪӲ¼þ×ÊÔ´»ñµÃµÄͬʱÍùÍù°éËæ×ÅÒ»¸öÖжϡ£
 ×¢Ò⣺Çý¶¯³ÌÐòÐèÒªÌṩ×èÈû£¨µÈ´ý¶ÓÁУ¬Öжϣ©ºÍ·Ç×èÈû·½Ê½£¨ÂÖѯ£¬Ò첽֪ͨ£©·ÃÎÊÉ豸¡£
 ÐÝÃß(±»×èÈû)µÄ½ø³Ì´¦ÓÚÒ»¸öÌØÊâµÄ²»¿ÉÖ´ÐÐ״̬¡£Õâµã·Ç³£ÖØÒª£¬·ñÔò£¬Ã»ÓÐÕâÖÖÌØÊâ״̬µÄ»°£¬µ÷¶È³ÌÐò¾Í¿ÉÄÜÑ¡³öÒ»¸ö±¾²»Ô¸Òâ±»Ö´ÐеĽø³Ì£¬¸üÔã¸âµÄÊÇ£¬ÐÝÃ߾ͱØÐëÒÔÂÖѯµÄ·½Ê½ÊµÏÖÁË¡£½ø³ÌÐÝÃßÓи÷ÖÖÔ­Òò£¬µ«¿Ï¶¨¶¼ÊÇΪÁ˵ȴýһЩʼþ¡£Ê¼þ¿ÉÄÜÊÇÒ»¶Îʱ¼ä¡¢´ÓÎļþI/O¶Á¸ü¶àÊý¾Ý£¬»òÕßÊÇij¸öÓ²¼þʼþ¡£Ò»¸ö½ø³Ì»¹ÓпÉÄÜÔÚ³¢ÊÔ»ñµÃÒ»¸öÒѾ­Õ¼ÓõÄÄÚºËÐźÅÁ¿Ê±±»ÆÈ½øÈëÐÝÃß¡£ÐÝÃßµÄÒ»¸ö³£¼ûÔ­Òò¾ÍÊÇÎļþI/O -- Èç½ø³Ì¶ÔÒ»¸öÎļþÖ´ÐÐÁËread()²Ù×÷£¬¶øÕâÐèÒª´Ó´ÅÅÌÀï¶ÁÈ¡¡£»¹ÓУ¬½ø³ÌÔÚ»ñÈ¡¼üÅÌÊäÈëµÄʱºòÒ²ÐèÒªµÈ´ý¡£ÎÞÂÛÄÄÖÖÇé¿ö£¬Äں˵IJÙ×÷¶¼Ïàͬ:½ø³Ì°ÑËü×Ô¼º±ê¼Ç³ÉÐÝÃß״̬£¬°Ñ×Ô¼º´Ó¿ÉÖ´ÐжÓÁÐÒÆ³ö£¬·ÅÈëµÈ´ý¶ÓÁУ¬È»ºóµ÷ÓÃschedule()Ñ¡ÔñºÍÖ´ÐÐÒ»¸öÆäËû½ø³Ì¡£»½ÐѵĽø³Ì¸ÕºÃÏà·´:½ø³Ì±»ÉèÖÃΪ¿ÉÖ´ÐÐ״̬£¬È»ºóÔٴӵȴý¶ÓÁÐÖÐÒÆµ½¿ÉÖ´ÐжÓÁС£
  ÐÝÃßÓÐÁ½ÖÖÏà¹ØµÄ½ø³Ì״̬:TASK_INTERRUPTIBLE and TASK_UNINTERRUPTIBLE¡£ËüÃǵÄÎ©Ò»Çø±ðÊÇ´¦ÓÚTASK_UNINTERRUPTIBLE״̬µÄ½ø³Ì»áºöÂÔÐźţ¬¶ø´¦ÓÚTASK_INTERRUPTIBLE״̬µÄ½ø³ÌÈç¹ûÊÕµ½ÐźŻᱻ»½ÐѲ¢´¦ÀíÐźÅ(È»ºóÔٴνøÈëµÈ´ý˯Ãß״̬)¡£Á½ÖÖ״̬µÄ½ø³ÌλÓÚͬһ¸öµÈ´ý¶ÓÁÐÉÏ£¬µÈ´ýijЩʼþ£¬²»Äܹ»ÔËÐС£

  ÐÝÃßͨ¹ýµÈ´ý¶ÓÁнøÐд¦Àí¡£µÈ´ý¶ÓÁÐÊÇÓɵȴýijЩʼþ·¢ÉúµÄ½ø³Ì×é³ÉµÄ¼òµ¥Á´±í¡£ÄÚºËÓÃwake_queue_head_tÀ´´ú±íµÈ´ý¶ÓÁС£µÈ´ý¶ÓÁпÉÒÔͨ¹ýDECLARE_WAITQUEUE()¾²Ì¬´´½¨£¬Ò²¿ÉÒÔÓÐinit_waitqueue_head()¶¯Ì¬´´½¨¡£½ø³Ì°Ñ×Ô¼º·ÅÈëµÈ´ý¶ÓÁÐÖв¢ÉèÖóɲ»¿ÉÖ´ÐÐ״̬¡£µÈÓëµÈ´ý¶ÓÁÐÏà¹ØµÄʼþ·¢ÉúµÄʱºò£¬¶ÓÁÐÉϵĽø³Ì»á±»»½ÐÑ¡£ÎªÁ˱ÜÃâ²úÉú¾ºÕùÌõ¼þ£¬ÐÝÃߺͻ½ÐѵÄʵÏÖ²»ÄÜÓÐç¢Â©¡£
 µÈ´ý¶ÓÁÐ
  ÔÚLinuxÇý¶¯³ÌÐòÖУ¬¿ÉÒÔʹÓõȴý¶ÓÁÐÀ´ÊµÏÖ×èÈû½ø³ÌµÄ»½ÐÑ¡£
 ½ø³Ìͨ¹ýÖ´ÐÐÏÂÃæ¼¸²½½«×Ô¼º¼ÓÈëµ½Ò»¸öµÈ´ý¶ÓÁÐÖУº
µ±È»£¬Ê×ÏÈÊǶ¨ÒåµÈ´ý¶ÓÁÐÍ·£¬²¢³õʼ»¯£º
wait_queue_head_t wait;
init_waitqueue_he


Ïà¹ØÎĵµ£º

»ùÓÚǶÈëʽLinuxµÄÊÓÆµÍ¼Ïñ²É¼¯Óë´«Êä

 
ÕªÒª:ÊÓÆµÍ¼Ïñ²É¼¯¼°´¦Àí¼¼ÊõÔÚÔ¶³ÌÊÓÆµ¼à¿ØºÍ¿ÉÊӵ绰ÖÐÓÐ׏㷺µÄÓ¦ÓÃǰ¾°£¬Çý¶¯ÊÓÆµ²É¼¯É豸ºÍ»ñÈ¡ÊÓÆµÊý¾Ý²¢½øÐÐÏàÓ¦µÄ´¦Àí£¬ÊÇʵÏÖÕâЩӦÓõĻù´¡¡£Õë¶ÔÕâЩӦÓ㬹¹½¨ÁËÒ»¸ö»ùÓÚǶÈëʽ LinuxºÍ PXA270΢´¦ÀíÆ÷µÄÊÓÆµ²É¼¯Óë´«Êäϵͳ£¬ÀûÓà Video4LinuxʵÏÖ USBÉãÏñÍ·ÊÓÆµÊý¾Ý²É¼¯£¬²É¼¯µÄÊÓÆµÊý¾Ý¾­ JPEGѹËõº ......

linux³£ÓÃcÍ·Îļþ

linux³£ÓÃÍ·ÎļþÈçÏ£º
POSIX±ê×¼¶¨ÒåµÄÍ·Îļþ
<dirent.h>       
Ŀ¼Ïî
<fcntl.h>         Îļþ¿ØÖÆ
<fnmatch.h>    ÎļþÃûÆ¥ÅäÀàÐÍ
<glob.h>   
·¾¶ÃûģʽƥÅäÀàÐÍ
< ......

RedHat Linux 5.4 SUN JDKµÄ°²×°

1¡¢ÏÂÔØjdk£¬¿ÉÒÔÖ±½ÓÔÚRHÉÏÏÂÔØ£¬Ò²¿ÉÒÔÔÚ±¾»úÏÂÔØ£¬È»ºóͨ¹ýpsftp´«ÉÏÈ¥£¨jdk-6u20-linux-i586-rpm.bin£©
2¡¢ÓÃputtyÁ¬½Ólinux
3¡¢Ö´ÐÐjdk-6u20-linux-i586-rpm.bin ûÕÒµ½
4¡¢Ö´ÐÐ./jdk-6u20-linux-i586-rpm.bin ÕÒµ½£¬µ«Ã»ÓÐȨÏÞ
5¡¢chmod 775 jdk-6u20-linux-i586-rpm.bin ¸ÄȨÏÞ
6¡¢Ö´ÐÐ./jdk-6u20-linux-i ......

linuxϽûÖ¹ÐÞ¸ÄDNS·þÎñÆ÷µØÖ·(DNS±»×Ô¶¯ÐÞ¸ÄÎÊÌâ)

´ó¼Ò¶¼ÖªµÀÐÞ¸ÄlinuxϵÄDNS¿ÉÒÔÖ±½ÓÐÞ¸Ä/etc/resolv.conf:
root@xuanfei-desktop:~#vim /etc/resolv.conf
nameserver ip //ÌîÉÏÄãµ±µØÊ¹ÓõÄ×î¿ìDNS·þÎñÆ÷IPµØÖ·
nameserver ip   
 
µ±È»Ò²¿ÉÒÔÖ±½ÓʹÓÃÍøÂç¹ÜÀíÆ÷Ð޸ġ£
µ«ÊÇÈç¹ûÄãËùÔÚ»ú¹¹»òÕß¹¤×÷µÄµØ·½±ØÐëÒªÇóÄãÓÃDHCP»ñµÃ×Ô¼º·Ç¹Ì¶¨¶¯Ì¬IP ......

linuxѧϰ֮ubuntuµÄ°ü¹ÜÀí


Ô­ÎĵØÖ·£ºhttp://www.ibm.com/developerworks/cn/linux/l-lpic1-v3-102-4/index.html?ca=drs-
Ian
Shields
, ×ÊÉî³ÌÐòÔ±, IBM
Ian Shields ²ÎÓë developerWorks
Linux ×¨ÇøµÄÐí¶à Linux ÏîÄ¿¡£ËûÊÇ IBM ±±¿¨ÂÞÀ´ÄÉÖÝ Research Triangle Park µÄÒ»Ãû¸ß¼¶³ÌÐòÔ±¡£ËûÓÚ
1973 Äê×÷ΪһÃûϵͳ¹¤³Ìʦ¼ÓÈë IBM λÓÚ°Ä´ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ