ʵսLinux Bluetooth±à³Ì (Æß) SDPÐÒé
Service Discovery Protocol(SDP)ÌṩһÖÖÄÜÁ¦£¬ÈÃÓ¦ÓóÌÐòÓз½·¨·¢ÏÖÄÄÖÖ·þÎñ¿ÉÓÃÒÔ¼°ÕâÖÖ·þÎñµÄÌØÐÔ¡£
·þÎñ·¢ÏÖÐÒé(SDP»òBluetooth SDP)ÔÚÀ¶ÑÀÐÒéÕ»ÖжÔÀ¶ÑÀ»·¾³ÖеÄÓ¦ÓóÌÐòÓÐÌØÊâµÄº¬Ò⣬·¢ÏÖÄĸö·þÎñÊÇ¿ÉÓõĺÍÈ·¶¨ÕâЩ¿ÉÓ÷þÎñµÄÌØÕ÷¡£SDP¶¨ÒåÁËbluetooth client·¢ÏÖ¿ÉÓÃbluetooth server·þÎñºÍËüÃǵÄÌØÕ÷µÄ·½·¨¡£Õâ¸öÐÒ鶨ÒåÁ˿ͻ§ÈçºÎÄܹ»Ñ°ÕÒ»ùÓÚÌØ¶¨ÊôÐԵķþÎñ¶ø²»Èÿͻ§ÖªµÀ¿ÉÓ÷þÎñµÄÈκÎ֪ʶ¡£SDPÌṩ·¢ÏÖзþÎñµÄ·½·¨£¬ÔÚµ±¿Í»§µÇ¼µ½ÕýÔÚ²Ù×÷µÄÀ¶ÑÀ·þÎñÆ÷µÄÒ»¸öÇøÓòʱÊÇ¿ÉÓõÄʱ¡£
Service discovery»úÖÆÌṩclientÓ¦ÓóÌÐòÕì²âserverÓ¦ÓóÌÐòÌṩµÄ·þÎñµÄÄÜÁ¦£¬²¢ÇÒÄܹ»µÃµ½·þÎñµÄÌØÐÔ¡£·þÎñµÄÆ·Öʰüº¬·þÎñtype»ò·þÎñclass.
SDPÒ²ÌṩSDP serverÓëSDP clientÖ®¼äµÄͨѶ¡£SDP serverά»¤×ÅÒ»¸ö·þÎñÌõÄ¿(service record)Áбí.ÿ¸ö·þÎñÌõÄ¿ÃèÊöÒ»¸öµ¥¶ÀµÄ·þÎñÊôÐÔ¡£ SDP client¿ÉÒÔͨ¹ý·¢ËÍSDP requestÀ´µÃµ½·þÎñÌõÄ¿¡£
Èç¹ûÒ»¸öclient»òÕßÒÀ¸½ÓÚclientÖ®ÉϵÄÓ¦ÓóÌÐò¾ö¶¨Ê¹ÓÃij¸öservice. Ëü´´½¨Ò»¸öµ¥¶ÀµÄÁ¬½Óµ½serviceÌṩÕß¡£ SDP Ö»ÌṩÕì²âServiceµÄ»úÖÆ£¬µ«²»ÌṩÈçºÎÀûÓÃÕâЩServiceµÄ»úÖÆ¡£Sam¾õµÃ£¬ÕâÀïÆäʵÊÇ˵£ºSDPÖ»ÌṩÕì²âServiceµÄ°ì·¨£¬µ«ÈçºÎÓã¬SDP²»¹Ü¡£
ÿ¸öBluetooth Device×î¶àÖ»ÄÜÓµÓÐÒ»¸öSDP Server¡£Èç¹ûÒ»¸öBluetooth DeviceÖ»µ£ÈÎClient£¬ÄÇËü²»ÐèÒªSDP Server¡£µ«Ò»¸öBluetooth Device¿ÉÒÔͬʱµ£µ±SDP ServerºÍSDP client.
Service Record(Service ÌõÄ¿)£º
Ò»¸öserviceÊÇÒ»¸öʵÌåΪÁíÒ»¸öʵÌåÌṩÐÅÏ¢£¬Ö´Ðж¯×÷»ò¿ØÖÆ×ÊÔ´¡£Ò»¸öservice¿ÉÒÔÓÉÈí¼þ£¬Ó²¼þ»òÈíÓ²¼þ½áºÏÌṩ¡£
ËùÓеÄServiceÐÅÏ¢¶¼°üº¬ÓÚÒ»¸öService RecordÄÚ¡£Ò»¸öService Record °üº¬Ò»¸öService attribute(ServiceÊôÐÔ) list.
ÔÚÒ»¸öSDP ServerÄÚ£¬Ã¿¸öService RecordÓµÓÐÒ»¸ö32-bitµÄΨһÐÔÊý¾Ý¡£Í¨³££¬Õâ¸öΨһÐÔÖ»ÊÇÔÚÿ¸öSDP ServerÄÚ²¿¡£ Èç¹ûSDP Server S1 ºÍSDP Server S2ÓµÓÐͬÑùµÄÒ»¸öService Record¡£ÄÇËûÃÇÔÚ²»Í¬SDP SeverÄڵĶÀÌØÊýÖµ²¢²»Ò»¶¨Ïàͬ¡£
SDPÔÚSDP ServerÔö¼Ó»ò¼õÉÙService Recordʱ£¬²¢²»»á֪ͨSDP client.
Service Attribute(Service ÊôÐÔ)£º
ÿ¸öServiceÊôÐÔÃèÊöservcieµÄÌØÐÔ.Ò»¸öService AttributeÓÉ2²¿·Ö£º
Attribute ID + Attribute Value¡£
Attribute ID£º16-bitÎÞ·ûºÅÕûÊý£¬ÓÃÓÚÇø±ðÒ»¸öService RecordÄ򵀮äËüÊôÐÔ¡£
Attribute Value£ºAttributeÖµ¡£
Service Class£º
ÿ¸öServi
Ïà¹ØÎĵµ£º
×î½üÁ½Ä꣬ÎļþϵͳµÃµ½Á˺ܴóµÄ·¢Õ¹¡£
SunÓпªÔ´µÄZFSÒÔ¼°ÊÕ¹ºµÄLustreÎļþϵͳ¡£Quantum¡¢Panasas¡¢ IBM¡¢»ÝÆÕ¡¢NetAppºÍRed HatÒ²¶¼ÔöÇ¿ÁËÎļþϵͳ¿ª·¢Á¦¶È¡£NFS£¨ÍøÂçÎļþϵͳ£©ÕýÔÚ¾Àú´óµÄ±ä¶¯£¬Ö÷Òª´ú±í¾ÍÊÇpNFS£¨²¢ÐÐÍøÂçÎļþϵͳ£©¡£ºÁ²»Ææ¹ÖµÄÊÇ£¬ËùÓÐÕâЩ¿ª·¢Ðж¯´Ùʹ¿ªÔ´ÉçÇøÍÆ³öÕë¶ÔLinuxµÄ¸ü¸ßÐÔÄܵÄÎļþÏµÍ ......
½ñÌ칫˾ÓиöͬÊÂŪÁ˸öRed Hat Enterprise 5×°£¬ÏµÍ³×°ºÃºó£¬·¢ÏÖtelnet²»ÄÜÓã¬sshÊÇ¿ÉÒԵġ£¸ãÁ˺þ㬲Ÿø¸ã¶¨£¬½áºÏÒÔǰժÏµĹØÓÚÕâ·½ÃæµÄ×ÊÁÏ£¬²Î¿¼ÈçÏ£º
1¡£¸ÅÊöLinuxÌṩ·þÎñÊÇÓÉÔËÐÐÔÚºǫ́µÄÊØ»¤³ÌÐò£¨daemon£©À´Ö´Ðеġ£
ÊØ»¤½ø³ÌµÄ¹¤×÷¾ÍÊÇ´ò¿ª1¸ö¶Ë¿Ú£¨port£©£¬µÈ´ý£¨listen£©½øÈëµÄÁ¬½Ó¡£ÔÚC/SģʽÖУ¬Èç¹ ......
ÔÚÓ¦ÓóÌÐò¿ª·¢Ê±£¬Ò²¾³£ÐèÒªÈçÏµĶ¨Ê±Æ÷. ÕâÀï¶Ô¶¨Ê±Æ÷×öÁËÒ»¸öÓÅ»¯£¬¾ÍÊÇÔÚ²åÈë¶ÓÁÐÖÐʱ½øÐÐÁËÒ»´ÎÅÅÐò£¬Ê¹µÃ¼ì²âʱ²»ÐèÒª±éÀúÕû¸öÁ´±í£¬Ö»Ðè°ÑÅÅÔÚÇ°ÃæµÄ¼¸¸öµ½Ê±µÄÈÎÎñÈ¡³öÀ´¾Í¿ÉÒÔÁË¡£
static struct timer_list {
long jiffies;
void (*fn)();
......
ѧµÄ¿ìÍüµÄÒ²¿ì£¬ºÃ£¬°ÑËü¼ÇÏÂÀ´¡£
(Ò») Óû§
1. ×÷ΪrootµÇ¼
2. ¸øÄãÒªÌí¼ÓµÄÓû§ÉèÖÃÓû§Ä¿Â¼£¬ mkdir /home/yang
3. useradd yang -g users -G 100 -d /home/yang
-->Ö¸¶¨×éÓà -g£¬Òª²é¿´ÏµÍ³Ä¿Ç°ÓÐÄÄЩ×飬¿ÉÒÔ cat /etc/group
-->Èç¹û²»ÉèÖà -g, -d useradd½«Ê¹Óà /etc/default/useradd ½Å±¾Ö¸¶¨µÄ ......
SamÒ»ÄêǰÔÚLinuxÏÂдÁËÒ»¸öÀàËÆWindowsÏÂBTWµÄ¿â--BTX¡£ÏÖÔÚÐèÒªÌí¼Óй¦ÄÜʱ·¢Ïֺܶà֪ʶµã¶¼Íü¼ÇÁË¡£ËùÒÔ¾ö¶¨ÔÚÕâ´ÎѧϰÖУ¬°ÑһЩbluez API¼Ç¼ÏÂÀ´¡£Õ⼸ÌìÓÖÏ룬ÕâÑù»¹²»¹»£¬²»Èç°ÑLinuxϵÄBluetooth±à³Ì»ù´¡¸ø¼Ç¼ÏÂÀ´°É¡£
ǰÑÔ£ºËæ×ÅǶÈëʽϵͳµÄ·ÉËÙ·¢Õ¹£¬ºÜ¶àǶÈëʽƽ̨ÉÏÐèÒªBluetoothÉ豸ºÍÓ¦Óᣵ«ÔÚLinuxÏ ......