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

linux 2.6Ô´´úÂëÇé¾°·ÖÎö±Ê¼ÇÖ®½ø³Ì5

µÈ´ý¶ÓÁÐÔÚÄÚºËÖкܶàÓÃ;£¬ÓÈÆäÓÃÔÚÖжϴ¦Àí¡¢½ø³Ìͬ²½¼°¶¨Ê±¡£µÈ´ý¶ÓÁÐʵÏÖÁËÔÚʼþÉϵÄÌõ¼þµÈ´ý£ºÏ£ÍûµÈ´ýÌØ¶¨Ê¼þµÄ½ø³Ì°Ñ×Ô¼º·Å½øºÏÊʵĵȴý¶ÓÁУ¬²¢·ÅÆú¿ØÖÆÈ¨¡£Òò´Ë£¬µÈ´ý¶ÓÁбíʾһ×é˯ÃߵĽø³Ì£¬µ±Ä³Ò»Ìõ¼þ±äÎªÕæÊ±£¬ÓÉÄں˻½ÐÑËüÃÇ¡£
µÈ´ý¶ÓÁÐÓÉË«ÏòÁ´±íʵÏÖ£¬ÆäÔªËØ°üÀ¨Ö¸Ïò½ø³ÌÃèÊö·ûµÄÖ¸Õ롣ÿ¸ö¶ÓÁж¼ÓÐÒ»¸öµÈ´ý¶ÓÁÐÍ·£¬µÈ´ý¶ÓÁÐÍ·ÊÇÒ»¸öÀàÐÍΪwait_queue_head_tµÄÊý¾Ý½á¹¹¡£
struct __wait_queue_head {
        spinlock_t lock;
        struct list_head task_list;
};
typedef struct __wait_queue_head wait_queue_head_t;
µÈ´ý¶ÓÁÐÓÉÖжϴ¦Àí³ÌÐòºÍÖ÷ÒªÄں˺¯ÊýÐ޸ġ£Í¬²½ÊÇͨ¹ýµÈ´ý¶ÓÁÐÍ·ÖеÄlock×ÔÐýËø´ïµ½µÄ£¬task_list×Ö¶ÎÊǵȴý½ø³ÌÁ´±íµÄÍ·¡£
µÈ´ý¶ÓÁÐÁ´±íÖеÄÔªËØÀàÐÍΪwait_queue_t:
struct __wait_queue {
        unsigned int flags;
#define WQ_FLAG_EXCLUSIVE       0x01
        struct task_struct * task;
        wait_queue_func_t func;
        struct list_head task_list;
};
ÿ¸öÔªËØ´ú±íÒ»¸ö˯Ãß½ø³Ì£¬¸Ã½ø³ÌµÈ´ýijһʼþµÄ·¢Éú£¬ËüµÄÃèÊö·ûµØÖ··ÅÔÚtask×Ö¶ÎÖС£task_list×Ö¶ÎÖаüº¬µÄÊÇÖ¸Õ룬ÓÉÕâ¸öÖ¸Õë°ÑÒ»¸öÔªËØÁ¬½Óµ½µÈ´ýÏàͬʱ¼äµÄ½ø³ÌÁ´±íÖС£
ÓÐÁ½ÖÖ˯Ãߣº»¥³â½ø³Ì£¨µÈ´ý¶ÓÁÐÔªËØµÄflags×Ö¶ÎΪ1£©ÓÉÄÚºËÓÐÑ¡ÔñµØ»½ÐÑ£¬¶ø·Ç»¥³â½ø³Ì£¨flagsÊýֵΪ1£©×ÜÊÇÓÉÄÚºËÔÚʼþ·¢Éúʱ»½ÐÑ¡£
#define __WAIT_QUEUE_HEAD_INITIALIZER(name) {                           \
        .lock           = SPIN_LOCK_UNLOCKED,                           \
        .task_list      = { &(name)


Ïà¹ØÎĵµ£º

ʵս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±à³ÌʵÀý

ÀýÒ»£º·¢ËÍ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 ......

linux svnÃüÁî´óÈ«


1¡¢½«Îļþcheckoutµ½±¾µØÄ¿Â¼
svn checkout path£¨pathÊÇ·þÎñÆ÷ÉϵÄĿ¼£©
ÀýÈ磺svn checkout svn://192.168.1.1/pro/domain
¼òд£ºsvn co
2¡¢Íù°æ±¾¿âÖÐÌí¼ÓеÄÎļþ
svn add file
ÀýÈ磺svn add test.php(Ìí¼Ótest.php)
svn add *.php(Ìí¼Óµ±Ç°Ä¿Â¼ÏÂËùÓеÄphpÎÄ ......

LinuxÊ®´óÃâ·ÑÊÓÆµ±à¼­Èí¼þ´ó·ÅËÍ


¡¡¡¡ÔÚLinuxÕóÓªÀºóÆðÖ®ÐãUbuntu Linuxµ±ÊôÆäÖеÄٮٮÕß¡£ÔÚUbuntu LinuxÖÐȱʡ°²×°µÄÓ¦ÓóÌÐòÖ÷Òª°üÀ¨ÁË×ÀÃæ»·¾³GNOME¡¢»æÍ¼³ÌÐòGIMP¡¢¼´Ê±Í¨Ñ¶¹¤¾ßPidgin¡¢°ì¹«Ì×¼þOpenOffice.org¡¢Ã½Ìå²¥·ÅÆ÷Totem¡¢ÒôÀÖ²¥·ÅÆ÷RhythmboxÒÔ¼°ÍøÒ³ä¯ÀÀÆ÷FirefoxµÈ¡£ÒªÖ´ÐÐÊÓÆµ±à¼­¡¢BTÏÂÔØºÍ3DͼÐÎÉè¼ÆµÈÈÎÎñÍùÍùÐèÒª½èÖúÓÚµÚÈý·½Èí¼ ......

ÓÐȤµÄlinuxÃüÁEnglish£©

Some humorous things to do to a UNIX system:
from the csh (c shell):
 
% make love
Make: Don't know how to make love. Stop.
 
% got a light?
No match.
 
% sleep with me
bad character
 
% man: Why did you get a divorce?
man:: Too many arguments.
 
% rm God
rm: ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ