LinuxÏÂc¿ª·¢ Ö® Ïß³ÌͨÐÅ
1.Linux“Ï߳̔
½ø³ÌÓëÏß³ÌÖ®¼äÊÇÓÐÇø±ðµÄ£¬²»¹ýLinuxÄÚºËÖ»ÌṩÁËÇáÁ¿½ø³ÌµÄÖ§³Ö£¬Î´ÊµÏÖÏß³ÌÄ£ÐÍ¡£LinuxÊÇÒ»ÖÖ“¶à½ø³Ìµ¥Ï߳̔µÄ²Ù×÷ϵͳ¡£Linux±¾ÉíÖ»Óнø³ÌµÄ¸ÅÄ¶øÆäËùνµÄ“Ï߳̔±¾ÖÊÉÏÔÚÄÚºËÀïÈÔÈ»Êǽø³Ì¡£
´ó¼ÒÖªµÀ£¬½ø³ÌÊÇ×ÊÔ´·ÖÅäµÄµ¥Î»£¬Í¬Ò»½ø³ÌÖеĶà¸öÏ̹߳²Ïí¸Ã½ø³ÌµÄ×ÊÔ´£¨Èç×÷Ϊ¹²ÏíÄÚ´æµÄÈ«¾Ö±äÁ¿£©¡£LinuxÖÐËùνµÄ“Ïֻ߳̔ÊÇÔÚ±»´´½¨Ê±cloneÁ˸¸½ø³ÌµÄ×ÊÔ´£¬Òò´Ëclone³öÀ´µÄ½ø³Ì±íÏÖΪ“Ï߳̔£¬ÕâÒ»µãÒ»¶¨ÒªÅªÇå³þ¡£Òò´Ë£¬Linux“Ï߳̔Õâ¸ö¸ÅÄîÖ»ÓÐÔÚ´òðºÅµÄÇé¿öϲÅÊÇ×î׼ȷµÄ¡£
ĿǰLinuxÖÐ×îÁ÷ÐеÄÏ̻߳úÖÆÎªLinuxThreads£¬Ëù²ÉÓõľÍÊÇỊ̈߳½ø³Ì“Ò»¶ÔÒ»”Ä£ÐÍ£¬µ÷¶È½»¸øºËÐÄ£¬¶øÔÚÓû§¼¶ÊµÏÖÒ»¸ö°üÀ¨ÐźŴ¦ÀíÔÚÄÚµÄÏ̹߳ÜÀí»úÖÆ¡£LinuxThreadsÓÉXavier Leroy (Xavier.Leroy@inria.fr)¸ºÔ𿪷¢Íê³É£¬²¢ÒѰó¶¨ÔÚGLIBCÖз¢ÐУ¬ËüʵÏÖÁËÒ»ÖÖBiCapitalizedÃæÏòLinuxµÄPosix 1003.1c “pthread”±ê×¼½Ó¿Ú¡£Linuxthread¿ÉÒÔÖ§³ÖIntel¡¢Alpha¡¢MIPSµÈƽ̨ÉϵĶദÀíÆ÷ϵͳ¡£
¡¡¡¡°´ÕÕPOSIX 1003.1c ±ê×¼±àдµÄ³ÌÐòÓëLinuxthread ¿âÏàÁ´½Ó¼´¿ÉÖ§³ÖLinuxƽ̨ÉϵĶàỊ̈߳¬ÔÚ³ÌÐòÖÐÐè°üº¬Í·Îļþpthread. h£¬ÔÚ±àÒëÁ´½ÓʱʹÓÃÃüÁ
gcc -D -REENTRANT -lpthread xxx. c
¡¡¡¡ÆäÖÐ-REENTRANTºêʹµÃÏà¹Ø¿âº¯Êý(Èçstdio.h¡¢errno.hÖк¯Êý) ÊÇ¿ÉÖØÈëµÄ¡¢Ḭ̈߳²È«µÄ(thread-safe)£¬-lpthreadÔòÒâζ×ÅÁ´½Ó¿âĿ¼ÏµÄlibpthread.a»òlibpthread.soÎļþ¡£Ê¹ÓÃLinuxthread¿âÐèÒª2.0ÒÔÉϰ汾µÄLinuxÄں˼°ÏàÓ¦°æ±¾µÄC¿â(libc 5.2.18¡¢libc 5.4.12¡¢libc 6)¡£
2.“Ï߳̔¿ØÖÆ
¡¡¡¡Ï̴߳´½¨
¡¡¡¡½ø³Ì±»´´½¨Ê±£¬ÏµÍ³»áΪÆä´´½¨Ò»¸öÖ÷Ị̈߳¬¶øÒªÔÚ½ø³ÌÖд´½¨ÐµÄỊ̈߳¬Ôò¿ÉÒÔµ÷ÓÃpthread_create£º
pthread_create(pthread_t *thread, const pthread_attr_t *attr, void *
(start_routine)(void*), void *arg);
¡¡¡¡start_routineΪÐÂÏ̵߳ÄÈë¿Úº¯Êý£¬argΪ´«µÝ¸østart_routineµÄ²ÎÊý¡£
¡¡¡¡Ã¿¸öÏ̶߳¼ÓÐ×Ô¼ºµÄÏß³ÌID£¬ÒÔ±ãÔÚ½ø³ÌÄÚÇø·Ö¡£Ïß³ÌIDÔÚpthread_createµ÷ÓÃʱ»Ø·µ¸ø´´½¨Ï̵߳ĵ÷ÓÃÕߣ»Ò»¸öÏß³ÌÒ²¿ÉÒÔÔÚ´´½¨ºóʹÓÃpthread_self()µ÷ÓûñÈ¡×Ô¼ºµÄÏß³ÌID£º
pthread_self (void) ;
¡¡¡¡Ïß³ÌÍ˳ö
¡¡
Ïà¹ØÎĵµ£º
extern "C"
¡¡¡¡extern "C" °üº¬Ë«Öغ¬Ò壬´Ó×ÖÃæÉϼ´¿ÉµÃµ½£ºÊ×ÏÈ£¬±»ËüÐÞÊεÄÄ¿±êÊÇ“extern”µÄ£»Æä´Î£¬±»ËüÐÞÊεÄÄ¿±êÊÇ“C”µÄ¡£ÈÃÎÒÃÇÀ´Ïêϸ½â¶ÁÕâÁ½Öغ¬Òå¡£
¡¡¡¡£¨1£© ±»extern "C"ÏÞ¶¨µÄº¯Êý»ò±äÁ¿ÊÇexternÀàÐ͵ģ»
¡¡¡¡externÊÇC/C++ÓïÑÔÖбíÃ÷º¯ÊýºÍÈ«¾Ö±äÁ¿×÷Ó÷¶Î§£¨¿É¼ûÐÔ£©µÄ¹Ø¼ü×Ö£ ......
£¨L2CAPÐÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPÐÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼Á¬½Ó¿ØÖƺÍÊÊÅäÐÒé (L2CAP) ΪÉϲãÐÒéÌá¹©ÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àÐÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãÐÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ L2CAP Ê ......
Ŀǰ£¬Linux×÷ΪǶÈëʽϵͳµÄÖ÷Á¦¾ü£¬¹ã·ºÓ¦ÓÃÓÚÏû·ÑÀàµç×Ó¡¢¹¤Òµ¿ØÖÆ¡¢¾ü¹¤µç×Ó¡¢µçÐÅ/ÍøÂç/ͨѶ¡¢º½¿Õº½Ìì¡¢Æû³µµç×Ó¡¢Ò½ÁÆÉ豸¡¢ÒÇÆ÷ÒDZíµÈÏà¹ØÐÐÒµ¡£Ëæ×ÅǶÈëʽÐÐÒµµÄѸÃÍ·¢Õ¹£¬Ç¶ÈëʽLinuxƾ½èÆäϵͳ·¢Õ¹µÄ³ÉÊì¶È¡¢Êг¡Ó¦Óõĸ߷ݶîÒ²Êܵ½¸ü¶à¹¤³ÌʦÅóÓѵÄÇàíù£¬Ô½À´Ô½¶àµÄÆóÒµºÍÑз¢»ú¹¹¶¼×ªÏòǶÈëʽLinuxµÄ¿ª·¢ºÍÑо ......
ÎÒÃÇÔÚʹÓÃlinux¹ý³ÌÖУ¬Ã¿¸öÃüÁîºó¶¼Òª¸úһЩ²ÎÊý£¬¿ÉÊǶÔÓÚ³£ÓõIJÎÊýÈç¹ûÿ´Î¶¼ÊÇÊÖ¶¯µÄÌí¼Ó¾ÍÊÇÏÔµÃÂ鷳ЩÁË¡£linux ¿ÉÄÜͨ¹ýÃüÁî±ðÃûµÄ¹¦ÄÜÀ´¼õÉÙÄãµÄÊäÈ룬ÇëÏÂÃæ²Ù×÷¾ÍÃ÷°×ÁË¡£
OS£ºredhat AS4.2
ls -l ÁгöÎļþĿ¼ÖÜÏêÐÅÏ¢
ls -hl ÁгöÎļþ´óС£¬ÒÔKΪµ¥Î»ÏÔʾ
ls -hlt ÁгöÎļþ°´Ê±¼äÅÅÐò
¶ÔÓÚÉÏÃæÈý¸öÏÔʾР......
## Á¬½Ó·ûÓë# ·û
¡¡¡¡## Á¬½Ó·ûºÅÓÉÁ½¸ö¾®ºÅ×é³É£¬Æä¹¦ÄÜÊÇÔÚ´ø²ÎÊýµÄºê¶¨ÒåÖн«Á½¸ö×Ó´®(token)Áª½ÓÆðÀ´£¬´Ó¶øÐγÉÒ»¸öеÄ×Ó´®¡£µ«Ëü²»¿ÉÒÔÊǵÚÒ»¸ö»òÕß×îºóÒ»¸ö×Ó´®¡£ËùνµÄ×Ó´®(token)¾ÍÊÇÖ¸±àÒëÆ÷Äܹ»Ê¶±ðµÄ×îСÓï·¨µ¥Ôª¡£¾ßÌåµÄ¶¨ÒåÔÚ±àÒëÔÀíÀïÓÐÏ꾡µÄ½âÊÍ£¬µ«²»ÖªµÀÒ²ÎÞËùν¡£Í¬Ê±ÖµµÃ×¢ÒâµÄÊÇ#Á¬½Ó·ûÊǰѴ«µÝ¹ý ......