LINUXÍøÂç±à³ÌµÄ¶ÁÊé±Ê¼Ç
LINUXÍøÂç±à³ÌµÄ¶ÁÊé±Ê¼Ç
µÚÒ»ÕÂÎļþϵͳºÍ½ø³Ìϵͳ
1£®1ÎļþϵͳµÄ×ÜÌå½á¹¹
´ÓÎļþϵͳµÄʵÏֽǶÈÀ´¿´£¬°´²ã´Î¿ÉÒÔ·Ö³ÉÓ¦ÓóÌÐò¡¢ÏµÍ³µ÷Óá¢Îļþ×Óϵͳ¡¢¸ßËÙ»º³å¡¢É豸Çý¶¯ºÍ¾ßÌåµÄ´æ´¢É豸µÈ¼¸¸ö²ã´Î£¬ÈçÏÂͼ£º
Ó¦ÓóÌÐò
ϵͳµ÷ÓýӿÚ
Îļþ×Óϵͳ
Ó²¼þ´æ´¢É豸
É豸Çý¶¯³ÌÐò
¸ßËÙ»º´æ
×Ö·ûÉ豸
¿é
É豸
ÔÚUNIXϵͳÖУ¬³ÌÐò²»¹ÜºËÐİ´ÕÕʲôÑùµÄ¸ñʽÀ´×éÖ¯Îļþ£¬Ö»ÊǰÑÎļþ¿´×÷Ò»¸öÎÞ¸ñʽµÄ×Ö½ÚÁ÷À´¿´´ý¡£¶ÔÎļþµÄ´æÈ¡Óï·¨ÊÇÓÉϵͳ¶¨Òå
µÄ£¬Êý¾ÝµÄÓïÒåÊÇÓɳÌÐò¼ÓÉÏÈ¥µÄ¡£
Ó¦Óýø³Ìͨ¹ýϵͳµ÷ÓÃÀ´·ÃÎÊÎļþϵͳ£¬·ÖÅ䏸ӦÓóÌÐòÒ»¸ö±ê×¼µÄͨÓýӿÚ,
±ãÓÚÆÁ±Î²»Í¬ÎļþϵͳµÄ²îÒì¡£Îļþϵͳ²»ÄÜÖ±½Ó·ÃÎÊÓ²¼þÉ豸£¬Í¨¹ýµ÷ÓÃÉ豸Çý¶¯½ø³ÌÀ´²Ù×÷¾ßÌåÉ豸¡£¶Ô¸ßËÙÉ豸µÄ·ÃÎÊ£¬Í¨³£Í¨¹ý¸ßËÙ»º³å»úÖÆÀ´Ìá¸ßÉ豸ºÍ
ÄÚ´æµÄÊý¾Ý½»»»¡£É豸Çý¶¯½ø³ÌÓÃÀ´ÆÁ±Î²»Í¬ÎïÀíÉ豸µÄ²Ù×÷²îÒì¡£
ÎļþϵͳµÄ×ÜÌå½á¹¹ÊÇ£ºÒýµ¼¿é¡¢³¬¼¶¿é¡¢Ë÷Òý½Úµã±í£¬Êý¾ÝÇø¡£
·
Òýµ¼¿éÔÚÎļþϵͳµÄ×îÇ°Ãæ£¬ËüºÍ²Ù×÷ϵͳÒýµ¼Óйء£ÓÐÇÒÖ»ÓÐÒ»¸öÒýµ¼¿éÓÐЧ¡£
·³¬¼¶¿éÒ²½Ð¹ÜÀí¿é£¬´æ·ÅÎļþϵͳµÄ¹ÜÀíÐÅÏ¢£¬ÈçÎļþϵͳ´óС¡¢¿ÕÏÐ
¿é´óС¡¢¿ÕÏпéÁ´±í½ÚµãÍ·µÈÐÅÏ¢¡£
·Ë÷Òý½Úµã±í£¬Ã¿¸öÎļþ¶¼¶ÔÓ¦×ÅÒ»¸öË÷Òý½Úµã£¬ÀïÃæ·´ÕýÓû§µÄ´æÈ¡È¨ÏÞ¡¢ÐÅÏ¢µÈ¡£Í¨¹ý·¾¶·ÃÎÊÎļþ£¬Äں˰ÑÎļþ
·¾¶¾¹ýת»»Ó³Éäµ½Ë÷Òý½Úµã±íÖжÔÓ¦½ÚµãÈ¥¡£
·Êý¾ÝÇø¡£Îļþϵͳʵ¼Ê´æ·ÅÊý¾ÝµÄ´ÅÅ̿ռ䡣
·¿ÕÏÐÊý¾Ý¿é±í¡£³¬¼¶¿éÖпռäºÜС£¬ËùÒÔ°Ñ¿ÕÏÐ
Êý¾Ý¿éµÄÐÅϢдÔÚÊý¾ÝÇøÖС£
VFS(Virtual Filesystem Switch)
LINUXͨ¹ýÐéÄâÎļþϵͳת»»À´
ʵÏÖ¶àÎļþϵͳµÄÖ§³Ö¡£LINUX°Ñ¶ÔÎļþ²Ù×÷µÄϵͳµ÷ÓÃתΪ¶Ô²»Í¨¹ýÎļþϵͳ²Ù×÷µÄ×Ó³ÌÐòµ÷Óã¬ÕâЩ×Ó³ÌÐò¶¼Õë¶Ô¾ßÌåÎļþϵͳ¶ø±àд¡£ÐéÄâÎļþϵͳ²»ÊÇ
ÕæÕýµÄÎļþϵͳ£¬¶øÊÇÒ»ÖÖÓ³Éä»úÖÆÀ´ÆÁ±ÎϲãµÄ²îÒìΪÉϲãÌṩ·½±ã¡£
1£®2 Îļþ½á¹¹ºÍĿ¼½á¹¹
LINUXÖеÄÿ¸ö
Îļþ¶¼¶ÔÓ¦ÐéÄâÎļþϵͳµÄÒ»¸öË÷Òý½Úµã£¬ÀïÃæ´æ·ÅÓÐÖ±½Ó»ò¶à¼¶Ö¸ÕëÄܹ»¼Ç¼ÎļþµÄÊý¾Ý£¬ÕâÑùÉè¼ÆÊÇΪÁË´æÈ¡´óÎļþ¡£
Ŀ¼ҲÄܳéÏó³ÉÎÄ
¼þ£¬Ò²Í¨¹ýË÷Òý½Úµã±íÀ´ÃèÊö£¬²¢ÇÒ°ÑĿ¼±íÖеÄĿ¼Ïî´æ·ÅÔÚÊý¾ÝÇøÖС£Ä¿Â¼±íµÄ»ù±¾¹¹³Éµ¥Î»ÊÇĿ¼ÏÓГÎļþÃû£Ë÷Òý½ÚµãºÅ”¹¹³É¡£Îļþ½ÚµãË÷Òý±íÖв¢
²»°üº¬Îļ
Ïà¹ØÎĵµ£º
¡¾Îĵµ´´½¨ÈÕÆÚ£º2010-05-30¡¿
001 // P122: Èý¡¢ÉÏ»úÌâ 3
002
003 // test03-03.c
004
005 // Header files included.
006 #include <stdio.h>
00 ......
LinuxÏÂC++¿ª·¢¹¤¾ß½éÉÜ
¡¡¡¡¸ÅÊö
¡¡¡¡¾ÍC£«£«¿ª·¢¹¤¾ß¶øÑÔ£¬ÓëWindowsÏÂ΢Èí£¨VC£¬ VS2005µÈ£©Ò»Í³ÌìÏÂÏà±È£¬Linux/UnixÏÂC£«£«¿ª·¢£¬¿ÉνÎ廨°ËÃÅ£¬¸÷ʽ¸÷Ñù¡£Emacs, vi, eclipse, anjuta£¬kdevelopµÈ²ã³ö²»Çî¡£
¡¡¡¡WindowsÏ£¬¿ª·¢¹¤¾ß¶àÒÔ¼¯³É¿ª·¢»·¾³IDEµÄÐÎʽչÏÖ¸ø×îÖÕÓû§¡£ÀýÈ磬VS2005¼¯³ ......
ʲôÊÇSocket
¡¡¡¡ Socket½Ó¿ÚÊÇTCP/IPÍøÂçµÄAPI£¬Socket½Ó¿Ú¶¨ÒåÁËÐí¶àº¯Êý»òÀý³Ì£¬³ÌÐòÔ±¿ÉÒÔÓÃËüÃÇÀ´¿ª·¢TCP/IPÍøÂçÉϵÄÓ¦ÓóÌÐò¡£ÒªÑ§InternetÉϵÄTCP/IPÍøÂç±à³Ì£¬±ØÐëÀí½âSocket½Ó¿Ú¡£
¡¡ ¡¡ Socket½Ó¿ÚÉè¼ÆÕß×îÏÈÊǽ«½Ó¿Ú·ÅÔÚUnix²Ù×÷ϵͳÀïÃæµÄ¡£Èç¹ûÁ˽âUnixϵͳµÄÊäÈëºÍÊä³öµÄ»°£¬¾ÍºÜÈÝÒ×Á˽âSocketÁË¡£ÍøÂçµÄ ......
select()µÄ»úÖÆÖÐÌṩһfd_setµÄÊý¾Ý½á¹¹£¬Êµ¼ÊÉÏÊÇÒ»longÀàÐ͵ÄÊý×飬 ÿһ¸öÊý×éÔªËØ¶¼ÄÜÓëÒ»´ò¿ªµÄÎļþ¾ä±ú£¨²»¹ÜÊÇSocket¾ä±ú,»¹ÊÇÆäËû Îļþ»òÃüÃû¹ÜµÀ»òÉ豸¾ä±ú£©½¨Á¢ÁªÏµ£¬½¨Á¢ÁªÏµµÄ¹¤×÷ÓɳÌÐòÔ±Íê³É£¬ µ±µ÷ÓÃselect()ʱ£¬ÓÉÄں˸ù¾ÝIO״̬ÐÞ¸Äfd_setµÄÄÚÈÝ£¬ÓÉ´ËÀ´Í¨ÖªÖ´ ÐÐÁËselect()µÄ½ø³ÌÄ ......
Ç°ÃæËµ¹ý£¬Ö»ÒªÖªµÀÎļþµÄË÷Òý½ÚµãºÅ£¬¾Í¿ÉÒԵõ½ÄǸöÎļþ¡£µ«ÊÇÎÒÃÇÔÚ²Ù×÷Îļþʱ£¬´ÓûÌý˵˻áÄÃ×ÅË÷Òý½ÚµãºÅÀ´²Ù×÷Îļþ£¬ÎÒÃÇÖ»ÖªµÀÎļþÃû¶øÒÑ¡£ ËüÃÇÊÇÈçºÎ"ºÍг"ÆðÀ´µÄÄØ£¿linux°ÑĿ¼Ҳ¿´³ÉÒ»ÖÖÎļþ£¬ÀïÃæ¼Ç¼×ÅÎļþÃûÓëË÷Òý½ÚµãºÅµÄ¶ÔÓ¦¹ØÏµ£¨Ä¿Â¼´æÔÚµÄÔÒò£©¡£±ÈÈçÔÚext3ÎļþϵͳÖУ¬Èç¹ûÎļþÊÇÒ»¸öÄ¿  ......