»ùÓÚ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µØÖ·£»Ïò·þÎñÆ÷·¢ËÍÁ¬½ÓÇëÇ󣬲¢½ÓÊÕ·þ
Ïà¹ØÎĵµ£º
Service Discovery Protocol(SDP)ÌṩһÖÖÄÜÁ¦£¬ÈÃÓ¦ÓóÌÐòÓз½·¨·¢ÏÖÄÄÖÖ·þÎñ¿ÉÓÃÒÔ¼°ÕâÖÖ·þÎñµÄÌØÐÔ¡£
·þÎñ·¢ÏÖÐÒé(SDP»òBluetooth SDP)ÔÚÀ¶ÑÀÐÒéÕ»ÖжÔÀ¶ÑÀ»·¾³ÖеÄÓ¦ÓóÌÐòÓÐÌØÊâµÄº¬Ò⣬·¢ÏÖÄĸö·þÎñÊÇ¿ÉÓõĺÍÈ·¶¨ÕâЩ¿ÉÓ÷þÎñµÄÌØÕ÷¡£SDP¶¨ÒåÁËbluetooth client·¢ÏÖ¿ÉÓÃbluetooth server·þÎñºÍËüÃǵÄÌØÕ÷µÄ·½·¨¡£ ......
Ò»£ºÇ°ÑÔ
×î½üÔÚÑо¿androidµÄsensor driver£¬Ö÷ÒªÊÇE-compass£¬ÆäÖÐÓõ½ÁËLinux input×Óϵͳ.ÔÚÍøÉÏÒ²¿´Á˺ܶàÕâ·½ÃæµÄ×ÊÁÏ£¬¸Ð¾õ»¹ÊÇÕâƪ·ÖÎöµÄ±È½ÏϸÖÂ͸³¹£¬Òò´ËתÔØÒ»ÏÂÒÔ±ã×Ô¼ºÑ§Ï°£¬Í¬Ê±ºÍ´ó¼Ò·ÖÏí£¡
£¨Õâƪ²©¿ÍÖ÷ÒªÊÇÒÔ¼üÅÌÇý¶¯ÎªÀýµÄ£¬²»¹ý½²½âµÄÊÇLinux Input Subsystem£¬¿ÉÒÔ×ÐϸµÄÑо¿Ò»Ï£¡£©
¼üÅÌÇý¶¯½«¼ì ......
Linux ÖÐÈçºÎ²éѯºÍжÔØÒÑ°²×°µÄÈí¼þ
¡¡¡¡LinuxÈí¼þµÄ°²×°ºÍжÔØÒ»Ö±ÊÇÀ§ÈÅÐí¶àÐÂÓû§µÄÄÑÌâ¡£ÔÚWindowsÖУ¬ÎÒÃÇ¿ÉÒÔʹÓÃÈí¼þ×Ô´øµÄ°²×°Ð¶ÔسÌÐò»òÔÚ¿ØÖÆÃæ°åÖеēÌí¼Ó/ɾ³ý³ÌÐò” À´ÊµÏÖ¡£ÓëÆäÏàÀàËÆ£¬ÔÚLinuxÏÂÓÐÒ»¸ö¹¦ÄÜÇ¿´óµÄÈí¼þ°²×°Ð¶Ôع¤¾ß£¬ÃûΪRPM¡£Ëü¿ÉÒÔÓÃÀ´½¨Á¢¡¢°²×°¡¢²éѯ¡¢¸üС¢Ð¶ÔØÈí¼þ¡£¸Ã¹¤ ......
ת×Ô http://hi.baidu.com/grantzhou/blog/item/56a91cf3b685cdc90a46e09d.html
ËÄ¡¢sched_setscheduler()ϵͳµ÷Óá£
Õâ¸öϵͳµ÷Óõĵ÷Óòã´ÎºÍ´úÂ붼±Ènice¸´ÔÓЩ£¬ËùÉæ¼°µÄÒ²Óв»ÉÙÎÒÃÇÕâÀï²»¸ÐÐËȤµÄ¶«Î÷£¬Òò´Ë¾Í²»ÔÙÒÔչʾ´úÂëµÄ·½·¨½éÉÜËüÃÇÁË¡£ÕâÀï½öÔÚ¹¦Äܲã´ÎÉÏ£¬´ÓÓënice()¶Ô±ÈµÄ½Ç¶ÈÉ϶ÔËü×öÒ»¸ ......
¹ØÓÚwindowsÓëlinuxÖ®¼äÎļþ»¥´«
»·¾³£ºÓÐÁ½Ì¨Ö÷»ú
A£º192.168.2.109 OS£ºwindows xp
B£º192.168.2.113 OS£ºlinux £¨redhat5.3£©
Ä¿µÄ£ºÒªÊµÏÖÁ½Ì¨Ö÷»úÖ®¼äÎļþµÄ»¥´«¡£
±¾ÈËÔÚÍøÉÏ¿´¹ý¼¸ÖÖ·½·¨£¬ÓеÄÐèÒªµÚÈý·½Èí¼þ£¨±ÈÈ磺ÔÚWindows XPÏÂÓÃServ-uÈí¼þ¼ÜÉèÁËFTP·þÎñ ......