ʵսLinux Bluetooth±à³Ì£¨ËÄ£© L2CAP²ã±à³Ì
£¨L2CAPÐÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPÐÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼Á¬½Ó¿ØÖƺÍÊÊÅäÐÒé (L2CAP) ΪÉϲãÐÒéÌṩÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àÐÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãÐÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ L2CAP Êý¾Ý°ü¡£
¡¡¡¡L2CAP »ùÓÚ Í¨µÀ(channel) µÄ¸ÅÄî¡£ ͨµÀ (Channel) ÊÇλÓÚ»ù´ø (baseband) Á¬½ÓÖ®ÉϵÄÂß¼Á¬½Ó¡£Ã¿¸öͨµÀÒÔ¶à¶ÔÒ»µÄ·½Ê½°ó¶¨Ò»¸öµ¥Ò»ÐÒé (single protocol)¡£¶à¸öͨµÀ¿ÉÒÔ°ó¶¨Í¬Ò»¸öÐÒ飬µ«Ò»¸öͨµÀ²»¿ÉÒ԰󶨶à¸öÐÒé¡£ ÿ¸öÔÚͨµÀÀï½ÓÊÕµ½µÄ L2CAP Êý¾Ý°ü±»´«µ½ÏàÓ¦µÄÉϲãÐÒé¡£ ¶à¸öͨµÀ¿É¹²Ïíͬһ¸ö»ù´øÁ¬½Ó¡£
L2CAP´¦ÓÚBluetoothÐÒéÕ»µÄλÖÃÈçÏ£º
Ò²¾ÍÊÇ˵£¬ËùÓÐL2CAPÊý¾Ý¾ùͨ¹ýHCI´«Êäµ½Remote Device¡£ÇÒÉϲãÐÒéµÄÊý¾Ý£¬´ó¶¼Ò²Í¨¹ýL2CAPÀ´´«ËÍ¡£
L2CAP¿ÉÒÔ·¢ËÍCommand¡£ÀýÈçÁ¬½Ó£¬¶ÏÁ¬µÈµÈ¡£
ÏÂÃæ¿´CommandÀý×Ó£ºConnection Request:
ÆäÖÐPSM±È½ÏÐèҪעÒ⣬L2CAP ʹÓÃL2CAPÁ¬½ÓÇëÇó£¨Connection Request £©ÃüÁîÖеÄPSM×Ö¶ÎʵÏÖÐÒ鸴Óá£L2CAP¿ÉÒÔ¸´Ó÷¢¸øÉϲãÐÒéµÄÁ¬½ÓÇëÇó£¬ÕâЩÉϲãÐÒé°üÀ¨·þÎñ·¢ÏÖÐÒéSDP£¨PSM = 0x0001£©¡¢RFCOMM£¨PSM = 0x0003£©ºÍµç»°¿ØÖÆ£¨PSM = 0x0005£©µÈ¡£
ProtocolPSMReference
SDP
0x0001
See Bluetooth Service Discovery Protocol (SDP), Bluetooth SIG.
RFCOMM
0x0003
See RFCOMM with TS 07.10, Bluetooth SIG.
TCS-BIN
0x0005
See Bluetooth Telephony Control Specification / TCS Binary, Bluetooth SIG.
TCS-BIN-CORDLESS
0x0007
See Bluetooth Telephony Control Specification / TCS Binary, Bluetooth SIG.
BNEP
0x000F
See Bluetooth Network Encapsulation Protocal, Bluetooth SIG.
HID_Control
0x0011
See Human Interface Device , Bluetooth SIG.
HID_Interrupt
0x0013
See Human Interface Device, Bluetooth SIG.
UPnP
0x0015
See [ESDP] , Bluetooth SIG.
AVCTP
0x0017
See Audio/Video Control Transport Protocol , Bluetooth SIG.
AVDTP
0x0019
See Audio/Video Distribution Transport Protocol , Bluetooth SIG.
AVCTP_Browsing
0x001B
See Audio/Video Remote Control Profile, Bluetooth SIG
UDI_C-Plane
0x001D
See the Unrestricted Digital Information Profile [UDI], Bluetooth SIG
¶þ£ºL
Ïà¹ØÎĵµ£º
1. wrote driver function file(s) .
2. stored in the proper folder, eg: character driver stored in folder drivers/char/
3. modified Makefile in this folder(eg: drivers/char/)
-added configuration at somewhere: type like that "obj-$(CONFIG_TESTD ......
ÔںܶàϵͳÈí¼þµÄ¿ª·¢ÖУ¬ÐèҪʹÓÃһЩϵͳµÄΨһÐÔÐÅÏ¢¡£ËùÒÔ£¬µÃµ½Ö÷»úµÄCPUID¡¢Ó²ÅÌÐòÁкż°Íø¿¨µÄMACµØÖ·£¬¾Í³É¸öÒ»¼þºÜÖØÒªµÄÓ¦Óá£
±¾È˾¹ýÒ»·¬google¼´×Ô¼ºµÄ×êÑУ¬»ù±¾ÉÏʵÏÖÁËÕ⼸¸ö¹¦ÄÜ¡£ÐèÒªµÄ×¼±¸ÖªÊ¶ÓУº
GCCµÄǶÈë»ã±à£¬¾ßÌåµÄGCCǶÈë»ã±à֪ʶ£¬Çë²Î¿¼Ïà¹ØÊÖ²á
ioctlϵͳµ÷Ó㬾ßÌåµÄµ÷Ó÷½·¨ ......
1£ºÕë¶ÔÔÚÒ»¸öÓ²ÅÌÉÏ°²×°ÁË˫ϵͳµÄÇé¿ö£º
Linuxϵͳ¿Éʶ±ðWindows·ÖÇø£¬Ä¬ÈÏÇé¿öϲ»×Ô¶¯¼ÓÔØËü¡£µ«ÓÐʱÔÚLinuxÖÐÐèÒªÓëWindows·ÖÇø½»»»Îļþ£¬Õâ¾ÍÐèÒª¼ÓÔØËü¡£¸ù¾Ý²»Í¬µÄ½»»»ÐèÒª£¬ÎÒÃǿɲÉÓò»Í¬µÄ¼ÓÔØ·½Ê½¡£ÏÂÃæÒÔRedHat Linux 7.3¼òÌåÖÐÎÄ°æΪÀýÀ´ËµÃ÷¡£
Ò»¡¢ÊÖ¹¤¼ÓÔØ
Èç¹ûÄãÖ»ÊÇż¶û½øÐÐһЩÎļþ½»»»£¬ÓÖÏ ......
Linux²»ÐèÒª´ÅÅÌËéƬÕûÀí¡£
ÒÔÏÂÒý×Ôlinux¹Ù·½ÍøÕ¾¶ÔËéƬµÄ½â˵£ºÀ´Ô´ÓÚ
http://www.linux.org/docs/ldp/howto/Partition/appendix.html#fragmentation
ÒýÓÃ:
10.4. Some facts about file systems and fragmentation
Disk
space is administered by the operating system in units of ......
SamÒ»ÄêÇ°ÔÚLinuxÏÂдÁËÒ»¸öÀàËÆWindowsÏÂBTWµÄ¿â--BTX¡£ÏÖÔÚÐèÒªÌí¼Óй¦ÄÜʱ·¢Ïֺܶà֪ʶµã¶¼Íü¼ÇÁË¡£ËùÒÔ¾ö¶¨ÔÚÕâ´ÎѧϰÖУ¬°ÑһЩbluez API¼Ç¼ÏÂÀ´¡£Õ⼸ÌìÓÖÏ룬ÕâÑù»¹²»¹»£¬²»Èç°ÑLinuxϵÄBluetooth±à³Ì»ù´¡¸ø¼Ç¼ÏÂÀ´°É¡£
Ç°ÑÔ£ºËæ×ÅǶÈëʽϵͳµÄ·ÉËÙ·¢Õ¹£¬ºÜ¶àǶÈëʽƽ̨ÉÏÐèÒªBluetoothÉ豸ºÍÓ¦Óᣵ«ÔÚLinuxÏ ......