[תÌù]LinuxÍøÂçÇý¶¯³ÌÐò
LinuxÇý¶¯³ÌÐò
--------------------------------------------------------------------------------
¹¤×÷ÐèҪдÁËÎÒÃǹ«Ë¾Ò»¿éÍø¿¨µÄLinuxÇý¶¯³ÌÐò¡£¾ÀúÒ»¸ö´ÓÎÞµ½ÓеĹý³Ì£¬Éî¸Ð¼¼Êõ½»Á÷µÄÖØÒª¡£Linux×÷ΪÌôս΢Èí¢¶ÏµÄÇ¿ÓÐÁ¦ÎäÆ÷£¬ÈÕÒæÊܵ½´ó¼ÒµÄϲ°®¡£ÕæÏ£ÍûËýÄÜÔÚÖйúѸËٳɳ¤¡£°Ñ³ÌÐòÎĵµÌù³öÀ´£¬Ï£ÍûºÍ´ó¼Ò̽ÌÖLinux¼¼Êõ ºÍÓ¦Ó㬴ٽøLinuxÔÚÖйúµÄÆÕ¼°¡£
±¾ÎÄ¿ÉËæÒâ×ªÔØ£¬µ«Çë²»ÒªÔÚÓ¯ÀûÐÔ³ö°æÎïÉÏ¿¯µÇ¡£
Linux²Ù×÷ÏµÍ³ÍøÂçÇý¶¯³ÌÐò±àд
Ò».LinuxϵͳÉ豸Çý¶¯³ÌÐò¸ÅÊö
1.1 LinuxÉ豸Çý¶¯³ÌÐò·ÖÀà
1.2 ±àдÇý¶¯³ÌÐòµÄһЩ»ù±¾¸ÅÄî
¶þ.LinuxÏµÍ³ÍøÂçÉ豸Çý¶¯³ÌÐò
2.1 ÍøÂçÇý¶¯³ÌÐòµÄ½á¹¹
2.2 ÍøÂçÇý¶¯³ÌÐòµÄ»ù±¾·½·¨
2.3 ÍøÂçÇý¶¯³ÌÐòÖÐÓõ½µÄÊý¾Ý½á¹¹
2.4 ³£ÓõÄϵͳ֧³Ö
Èý.±àдLinuxÍøÂçÇý¶¯³ÌÐòÖпÉÄÜÓöµ½µÄÎÊÌâ
3.1 ÖжϹ²Ïí
3.2 Ó²¼þ·¢ËÍæʱµÄ´¦Àí
3.3 Á÷Á¿¿ØÖÆ(flow control)
3.4 µ÷ÊÔ
ËÄ.½øÒ»²½µÄÔĶÁ
Îå.ÔÓÏî
Ò».LinuxϵͳÉ豸Çý¶¯³ÌÐò¸ÅÊö
1.1 LinuxÉ豸Çý¶¯³ÌÐò·ÖÀà
LinuxÉ豸Çý¶¯³ÌÐòÔÚLinuxµÄÄÚºËÔ´´úÂëÖÐÕ¼ÓкܴóµÄ±ÈÀý£¬Ô´´úÂëµÄ³¤¶ÈÈÕ ÒæÔö¼Ó£¬Ö÷ÒªÊÇÇý¶¯³ÌÐòµÄÔö¼Ó¡£ÔÚLinuxÄں˵IJ»¶ÏÉý¼¶¹ý³ÌÖУ¬Çý¶¯³ÌÐòµÄ½á¹¹»¹ÊÇÏà¶ÔÎȶ¨¡£ÔÚ2.0.xxµ½2.2.xxµÄ±ä¶¯ÀÇý¶¯³ÌÐòµÄ±àд×öÁËһЩ¸Ä±ä£¬µ«ÊÇ´Ó2.0.xxµÄÇý¶¯µ½2.2.xxµÄÒÆÖ²Ö»Ðè×öÉÙÁ¿µÄ¹¤×÷¡£
LinuxϵͳµÄÉ豸·ÖΪ×Ö·ûÉ豸(char device)£¬¿éÉ豸(block device)ºÍÍøÂç É豸(network device)ÈýÖÖ¡£×Ö·ûÉ豸ÊÇÖ¸´æÈ¡Ê±Ã»Óлº´æµÄÉ豸¡£¿éÉ豸µÄ¶Áд ¶¼Óлº´æÀ´Ö§³Ö£¬²¢ÇÒ¿éÉ豸±ØÐëÄܹ»Ëæ»ú´æÈ¡(random access)£¬×Ö·ûÉ豸ÔòûÓÐ Õâ¸öÒªÇó¡£µäÐ͵Ä×Ö·ûÉ豸°üÀ¨Êó±ê£¬¼üÅÌ£¬´®Ðпڵȡ£¿éÉ豸Ö÷Òª°üÀ¨Ó²ÅÌÈíÅÌ
É豸£¬CD-ROMµÈ¡£Ò»¸öÎļþϵͳҪ°²×°½øÈë²Ù×÷ϵͳ±ØÐëÔÚ¿éÉ豸ÉÏ¡£
ÍøÂçÉ豸ÔÚLinuxÀï×öרÃŵĴ¦Àí¡£LinuxµÄÍøÂçϵͳÖ÷ÒªÊÇ»ùÓÚBSD unixµÄsocket »úÖÆ¡£ÔÚϵͳºÍÇý¶¯³ÌÐòÖ®¼ä¶¨ÒåÓÐרÃŵÄÊý¾Ý½á¹¹(sk_buff)½øÐÐÊý¾ÝµÄ´«µÝ¡£Ïµ ͳÀïÖ§³Ö¶Ô·¢ËÍÊý¾ÝºÍ½ÓÊÕÊý¾ÝµÄ»º´æ£¬ÌṩÁ÷Á¿¿ØÖÆ»úÖÆ£¬Ìṩ¶Ô¶àÐÒéµÄÖ§³Ö¡£
1.2 ±àдÇý¶¯³ÌÐòµÄһЩ»ù±¾¸ÅÄî
ÎÞÂÛÊÇʲô²Ù×÷ϵͳµÄÇý¶¯³ÌÐò£¬¶¼ÓÐһЩͨÓõĸÅÄî¡£²Ù×÷ϵͳÌṩ¸øÇý¶¯³ÌÐòµÄÖ§³ÖÒ²´óÖÂÏàͬ¡£ÏÂÃæ¼òµ¥½éÉÜÒ»ÏÂÍøÂçÉ豸Çý¶¯³ÌÐòµÄһЩ»ù±¾ÒªÇó¡£
1.2.1 ·¢ËͺͽÓÊÕ
ÕâÊÇÒ»¸öÍøÂçÉ豸×î»ù±¾µÄ¹¦ÄÜ¡£Ò»¿éÍø¿¨Ëù×öµÄÎ޷ǾÍÊÇÊÕ·¢¹¤×÷¡£ËùÒÔÇý¶¯³ÌÐòÀïÒª¸æËßϵͳÄãµÄ·¢Ëͺ¯ÊýÔÚÄÄÀϵͳÔÚÓÐÊý¾ÝÒª·¢ËÍ
Ïà¹ØÎĵµ£º
¹²ÏíÄÚ´æ¿ÉÒÔ˵ÊÇ×îÓÐÓõĽø³Ì¼äͨÐÅ·½Ê½£¬Ò²ÊÇ×î¿ìµÄIPCÐÎʽ¡£Á½¸ö²»Í¬½ø³ÌA¡¢B¹²ÏíÄÚ´æµÄÒâ˼ÊÇ£¬Í¬Ò»¿éÎïÀíÄÚ´æ±»Ó³Éäµ½½ø³ÌA¡¢B¸÷×ԵĽø³ÌµØÖ·¿Õ¼ä¡£½ø³ÌA¿ÉÒÔ¼´Ê±¿´µ½½ø³ÌB¶Ô¹²ÏíÄÚ´æÖÐÊý¾ÝµÄ¸üУ¬·´Ö®ÒàÈ»¡£ÓÉÓÚ¶à¸ö½ø³Ì¹²Ïíͬһ¿éÄÚ´æÇøÓò£¬±ØÈ»ÐèҪijÖÖͬ²½»úÖÆ£¬»¥³âËøºÍÐźÅÁ¿¶¼¿ÉÒÔ¡£
²ÉÓù²ÏíÄÚ´æÍ¨ÐŵÄÒ»¸ ......
ÎÞÂÛÊÇÔÚLinux»¹ÊÇÔÚUnix»·¾³ÖУ¬make¶¼ÊÇÒ»¸ö·Ç³£ÖØÒªµÄ±àÒëÃüÁî¡£²»¹ÜÊÇ×Ô¼º½øÐÐÏîÄ¿¿ª·¢»¹Êǰ²×°Ó¦ÓÃÈí¼þ£¬ÎÒÃǶ¼¾³£ÒªÓõ½make»òmake install¡£ÀûÓÃmake¹¤¾ß£¬ÎÒÃÇ¿ÉÒÔ½«´óÐ͵Ŀª·¢ÏîÄ¿·Ö½â³ÉΪ¶à¸ö¸üÒ×ÓÚ¹ÜÀíµÄÄ£¿é£¬¶ÔÓÚÒ»¸ö°üÀ¨¼¸°Ù¸öÔ´ÎļþµÄÓ¦ÓóÌÐò£¬Ê¹ÓÃmakeºÍ makefile¹¤¾ß¾Í¿ÉÒÔ¼ò½àÃ÷¿ìµØÀí˳¸÷¸öÔ´ÎļþÖ® ......
ÓÉÓÚ¹«Ë¾ÀïµÄ±¸·ÝÈí¼þÊÇÿÌìÍíÉÏÖ´ÐÐÒ»´Î£¬Èç¹ûÔ±¹¤µ±Ì첻СÐÄɾ³ýÁËÎļþ£¬ÄÇÖ»Äܻظ´µ½×òÌìµÄ״̬£¬Èç¹ûÊÇÔ±¹¤½ñÌ컨ÁËÒ»Ìì²ÅдÍêµÄCODE£¬ÄǾÍû·¨»Ö¸´ ÁË£¬ÕâÑù¾ÍÔ±¹¤Ò»ÌìµÄ¹¤×÷¾Í°×¸ÉÁË£¬µ±È»Äã¿ÉÄÜ»á˵£¬Õâ¸öÔ±¹¤»î¸Ã£¬ËÈÃËû²»Ð¡ÐÄÁË£¬µ«Êǵ±ÊÂÇé·¢ÉúÁËÖ®ºó£¬È˼ҾͻáÀ´ÕÒÄã½â¾öÁË£¬ËäÈ» ÄãÆ½³£¶ãÔÚ½ÇÂäÀïÌý¸è¡¢¿´µç ......
1. Sed¼ò½é
sed ÊÇÒ»ÖÖÔÚÏß±à¼Æ÷£¬ËüÒ»´Î´¦ÀíÒ»ÐÐÄÚÈÝ¡£´¦Àíʱ£¬°Ñµ±Ç°´¦ÀíµÄÐд洢ÔÚÁÙʱ»º³åÇøÖУ¬³ÆÎª“ģʽ¿Õ¼ä”£¨pattern
space£©£¬½Ó×ÅÓÃsedÃüÁî´¦Àí»º³åÇøÖеÄÄÚÈÝ£¬´¦ÀíÍê³Éºó£¬°Ñ»º³åÇøµÄÄÚÈÝËÍÍùÆÁÄ»¡£½Ó×Å´¦ÀíÏÂÒ»ÐУ¬ÕâÑù²»¶ÏÖØ¸´£¬Ö±µ½Îļþĩβ¡£ÎļþÄÚÈݲ¢Ã»ÓÐ
¸Ä±ä£¬³ý·ÇÄãʹÓÃÖØ¶¨Ïò´æ´¢Ê ......