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

»ùÓÚLinuxµÄSocketÍøÂç±à³ÌµÄÐÔÄÜÓÅ»¯

»ùÓÚLinuxµÄSocketÍøÂç±à³ÌµÄÐÔÄÜÓÅ»¯
2009-10-23      ǶÈëʽÔÚÏß      ÊÕ²Ø | ´òÓ¡
1 ÒýÑÔ
    Ëæ×ÅIntenetµÄÈÕÒæ·¢Õ¹ºÍÆÕ¼°£¬ÍøÂçÔÚǶÈëʽϵͳÖÐÓ¦Ó÷dz£¹ã·º£¬Ô½À´Ô½¶àµÄǶÈëʽÉ豸²ÉÓÃLinux²Ù×÷ϵͳ¡£LinuxÊÇÒ»¸öÔ´´úÂ빫¿ªµÄÃâ·Ñ²Ù×÷ϵͳ£¬¾ßÓÐÇ¿ÒÆÖ²ÐÔ£¬ËùÒÔ¶Ô»ùÓÚLinuxµÄSocketÍøÂç±à³ÌµÄÑо¿Ô½À´Ô½ÖØÒª¡£
    Socketʵ¼ÊÊÇÍøÂç´«Êä²ã¹©¸øÓ¦ÓòãµÄ±à³Ì½Ó¿Ú¡£´«Êä²ãÔòÔÚÍøÂç²ãµÄ»ù´¡ÉÏÌṩ½ø³Ìµ½½ø³ÌÎʵÄÂß¼­Í¨µÀ£¬¶øÓ¦ÓòãµÄ½ø³ÌÔòÀûÓô«Êä²ãÏòÁíһ̨Ö÷»úµÄijһ½ø³ÌͨÐÅ¡£Socket¾ÍÊÇÓ¦ÓòãÓë´«Êä²ãÖ®¼äµÄÇÅÁº¡£Èçͼ2Ëùʾ¡£
    ʹÓÃSocket±à³Ìʱ¿ÉÒÔ¿ª·¢¿Í»§»úºÍ·þÎñÆ÷Ó¦ÓóÌÐò£¬ËüÃÇ¿ÉÒÔÔÚ±¾µØÍøÂçÉϽøÐÐͨÐÅ£¬Ò²¿ÉÒÔͨ¹ýInternetÔÚÈ«Çò·¶Î§ÄÚ½øÐÐͨÐÅ¡£±àд²¢ÔËÐÐ SocketµÄ¿Í»§¶ËºÍ·þÎñÆ÷¶Ë³ÌÐò£¬Ë«·½Í¨¹ýÌ×½Ó×Ö½¨Á¢ÁË·þÎñÁ¬½ÓÇëÇ󣬲¢ÇÒͨ¹ýһЩ·½·¨Ìá¸ßSocketµÄÐÔÄÜ¡£
3 Socket±à³Ì
3£®1 SocketÀàÐÍ
    ³£¼ûµÄSocketÓÐ3ÖÖÀàÐÍ£º
    (1)Á÷ʽSocket(SOCK_STREAM)ËüÌṩ¿É¿¿µÄͨÐÅÁ÷£¬Ê¹ÓÃÃæÏòÁ¬½ÓµÄTCPЭÒ飬´Ó¶ø±£Ö¤Êý¾Ý´«ÊäµÄÕýÈ·ÐÔºÍ˳ÐòÐÔ£º
    (2)Êý¾Ý±¨Socket(SOCK_DGRAM)Êý¾Ýͨ¹ýÏ໥¶ÀÁ¢µÄ±¨ÎĽøÐд«Ê䣬ÊÇÎÞÐòµÄ£¬²¢ÇÒ²»±£Ö¤¿É¿¿£¬ÎÞ²î´í£¬Ëü¶¨ÒåÒ»ÖÖÃæÏòÎÞÁ¬½ÓµÄ·þÎñ£¬Ê¹ÓÃÊý¾Ý±¨Ð­ÒéUDP£»
    (3)ԭʼSocket(SOCK_RAM)ËüÔÊÐíÖ±½Ó·ÃÎʵײãЭÒ飬¹¦ÄÜÇ¿´óµ«Ê¹ÓýÏΪ²»±ã£¬Ö÷ÒªÓÃÓÚһЩЭÒéµÄ¿ª·¢¡£±¾±àдµÄSocketÊôÓÚÁ÷ʽSocket¡£
3£®2 Socket±à³ÌÁ÷³Ì
    Socket±à³Ì²ÉÓÿͻ§£¯·þÎñÆ÷ģʽ¡£Òò´Ë±à³Ì·ÖΪ·þÎñÆ÷¶ËºÍ¿Í»§¶ËÁ½²¿·Ö¡£
    ÿһ¸öSocket¶¼ÓÃÒ»¸ö°ëÏà¹ØÃèÊö(ЭÒ飬±¾µØµØÖ·£¬±¾µØ¶Ë¿Ú)À´±íʾ£¬SocketÒ²ÓÐÒ»¸öÀàËÆÓÚÎļþ´ò¿ªµÄº¯Êý£¬¸Ãº¯Êý·µ»ØÒ»¸öÕûÐ͵ÄSocketÃèÊö·û£¬Ëæºó½¨Á¢Á¬½Ó£¬Êý¾Ý´«ÊäµÈ²Ù×÷¶¼Í¨¹ýSocketÀ´ÊµÏÖ¡£
    ±à³ÌÁ÷³ÌÈçÏ£º·þÎñÆ÷¶ËÊ×ÏȽ¨Á¢Socket£¬·µ»Ø¸ÃSocketµÄÃèÊö·û£ºÅäÖÃSocketµÄ¶Ë¿ÚºÍIPµØÖ·£»½¨Á¢¼àÌýð®Êý£¬¼ì²âÊÇ·ñÓпͻ§¶ËÏò·þÎñÆ÷·¢ËÍÇëÇó£¬ÈôÓÐÔò½ÓÊÕ¸ÃÇëÇ󣬽«Æä·Åµ½½ÓÊÕ¶ÓÁÐÖУº´Ó½ÓÊÕ¶ÓÁÐÖнÓÊÜÒ»¸öÇëÇó£»²¢Ïò¿Í»§¶Ë·¢ËÍÈ·ÈÏÁ¬½ÓÐÅÏ¢¡£
    ¿Í»§¶Ë½¨Á¢Ò»¸öSocket£¬·µ»Ø¸ÃSocketµÄÃèÊö·û£»ÅäÖÃSocket¶Ë¿ÚºÍIPµØÖ·£»Ïò·þÎñÆ÷·¢ËÍÁ¬½ÓÇëÇ󣬲¢½ÓÊÕ·þ


Ïà¹ØÎĵµ£º

ʵսLinux Bluetooth±à³Ì£¨Èý£© HCI²ã±à³Ì

1. HCI²ãЭÒé¸ÅÊö£º
HCIÌṩһÌ×ͳһµÄ·½·¨À´·ÃÎÊBluetoothµ×²ã¡£ÈçͼËùʾ£º
´ÓͼÉÏ¿ÉÒÔ¿´³ö£¬Host Controller Interface(HCI)  ¾ÍÊÇÓÃÀ´¹µÍ¨HostºÍModule¡£Hostͨ³£¾ÍÊÇPC£¬ ModuleÔòÊÇÒÔ¸÷ÖÖÎïÀíÁ¬½ÓÐÎʽ£¨USB,serial,pc-cardµÈ£©Á¬½Óµ½PCÉϵÄbluetooth Dongle¡£
ÔÚHostÕâÒ»¶Ë£ºapplication,SDP,L2capµÈЭÒé ......

Anatomy of the Linux slab allocator

Anatomy of the Linux slab allocator
Learn how Linux manages memory
M. Tim Jones, Consultant Engineer, Emulex Corp.
M. Tim Jones is an embedded software architect and the author of GNU/Linux Application Programming, AI Application Programming, and BSD Sockets Programming from a Multilanguage Persp ......

linuxѧϰ±Ê¼Ç Ŀ¼ ÃüÁî

linuxĿ¼¼Ü¹¹
/       ¸ùĿ¼
/bin         ³£ÓõÄÃüÁî   binary   file   µÄÄ¿錄
/boot       ´æ·ÅϵͳÆô¶¯Ê±±ØÐë¶ÁÈ¡µÄµµ°¸£¬°üÀ¨ºËÐÄ   (kernel) &nb ......

¼àÊÓLinuxϵͳ¸ºÔØ×´¿öµÄ¼¸¸ö¹¤¾ß

1. vmstat
Õâ¸ö¹¤¾ß¿ÉÒÔÈÃÄãÁ˽⵽ϵͳ×ÊÔ´µ±Ç°µÄ¸ºÔØÂÊ£¬°üÀ¨CPU£¬Äڴ棬swap¿Õ¼ä£¬ioµÈµÈ¡£
»ù±¾Ó÷¨
$ vmstat
procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----
r  b   swpd   free   buff  cache   si   so&n ......

linuxÖеÄÓ²Á´½ÓºÍ·ûºÅÁ´½Ó

Ë÷Òý½Úµã¡¢Ó²Á¬½ÓºÍÁ¬½Ó¼ÆÊý
Ë÷Òý½Úµãinode£º
    LinuxΪÿ¸öÎļþ·ÖÅäÒ»¸ö³ÆÎªË÷Òý½ÚµãµÄºÅÂëinode£¬¿ÉÒÔ½«inode¼òµ¥Àí½â³ÉÒ»¸öÖ¸Õ룬ËüÓÀÔ¶Ö¸Ïò±¾ÎļþµÄ¾ßÌå´æ´¢Î»Öá£ÏµÍ³ÊÇͨ¹ýË÷Òý½Úµã(¶ø²»ÊÇÎļþÃû)À´¶¨Î»Ã¿Ò»¸öÎļþ¡£
    ÀýÈ磺¼ÙÉèÎÒÃÇÔÚÓ²Å̵±Ç°Ä¿Â¼Ï½¨Á¢ÁËÒ»¸öÃûΪmytextÎı ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ