Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

linuxÉ豸Çý¶¯³ÌÐò——×Ö·ûÉ豸Çý¶¯³ÌÐò

ÔÚLinux²Ù×÷ϵͳÏÂÓÐ3ÀàÖ÷ÒªµÄÉ豸ÎļþÀàÐÍ£º¿éÉ豸¡¢×Ö·ûÉ豸ºÍÍøÂçÉ豸¡£ÕâÖÖ·ÖÀà·½·¨¿ÉÒÔ½«¿ØÖÆÊäÈë/Êä³öÉ豸µÄÇý¶¯³ÌÐòÓëÆäËû²Ù×÷ϵͳÈí¼þ·ÖÀ뿪À´¡£×Ö·ûÉ豸ÊÇÖ¸´æÈ¡Ê±Ã»Óлº´æµÄÉ豸¡£µäÐ͵Ä×Ö·ûÉ豸°üÀ¨Êó±ê¡¢¼üÅÌ¡¢´®Ðпڵȡ£
×Ö·ûÉ豸Óë¿éÉ豸µÄÖ÷񻂿±ðÊÇ£ºÔÚ¶Ô×Ö·ûÉ豸·¢³ö¶Á/дÇëÇóʱ£¬Êµ¼ÊµÄÓ²¼þI/OÒ»°ã½ô½Ó×Å·¢Éú¡£¿éÉ豸Ôò²»È»£¬ËüÀûÓÃÒ»¿éϵͳÄÚ´æ×÷Ϊ»º³åÇø£¬ÈôÓû§½ø³Ì¶ÔÉ豸µÄÇëÇóÄÜÂú×ãÓû§µÄÒªÇ󣬾ͷµ»ØÇëÇóµÄÊý¾Ý£»·ñÔò£¬¾Íµ÷ÓÃÇëÇóº¯ÊýÀ´½øÐÐʵ¼ÊµÄI/O²Ù×÷¡£¿éÉ豸Ö÷ÒªÊÇÕë¶Ô´ÅÅ̵ÈÂýËÙÉ豸Éè¼ÆµÄ£¬ÒÔÃâºÄ·Ñ¹ý¶àµÄCPUʱ¼äÓÃÀ´µÈ´ý¡£ÍøÂçÉ豸¿ÉÒÔͨ¹ýBSDÌ×½Ó¿Ú·ÃÎÊÊý¾Ý¡£
Ò».Ö÷É豸ºÅºÍ´ÎÉ豸ºÅ
Ö÷É豸ºÅ±êʶÉ豸¶ÔÓ¦µÄÇý¶¯³ÌÐò£»´ÎÉ豸ºÅÓÉÄÚºËʹÓã¬ÓÃÓÚÕýÈ·È·¶¨É豸ÎļþËùÖ¸µÄÉ豸¡£ÎÒÃÇ¿ÉÒÔͨ¹ý´ÎÉ豸ºÅ»ñµÃÒ»¸öÖ¸ÏòÄÚºËÉ豸µÄÖ±½ÓÖ¸Õ룬Ҳ¿É½«´ÎÉ豸ºÅµ±×÷É豸±¾µØÊý×éµÄË÷Òý£¬²»¹ÜÓÃÄÄÖÖ·½Ê½£¬³ýÁËÖªµÀ´ÎÉ豸ºÅÓÃÀ´Ö¸ÏòÇý¶¯³ÌÐòËùʵÏÖµÄÉ豸֮Í⣬Äں˱¾Éí»ù±¾Éϲ»¹ØÐĹØÓÚ´ÎÉ豸ºÅµÄÈÎºÎÆäËûÏûÏ¢¡£
¡òÉ豸±àºÅµÄÄÚ²¿±í´ï
ÄÚºËÓÃdev_tÀàÐÍ£¨<linux/types.h>£©À´±£´æÉ豸±àºÅ£¬dev_tÊÇÒ»¸ö32λµÄÊý£¬12λ±íʾÖ÷É豸ºÅ£¬20λ±íʾ´ÎÉ豸ºÅ¡£
ÔÚʵ¼ÊʹÓÃÖУ¬ÊÇͨ¹ý<linux/kdev_t.h>Öж¨ÒåµÄºêÀ´×ª»»¸ñʽ¡£
 (dev_t)-->Ö÷É豸ºÅ¡¢´ÎÉ豸ºÅ       MAJOR(dev_t dev)     MINOR(dev_t dev)
 Ö÷É豸ºÅ¡¢´ÎÉ豸ºÅ-->(dev_t)       MKDEV(int major,int minor) 
¡ò·ÖÅäºÍÊÍ·ÅÉ豸±àºÅ
½¨Á¢Ò»¸ö×Ö·ûÉ豸֮ǰ£¬Çý¶¯³ÌÐòÊ×ÏÈÒª×öµÄÊÂÇé¾ÍÊÇ»ñµÃÉ豸±àºÅ¡£ÆäÕâÖ÷Òªº¯ÊýÔÚ<linux/fs.h>ÖÐÉùÃ÷£º
int register_chrdev_region(dev_t first, unsigned int count,char *name);   //Ö¸¶¨É豸±àºÅ
int alloc_chrdev_region(dev_t *dev, unsigned int firstminor,unsigned int count, char *name);   //¶¯Ì¬Éú³ÉÉ豸±àºÅ
void unregister_chrdev_region(dev_t first, unsigned int count);      //ÊÍ·ÅÉ豸±àºÅ 
·ÖÅäÖ®É豸ºÅµÄ×î¼Ñ·½Ê½ÊÇ£ºÄ¬ÈϲÉÓö¯Ì¬·ÖÅ䣬ͬʱ±£ÁôÔÚ¼ÓÔØÉõÖÁÊDZàÒëʱָ¶¨Ö÷É豸ºÅµÄÓàµØ¡£
¡ò¶¯Ì¬·ÖÅäÖ÷É豸ºÅ
    Ä³Ð©Ö÷É豸ºÅÒѾ­¾²Ì¬µØ·ÖÅ䏸Á˴󲿷ֹ«ÓÃÉ豸¡£ÔÚÄÚºËÔ´ÂëÊ÷µÄDocumentation/device.txt


Ïà¹ØÎĵµ£º

ʵսLinux Bluetooth±à³Ì£¨Èý£© HCI²ã±à³Ì

1. HCI²ãЭÒé¸ÅÊö£º
HCIÌṩһÌ×ͳһµÄ·½·¨À´·ÃÎÊBluetoothµ×²ã¡£ÈçͼËùʾ£º
´ÓͼÉÏ¿ÉÒÔ¿´³ö£¬Host Controller Interface(HCI)  ¾ÍÊÇÓÃÀ´¹µÍ¨HostºÍModule¡£Hostͨ³£¾ÍÊÇPC£¬ ModuleÔòÊÇÒÔ¸÷ÖÖÎïÀíÁ¬½ÓÐÎʽ£¨USB,serial,pc-cardµÈ£©Á¬½Óµ½PCÉϵÄbluetooth Dongle¡£
ÔÚHostÕâÒ»¶Ë£ºapplication,SDP,L2capµÈЭÒé ......

ʵսLinux Bluetooth±à³Ì£¨ËÄ£© L2CAP²ã±à³Ì

£¨L2CAPЭÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPЭÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼­Á¬½Ó¿ØÖƺÍÊÊÅäЭÒé (L2CAP) ΪÉϲãЭÒéÌá¹©ÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àЭÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãЭÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ L2CAP Ê ......

ʵսLinux Bluetooth±à³Ì (Æß) SDPЭÒé

Service Discovery Protocol(SDP)ÌṩһÖÖÄÜÁ¦£¬ÈÃÓ¦ÓóÌÐòÓз½·¨·¢ÏÖÄÄÖÖ·þÎñ¿ÉÓÃÒÔ¼°ÕâÖÖ·þÎñµÄÌØÐÔ¡£
·þÎñ·¢ÏÖЭÒé(SDP»òBluetooth SDP)ÔÚÀ¶ÑÀЭÒéÕ»ÖжÔÀ¶ÑÀ»·¾³ÖеÄÓ¦ÓóÌÐòÓÐÌØÊâµÄº¬Ò⣬·¢ÏÖÄĸö·þÎñÊÇ¿ÉÓõĺÍÈ·¶¨ÕâЩ¿ÉÓ÷þÎñµÄÌØÕ÷¡£SDP¶¨ÒåÁËbluetooth client·¢ÏÖ¿ÉÓÃbluetooth server·þÎñºÍËüÃǵÄÌØÕ÷µÄ·½·¨¡£ ......

LinuxµÚÒ»Ìì

¸Õ¿ªÊ¼½Ó´¥Linux,ÄÇô¶àµÄ°æ±¾,Õæ²»ÖªµÀ¸ÃÓÃʲôÑùµÄºÃ.¿´ÁËÍøÉÏµÄÆÀÂÛ,¶¼ËµUbuntnºÃ.ÏÂÁËÒ»¸ö,ÔÚÐéÄâ»úÉÏ×°Á˼¸±é.·¢ÏÖµÚÒ»´Î°²×°µÄʱºòºÜ¿ì,ÒÔºó¾Í×Ü¿¨ÔÚAptÅäÖÃÄÇ,²»ÖªµÀÊÇΪʲô.
ºóÀ´,·¢ÏÖºìÆìLinux.µ«ÍøÉÏµÄÆÀÂÛ¸÷Òì,²»¹ýÎÒ»¹ÊÇÑ¡ÔñÁ˺ìÆì.û±ðµÄÔ­Òò,¾ÍÒòΪËýÊÇÖйúµÄ.
¶ÔÓÚûÓÐÒ»µãLINUX¾­ÑéµÄ³õѧÕß,±¾ÈËÈÏΪ»¹Ê ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ