LinuxÄÚºËÔ´Âë·ÖÎö
LinuxÄÚºËÔ´Âë·ÖÎö-Á´±í´úÂë·ÖÎö
·ÖÎöÈË£ºÓàÐñ
·ÖÎöʱ¼ä£º2005Äê11ÔÂ17ÈÕÐÇÆÚËÄ 11:40:10 AM
Óê ζȣº10-11¶È
±àºÅ£º1-4 Àà±ð£º×¼±¸¹¤×÷
Email£ºyuxu9710108@163.com
ʱ´ú±³¾°£º¿ªÊ¼ÔÚwww.linuxforum.net LinuxÄں˼¼ÊõÂÛ̳ÉÏÃæ·¢Ìù£¬ÔÚÍøÓѵİïæÏ£¬
½â¾öÁËһЩÎÊÌâ¡£
°æÈ¨ÉùÃ÷£º°æÈ¨±£Áô¡£±¾ÎÄÓÃ×÷ÆäËûÓÃ;µ±¾×÷Õß±¾ÈËͬÒâ,×ªÔØÇë×¢Ã÷×÷ÕßÐÕÃû
All Rights Reserved. If for other use,must Agreed By the writer.Citing this
text,please claim the writer's name.
Copyright (C) 2005 YuXu
**************************************************
-------------Ë«ÏòÑ»·Á´±í---------------------------
À´Ô´ÓÚ£ºlist.h
Éè¼ÆË¼Ï룺¾¡¿ÉÄܵĴúÂëÖØÓ㬻¯´ó¶ÑµÄÁ´±íÉè¼ÆÎªµ¥¸öÁ´±í¡£
Á´±íµÄ¹¹Ô죺Èç¹ûÐèÒª¹¹ÔìijÀà¶ÔÏóµÄÌØ¶¨ÁÐ±í£¬ÔòÔÚÆä½á¹¹Öж¨ÒåÒ»¸öÀàÐÍΪlist_
headÖ¸ÕëµÄ³ÉÔ±£¬Í¨¹ýÕâ¸ö³ÉÔ±½«ÕâÀà¶ÔÏóÁ¬½ÓÆðÀ´£¬ÐγÉËùÐèÁÐ±í£¬²¢Í¨¹ýͨÓÃÁ´±íº¯
Êý¶ÔÆä½øÐвÙ×÷¡£ÆäÓŵãÊÇÖ»Ðè±àдͨÓÃÁ´±íº¯Êý£¬¼´¿É¹¹ÔìºÍ²Ù×÷²»Í¬¶ÔÏóµÄÁÐ±í£¬¶ø
ÎÞÐèΪÿÀà¶ÔÏóµÄÿÖÖÁбí±àдרÓú¯Êý£¬ÊµÏÖÁË´úÂëµÄÖØÓá£
Èç¹ûÏë¶ÔijÖÖÀàÐÍ´´½¨Á´±í£¬¾Í°ÑÒ»¸ölist_headÀàÐ͵ıäÁ¿Ç¶Èëµ½¸ÃÀàÐÍÖУ¬ÓÃlist_
headÖеijÉÔ±ºÍÏà¶ÔÓ¦µÄ´¦Àíº¯ÊýÀ´¶ÔÁ´±í½øÐбéÀú¡£Èç¹ûÏëµÃµ½ÏàÓ¦µÄ½á¹¹µÄÖ¸Õ룬ʹ
ÓÃlist_entry¿ÉÒÔËã³öÀ´¡£
-------------·ÀÖ¹ÖØ¸´°üº¬Í¬Ò»¸öÍ·Îļþ---------------
#ifndef _LINUX_LIST_H
#define _LINUX_LIST_H
...
#endif
ÓÃÓÚ·ÀÖ¹ÖØ¸´°üº¬Í¬Ò»¸ölist.hÍ·Îļþ
-----------struct list_head{}¼°³õʼ»¯ºê---------
struct list_head
{
struct list_head *next, *prev;
};
list_head´Ó×ÖÃæÉÏÀí½â£¬ºÃÏñÊÇÍ·½áµãµÄÒâ˼¡£µ«´ÓÕâÀïµÄ´úÂëÀ´¿´È´ÊÇÆÕͨ½áµãµÄ½á¹¹
Ìå¡£ÔÚºóÃæµÄ´úÂëÖн«list_headµ±³ÉÆÕͨµÄ½áµãÀ´´¦Àí¡£
--LIST_HEAD_INIT()--LIST_HEAD()--INIT_LIST_HEAD()------
#define LIST_HEAD_INIT(name) { &(name), &(name) }
#define LIST_HEAD(name) \
struct list_head name = LIST_HEAD_INIT(name)
·ÖÎö£ºnameµ±Îª½á¹¹Ìåstruct list_head{}µÄÒ»¸ö½á¹¹Ìå±äÁ¿£¬&(name)Ϊ¸Ã½á¹¹Ìå±äÁ¿µÄ
µØÖ·¡£ÓÃname½á¹¹Ìå±äÁ¿µÄʼµØÖ·½«¸Ã½á¹¹Ìå±äÁ¿½øÐгõʼ»¯¡£
#define INIT_LIST_HEAD(ptr) do { \
(ptr)->next = (ptr); (ptr)->prev = (ptr); \
} while (0)
1.ptrΪһ¸ö½á¹¹ÌåµÄÖ¸Õ룬¶ønameΪһ¸ö½á
Ïà¹ØÎĵµ£º
1. HCI²ãÐÒé¸ÅÊö£º
HCIÌṩһÌ×ͳһµÄ·½·¨À´·ÃÎÊBluetoothµ×²ã¡£ÈçͼËùʾ£º
´ÓͼÉÏ¿ÉÒÔ¿´³ö£¬Host Controller Interface(HCI) ¾ÍÊÇÓÃÀ´¹µÍ¨HostºÍModule¡£Hostͨ³£¾ÍÊÇPC£¬ ModuleÔòÊÇÒÔ¸÷ÖÖÎïÀíÁ¬½ÓÐÎʽ£¨USB,serial,pc-cardµÈ£©Á¬½Óµ½PCÉϵÄbluetooth Dongle¡£
ÔÚHostÕâÒ»¶Ë£ºapplication,SDP,L2capµÈÐÒé ......
Service Discovery Protocol(SDP)ÌṩһÖÖÄÜÁ¦£¬ÈÃÓ¦ÓóÌÐòÓз½·¨·¢ÏÖÄÄÖÖ·þÎñ¿ÉÓÃÒÔ¼°ÕâÖÖ·þÎñµÄÌØÐÔ¡£
·þÎñ·¢ÏÖÐÒé(SDP»òBluetooth SDP)ÔÚÀ¶ÑÀÐÒéÕ»ÖжÔÀ¶ÑÀ»·¾³ÖеÄÓ¦ÓóÌÐòÓÐÌØÊâµÄº¬Ò⣬·¢ÏÖÄĸö·þÎñÊÇ¿ÉÓõĺÍÈ·¶¨ÕâЩ¿ÉÓ÷þÎñµÄÌØÕ÷¡£SDP¶¨ÒåÁËbluetooth client·¢ÏÖ¿ÉÓÃbluetooth server·þÎñºÍËüÃǵÄÌØÕ÷µÄ·½·¨¡£ ......
ÔÚÉÏÒ»²¿·ÖÌáµ½¹ýÁË£¬vivi×÷Ϊbootloader£¬ÏòÄں˴«µÝÆô¶¯²ÎÊýÊÇÆä±¾Ö°¹¤×÷Ö®Ò»¡£Òª°ÑÕâ¸öÇé¾°·ÖÎöÇå³þ£¬²»½ö½öÐèÒª·ÖÎöviviµÄ²ÎÊý»ú ÖÆ£¬¶øÇÒÒª·ÖÎöLinux kernelµÄ½ÓÊÕ»úÖÆ¡£ÒòΪÕâÊÇÒ»¸ö¼òµ¥µÄͨÐŹý³Ì£¬±ÈÆð±¾¿ÆËùѧϰµÄTCP/IPÀ´¼òµ¥µÄ¶à£¬µ«ÊÇÒòΪ¼òµ¥£¬ËùÒÔÔÚÐÒéÉϲ¢²»¹æ·¶£¬Àí½âÉÏ·´¶ø²»Èç TCP/IPÐÒé¡£ÏÂÃæ¾Í·ÖΪÁ½ ......
£¨ËùÓеÄ#²»ÊÇÒªÊäÈëµÄÃüÁÊǶÔĿ¼µÄÊ¡ÂÔ£¬Îļþ¼ÐÒªºÍ¶ÔÓ¦µÄĿ¼Ïàͬ Èç ÄãµÄÎļþ¼Ð·ÅÔÚÁËdowload Ï£¬¾ÍÒª»Øµ½dowloadĿ¼Ï£¬Ò»°ãÎļþ¼ÐµÄÃüÃû²»ÒªÓúºÓ
¶ÔÓÚ¸Õ¸Õ½Ó´¥LinuxµÄÈËÀ´Ëµ£¬Ò»¶¨»á¸øLinuxÏÂÒ»´ó¶Ñ¸÷ʽ¸÷ÑùµÄÎļþÃû¸ø¸ãÔΡ£±ð
¸ö²»Ëµ£¬µ¥µ¥¾ÍѹËõÎļþΪÀý£¬ÎÒÃÇÖªµÀÔÚWindowsÏÂ×î³£¼ûµÄѹËõÎļþ¾ÍÖ ......