linuxÎļþIOÖ®ÕûÀí±Ê¼Ç£¨Ò»£©
ÒÔÏÂÊǸöÈ˾õµÃ±È½ÏÏêϸ¶øÇÒÒ×ÓÚÀí½âµÄ¼¸ÆªÎÄÕ£¬ËùÒÔ°ÑËüÒ»ÆðÌù³öÀ´×öΪ±Ê¼Ç£¨Ò»£©¡¢£¨¶þ£©¡¢£¨Èý£©£¬Ò²Ï£Íû¶Ô¹ý·ÕßÌṩһµã·½±ã¡£
µÚ3ÕÂÎļþI / O
3.1 ÒýÑÔ
±¾Õ¿ªÊ¼ÌÖÂÛU N I Xϵͳ£¬ÏÈ˵Ã÷¿ÉÓõÄÎļþI / Oº¯Êý——´ò¿ªÎļþ¡¢¶ÁÎļþ¡¢Ð´ÎļþµÈµÈ¡£´ó¶àÊýU N I XÎļþI / OÖ»ÐèÓõ½5¸öº¯Êý£ºo p e n¡¢r e a d¡¢w r i t e¡¢lseek ÒÔ¼°c l o s e¡£È»ºó˵Ã÷²»Í¬»º´æÆ÷³¤¶È¶Ôr e a dºÍw r i t eº¯ÊýµÄÓ°Ïì¡£±¾ÕÂËù˵Ã÷µÄº¯Êý¾³£±»³ÆÖ®Îª²»´ø»º´æµÄI / O£¨u n b u ffered I/O£¬Ó뽫ÔÚµÚ5ÕÂÖÐ˵Ã÷µÄ±ê×¼I / Oº¯ÊýÏà¶ÔÕÕ£©¡£ÊõÓï——²»´ø»º´æÖ¸µÄÊÇÿ¸ör e a dºÍw r i t e¶¼µ÷ÓÃÄÚºËÖеÄÒ»¸öϵͳµ÷Óá£
ÕâЩ²»´ø»º´æµÄI / Oº¯Êý²»ÊÇANSI CµÄ×é³É²¿·Ö£¬µ«ÊÇÊÇP O S I X . 1ºÍX P G 3µÄ×é³É²¿·Ö¡£
Ö»ÒªÉæ¼°ÔÚ¶à¸ö½ø³Ì¼ä¹²Ïí×ÊÔ´£¬Ô×Ó²Ù×÷µÄ¸ÅÄî¾Í±ä³É·Ç³£ÖØÒª¡£ÎÒÃǽ«Í¨¹ýÎļþI / OºÍ´«Ë͸øo p e nº¯ÊýµÄ²ÎÊýÀ´ÌÖÂ۴˸ÅÄî¡£²¢½øÒ»²½ÌÖÂÛÔÚ¶à¸ö½ø³Ì¼äÈçºÎ¹²ÏíÎļþ£¬²¢Éæ¼°Äں˵ÄÓйØÊý¾Ý½á¹¹¡£ÔÚÌÖÂÛÁËÕâÐ©ÌØÕ÷ºó£¬½«ËµÃ÷d u p¡¢f c n t lºÍi o c t lº¯Êý¡£
3.2 ÎļþÃèÊö·û
¶ÔÓÚÄں˶øÑÔ£¬ËùÓдò¿ªÎļþ¶¼ÓÉÎļþÃèÊö·ûÒýÓá£ÎļþÃèÊö·ûÊÇÒ»¸ö·Ç¸ºÕûÊý¡£µ±´ò¿ªÒ»¸öÏÖ´æÎļþ»ò´´½¨Ò»¸öÐÂÎļþʱ£¬ÄÚºËÏò½ø³Ì·µ»ØÒ»¸öÎļþÃèÊö·û¡£µ±¶Á¡¢Ð´Ò»¸öÎļþʱ£¬ÓÃo p e n»òc r e a t·µ»ØµÄÎļþÃèÊö·û±êʶ¸ÃÎļþ£¬½«Æä×÷Ϊ²ÎÊý´«Ë͸ør e a d»òw r i t e¡£°´ÕÕ¹ßÀý£¬UNIX shellʹÎļþÃèÊö·û0Óë½ø³ÌµÄ±ê×¼ÊäÈëÏà½áºÏ£¬ÎļþÃèÊö·û1Óë±ê×¼Êä³öÏà½áºÏ£¬ÎļþÃèÊö·û2Óë±ê×¼³ö´íÊä³öÏà½áºÏ¡£ÕâÊÇUNIX shellÒÔ¼°ºÜ¶àÓ¦ÓóÌÐòʹÓõĹßÀý£¬¶øÓëÄÚºËÎ޹ء£¾¡¹ÜÈç´Ë£¬Èç¹û²»×ñÕÕÕâÖÖ¹ßÀý£¬ÄÇôºÜ¶àU N I XÓ¦ÓóÌÐò¾Í²»Äܹ¤×÷¡£
ÔÚP O S I X . 1Ó¦ÓóÌÐòÖУ¬»ÃÊý0¡¢1¡¢2Ó¦±»´ú»»³É·ûºÅ³£ÊýS T D I N _ F I L E N O¡¢S T D O U T _F I L E N OºÍS T D E R R _ F I L E N O¡£ÕâЩ³£Êý¶¼¶¨ÒåÔÚÍ·Îļþ< u n i s t d . h >ÖС£
ÎļþÃèÊö·ûµÄ·¶Î§ÊÇ0 ~ O P E N _ M A X (¼û±í2 - 7 )¡£ÔçÆÚµÄU N I X°æ±¾²ÉÓõÄÉÏÏÞÖµÊÇ1 9 (ÔÊÐíÿ¸ö½ø³Ì´ò¿ª2 0¸öÎļþ)£¬ÏÖÔںܶàϵͳÔò½«ÆäÔö¼ÓÖÁ6 3¡£
&
Ïà¹ØÎĵµ£º
1. HCI²ãÐÒé¸ÅÊö£º
HCIÌṩһÌ×ͳһµÄ·½·¨À´·ÃÎÊBluetoothµ×²ã¡£ÈçͼËùʾ£º
´ÓͼÉÏ¿ÉÒÔ¿´³ö£¬Host Controller Interface(HCI) ¾ÍÊÇÓÃÀ´¹µÍ¨HostºÍModule¡£Hostͨ³£¾ÍÊÇPC£¬ ModuleÔòÊÇÒÔ¸÷ÖÖÎïÀíÁ¬½ÓÐÎʽ£¨USB,serial,pc-cardµÈ£©Á¬½Óµ½PCÉϵÄbluetooth Dongle¡£
ÔÚHostÕâÒ»¶Ë£ºapplication,SDP,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 ......
[ת]Õâ¸öÌâÄ¿ºÜ´ó£¬¸øÈËÒ»ÖָоõÎÒºÃÏñºÜ³É¹¦£¬Æäʵ²»È»¡£Êµ¼ÊÉÏ×Ô¼ºË®Æ½²»¸ß£¬ÉõÖÁºÜµÍ£¬µ«ÊÇ×ö¹ýÁËһЩÇúÕÛµÄѧϰµÀ·£¬Í¬Ê±°Ñ×Ô¼ºÕæÊµµÄѧϰÀú³Ì±í´ï³öÀ´£¬Ï£Íû¶ÔºóÀ´ÕßÓÐ½è¼øµÄÒâÒ壬ÉõÐÒ£¡
¹¤×÷ÈýÄê¡¢¼¸³É·ÏÈË£¡
ÎÒ2000Äê±ÏÒµÓÚ»ªÖеØÇøµÄÒ»¸öÀí¹¤¿Æ´óѧ£¬×¨ÒµÊÇ»úеµç×Ó£¬ÎÒµ±Ê±ÒѾǩÁËÒ»¼ÒÄÚ½ij¸öÊ¡¼¶»ú¹Ø¹¤× ......
1.×Ô¶¨ÒåÊä³ö
Ïë±Ø´ó¼Ò¶¼ÓÐÀûÓÃÊä³öº¯ÊýÈçprintfÀ´°ïÖúÎÒÃǵ÷ÊÔ³ÌÐòµÄ¾Àú£¬ÕâÊÇÒ»ÖֱȽÏÔʼµÄ³ÌÐòµ÷ÊÔ¸¨Öú·½·¨£¬ÔÚLinuxÏÂÒ²¿ÉÒÔΪÎÒÃÇËùÓᣲ»¹ýÕâÖÖ·½·¨ÓÐÒ»¸öÃ÷ÏÔµÄȱµã£¬¾ÍÊÇÔÚµ÷ÊÔÍêºóÎÒÃDZØÐë×¢ÊÍ»òɾ³ýµôÕâЩ¸¨Öú´úÂë¡£Linux CÌṩÁË-DDEBUGÕâ¸ö±àÒë±ê¼ÇÀ´¶¨ÒåDEBUGÕâ¸ö·ûºÅ£¬½èÖúÓڸ÷ûºÅ£¬ÎÒÃÇ¿ÉÒÔÔÚÓ¦Ó ......
ÉÏ週Òò為ÓÐһ̨ºÜ舊µÄ Linux ËÅ·þÆ÷ÐèÖØÐ°²裝£¨簡稱 A
Ö÷機£©£¬Òò為ËùÓÐ資Á϶¼ÒÑ經備·Ý£¬ÇÒÒ²ÒÑ經確認無Èκηþ務ÔÚ這̨Ö÷機ÁË£¬ËùÒÔÒ²ºÜ·ÅÐĵÄÖØ¹àÁË¡£²»過£¬ÖعàÁËÖ®áá²Å發現Ô來 ......