LINUX TCÖÐÎİæ
9.1. ½âÊͶÓÁкͶÓÁй涨
ÀûÓöÓÁÐ,ÎÒÃǾö¶¨ÁËÊý¾Ý±»·¢Ë͵ķ½Ê½.±ØÐëÈÏʶµ½,ÎÒÃÇÖ»ÄܶԷ¢ËÍÊý¾Ý½ø
ÐÐÕûÐÎ.
¸ù¾ÝInternetµÄ¹¤×÷·½Ê½,ÎÒÃÇÎÞ·¨Ö±½Ó¿ØÖƱðÈËÏòÎÒÃÇ·¢ËÍʲôÊý¾Ý.ÓеãÏó
ÎÒÃǼÒÀïµÄÐű¨Ïä,Äã²»¿ÉÄÜ¿ØÖÆÈ«ÊÀ½ç,ÁªÏµÃ¿Ò»¸öÈË,Ð޸ıðÈ˶ÔÄã·¢ËÍÓÊ
¼þµÄÊýÁ¿.
È»¶ø,InternetÖ÷ÒªÒÀ¿¿TCP/IP,ËüµÄÒ»Ð©ÌØÐÔºÜÓÐÓÃ.ÒòΪTCP/IPû°ì·¨ÖªµÀ
Á½¸öÖ÷»úÖ®¼äµÄÍøÂçÈÝÁ¿,ËùÒÔËü»áÊÔͼԽÀ´Ô½¿ìµØ·¢ËÍÊý¾Ý(ËùνµÄ"ÂýÆð¼¼
Êõ") ,µ±ÒòÎªÍøÂçÈÝÁ¿²»¹»¶ø¿ªÊ¼¶ªÊ§Êý¾Ýʱ,ÔÙ·ÅÂýËÙ¶È.ʵ¼ÊÇé¿öÒª±ÈÕâ
ÖÖ·½·¨¸ü´ÏÃ÷,ÎÒÃÇÒÔºóÔÙÌÖÂÛ.
Õâ¾ÍÏóµ±ÄãÉÐδ¶ÁÍêÒ»°ëÓʼþʱ,Ï£Íû±ðÈËÍ£Ö¹¸øÄã¼ÄÐÅ.ÓëÏÖʵÊÀ½ç²»Í¬,ÔÚ
InternetÉÏ¿ÉÒÔ×öµ½ÕâÒ»µã.(Òë×¢:Õâ¸öÀý×Ó²¢²»Ç¡µ±,TCP/IPµÄÕâÖÖ»úÖÆ²¢²»
ÊÇÔÚÍøÂç²ãʵÏÖµÄ,¶øÊÇÒª¿¿´«Êä²ãµÄTCPÐÒé)
Èç¹ûÄãÓÐÒ»¸ö·ÓÉÆ÷,²¢ÇÒÏ£ÍûÄܹ»·ÀֹijЩÖ÷»úÏÂÔØËÙ¶ÈÌ«¿ì,ÄãÐèÒªÔÚÄã·
ÓÉÆ÷µÄÄÚÍø¿¨——Ò²¾ÍÊÇÏòÄãµÄÍøÄÚÖ÷»ú·¢ËÍÊý¾Ý°üµÄÍø¿¨——ÉϽøÐÐÁ÷Á¿Õû
ÐÎ.
Ä㻹Ҫ±£Ö¤ÄãÕýÔÚ¿ØÖƵÄÊÇÆ¿¾±»·½Ú.Èç¹ûÄãÓÐÒ»¸ö100MÒÔÌ«Íø¿¨,¶øÄãµÄ·
ÓÉÆ÷µÄÁ´Â·ËÙ¶ÈÊÇ256k,Äã±ØÐë±£Ö¤Äã·¢Ë͵ÄÊý¾ÝÁ¿Ã»Óг¬¹ý·ÓÉÆ÷µÄ´¦ÀíÄÜ
Á¦.·ñÔò,¾ÍÊÇ·ÓÉÆ÷ÔÚ¿ØÖÆÁ´Â·ºÍ¶Ô´ø¿í½øÐÐÕûÐÎ,¶ø²»ÊÇÄã.¿ÉÒÔ˵,ÎÒÃÇ
ÐèÒªÓµÓеĶÓÁбØÐëÊÇһϵÁÐÁ´Â·ÖÐ×îÂýµÄ»·½Ú.ÐÒÔ˵ÄÊÇÕâºÜÈÝÒ×.
36
9.2. ¼òµ¥µÄÎÞÀà¶ÓÁй涨
ÈçǰËùÊö,ÀûÓöÓÁÐ,ÎÒÃǾö¶¨ÁËÊý¾Ý±»·¢Ë͵ķ½Ê½.ÎÞÀà¶ÓÁй涨¾ÍÊÇÄÇÑù,
Äܹ»½ÓÊÜÊý¾ÝºÍÖØÐ±àÅÅ,ÑÓ³Ù»ò¶ªÆúÊý¾Ý°ü.
Õâ¿ÉÒÔÓÃ×÷¶ÔÓÚÕû¸öÍø¿¨µÄÁ÷Á¿½øÐÐÕûÐÎ,¶ø²»Ï¸·Ö¸÷ÖÖÇé¿ö.ÔÚÎÒÃǽøÒ»²½Ñ§
ϰ·ÖÀàµÄ¶ÓÁй涨֮ǰ,Àí½âÕⲿ·ÖÊDZز»¿ÉÉÙµÄ!
×î¹ã·ºÓ¦ÓõĹ涨ÊÇpfifo_fast¶ÓÁй涨,ÒòΪËüÊÇȱʡÅäÖÃ.ÕâÒ²½âÊÍÁËΪʲ
ôÆäËüÄÇЩ¸´ÔӵŦÄÜΪºÎÈç´Ë½¡×³,ÒòΪÄÇЩ¶¼ÓëȱʡÅäÖÃÏàËÆ,Ö»²»¹ýÊÇÆä
ËûÀàÐ͵ĶÓÁжøÒÑ.
ÿÖÖ¶ÓÁж¼ÓÐËüÃǸ÷×ÔµÄÓÅÊÆºÍÈõµã.
9.2.1. pfifo_fast
Õâ¸ö¶ÓÁеÄÌØµã¾ÍÏóËüµÄÃû×Ö——ÏȽøÏȳö(FIFO),Ò²¾ÍÊÇ˵ûÓÐÈκÎÊý¾Ý°ü
±»ÌØÊâ¶Ô´ý.ÖÁÉÙ²»ÊǷdz£ÌØÊâ.Õâ¸ö¶ÓÁÐÓÐ3¸öËùνµÄ"ƵµÀ".FIFO¹æÔòÓ¦
ÓÃÓÚÿһ¸öƵµÀ.²¢ÇÒ:Èç¹ûÔÚ0ƵµÀÓÐÊý¾Ý°üµÈ´ý·¢ËÍ,1ƵµÀµÄ°ü¾Í²»»á±»
´¦Àí,1ƵµÀºÍ2ƵµÀÖ®¼äµÄ¹ØÏµÒ²ÊÇÈç´Ë.
ÄÚºË×ñÕÕÊý¾Ý°üµÄTOS±ê¼Ç,°Ñ´øÓÐ"×îСÑÓ³Ù"±ê¼ÇµÄ°ü·Å½ø0ƵµÀ.
²»Òª°ÑÕâ¸öÎÞÀàµÄ¼òµ¥¶ÓÁй涨Óë·ÖÀàµÄPRIOÏà»ìÏý!ËäÈ»ËüÃǵÄÐÐΪÓÐЩÀà
ËÆ,µ«¶ÔÓÚÎÞÀàµÄpfifo_fast¶øÑÔ,Äã²»ÄÜʹÓÃtcÃüÁîÏòÆäÖ
Ïà¹ØÎĵµ£º
£¨L2CAPÐÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPÐÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼Á¬½Ó¿ØÖƺÍÊÊÅäÐÒé (L2CAP) ΪÉϲãÐÒéÌá¹©ÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àÐÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãÐÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ L2CAP Ê ......
ÀýÒ»£º·¢ËÍSignaling Packet£º
Signaling CommandÊÇ2¸öBluetoothʵÌåÖ®¼äµÄL2CAP²ãÃüÁî´«Êä¡£ËùÒÔµÃSignaling CommandʹÓÃCID 0x0001.
¶à¸öCommand¿ÉÒÔÔÚÒ»¸öC-frame£¨control frame£©Öз¢ËÍ¡£
Èç¹ûÒªÖ±½Ó·¢ËÍSignaling Command.ÐèÒª½¨Á¢SOCK_RAWÀàÐ͵ÄL2CAPÁ¬½ÓSocket¡£ÕâÑù²ÅÓлú»á×Ô¼ºÌî³äCommand Code£¬Identi ......
Service Discovery Protocol(SDP)ÌṩһÖÖÄÜÁ¦£¬ÈÃÓ¦ÓóÌÐòÓз½·¨·¢ÏÖÄÄÖÖ·þÎñ¿ÉÓÃÒÔ¼°ÕâÖÖ·þÎñµÄÌØÐÔ¡£
·þÎñ·¢ÏÖÐÒé(SDP»òBluetooth SDP)ÔÚÀ¶ÑÀÐÒéÕ»ÖжÔÀ¶ÑÀ»·¾³ÖеÄÓ¦ÓóÌÐòÓÐÌØÊâµÄº¬Ò⣬·¢ÏÖÄĸö·þÎñÊÇ¿ÉÓõĺÍÈ·¶¨ÕâЩ¿ÉÓ÷þÎñµÄÌØÕ÷¡£SDP¶¨ÒåÁËbluetooth client·¢ÏÖ¿ÉÓÃbluetooth server·þÎñºÍËüÃǵÄÌØÕ÷µÄ·½·¨¡£ ......
Ò»£ºÇ°ÑÔ
×î½üÔÚÑо¿androidµÄsensor driver£¬Ö÷ÒªÊÇE-compass£¬ÆäÖÐÓõ½ÁËLinux input×Óϵͳ.ÔÚÍøÉÏÒ²¿´Á˺ܶàÕâ·½ÃæµÄ×ÊÁÏ£¬¸Ð¾õ»¹ÊÇÕâÆª·ÖÎöµÄ±È½ÏϸÖÂ͸³¹£¬Òò´Ë×ªÔØÒ»ÏÂÒÔ±ã×Ô¼ºÑ§Ï°£¬Í¬Ê±ºÍ´ó¼Ò·ÖÏí£¡
£¨ÕâÆª²©¿ÍÖ÷ÒªÊÇÒÔ¼üÅÌÇý¶¯ÎªÀýµÄ£¬²»¹ý½²½âµÄÊÇLinux Input Subsystem£¬¿ÉÒÔ×ÐϸµÄÑо¿Ò»Ï£¡£©
¼üÅÌÇý¶¯½«¼ì ......
LinuxϵͳÖгÌÐòµÄÏß³Ì×ÊÔ´ÊÇÓÐÏ޵쬱íÏÖΪ¶ÔÓÚÒ»¸ö³ÌÐòÆäÄÜͬʱÔËÐеÄÏß³ÌÊýÊÇÓÐÏ޵ġ£¶øÄ¬ÈϵÄÌõ¼þÏ£¬Ò»¸öÏ߳̽áÊøºó£¬Æä¶ÔÓ¦µÄ×ÊÔ´²»»á±»ÊÍ·Å£¬ÓÚÊÇ£¬Èç¹ûÔÚÒ»¸ö³ÌÐòÖУ¬·´¸´½¨Á¢Ị̈߳¬¶øÏß³ÌÓÖĬÈϵÄÍ˳ö£¬Ôò×îÖÕÏß³Ì×ÊÔ´ºÄ¾¡£¬½ø³Ì½«²»ÔÙÄܽ¨Á¢ÐµÄÏ̡߳£
½â¾öÕâ¸öÎÊÌ⣬ÓÐ2ÖÖ·½Ê½£¬ÏµÍ³×Ô¶¯ÊÍ·ÅÏß³Ì×ÊÔ´£¬»òÕßÓÉÁí ......