linuxϵͳµ÷ÓÃ
±¾ÎÄÁгöÁ˴󲿷ֳ£¼ûµÄLinuxϵͳµ÷Ó㬲¢¸½ÓмòÒªÖÐÎÄ˵Ã÷¡£
ÒÔÏÂÊÇLinuxϵͳµ÷ÓõÄÒ»¸öÁÐ±í£¬°üº¬Á˴󲿷ֳ£ÓÃϵͳµ÷ÓúÍÓÉϵͳµ÷ÓÃÅÉÉú³öµÄµÄº¯Êý¡£Õâ¿ÉÄÜÊÇÄãÔÚ»¥ÁªÍøÉÏËùÄÜ¿´µ½µÄΨһһƪÖÐÎÄ×¢Ê͵ÄLinuxϵͳµ÷ÓÃÁÐ±í£¬¼´Ê¹ÊǼòµ¥µÄ×ÖĸÐòÓ¢ÎÄÁÐ±í£¬ÄÜ×öµ½ÕâôÍêȫҲÊǺܺ±¼ûµÄ¡£
°´ÕÕ¹ßÀý£¬Õâ¸öÁбíÒÔman
pagesµÚ2½Ú£¬¼´ÏµÍ³µ÷ÓýÚΪÀ¶±¾¡£°´ÕÕ±ÊÕßµÄÀí½â£¬¶ÔÆä×÷ÁË´óÖµķÖÀ࣬ͬʱҲ×÷ÁËһЩССµÄÐ޸ģ¬É¾È¥Á˼¸¸ö½ö¹©ÄÚºËʹÓ㬲»ÔÊÐíÓû§µ÷ÓõÄϵͳµ÷Ó㬶Ըö±ð±¾ÈËÉÔ¾õ²»Í׵ĵط½×÷ÁËһЩСµÄÐ޸쬲¢¶ÔËùÓÐÁгöµÄϵͳµ÷Óø½ÉϼòҪעÊÍ¡£
ÆäÖÐÓÐһЩº¯ÊýµÄ×÷ÓÃÍêÈ«Ïàͬ£¬Ö»ÊDzÎÊý²»Í¬¡££¨¿ÉÄܺܶàÊìϤC++ÅóÓÑÂíÉϾÍÄÜÁªÏëÆðº¯ÊýÖØÔØ£¬µ«ÊDZðÍüÁËLinuxºËÐÄÊÇÓÃCÓïÑÔдµÄ£¬ËùÒÔÖ»ÄÜÈ¡³É
²»Í¬µÄº¯ÊýÃû£©¡£»¹ÓÐһЩº¯ÊýÒѾ¹ýʱ£¬±»ÐµĸüºÃµÄº¯ÊýËù´úÌæÁË£¨gccÔÚÁ´½ÓÕâЩº¯Êýʱ»á·¢³ö¾¯¸æ£©£¬µ«ÒòΪ¼æÈݵÄÔÒò»¹±£Áô×Å£¬ÕâЩº¯ÊýÎÒ»áÔÚÇ°Ãæ
±êÉÏ“*”ºÅÒÔÊ¾Çø±ð¡£
Ò»¡¢½ø³Ì¿ØÖÆ£º
fork
´´½¨Ò»¸öнø³Ì
clone
°´Ö¸¶¨Ìõ¼þ´´½¨×Ó½ø³Ì
execve
ÔËÐпÉÖ´ÐÐÎļþ
exit
ÖÐÖ¹½ø³Ì
_exit
Á¢¼´ÖÐÖ¹µ±Ç°½ø³Ì
getdtablesize
½ø³ÌËùÄÜ´ò¿ªµÄ×î´óÎļþÊý
getpgid
»ñȡָ¶¨½ø³Ì×é±êʶºÅ
setpgid
ÉèÖÃÖ¸¶¨½ø³Ì×é±êÖ¾ºÅ
getpgrp
»ñÈ¡µ±Ç°½ø³Ì×é±êʶºÅ
setpgrp
ÉèÖõ±Ç°½ø³Ì×é±êÖ¾ºÅ
getpid
»ñÈ¡½ø³Ì±êʶºÅ
getppid
»ñÈ¡¸¸½ø³Ì±êʶºÅ
getpriority
»ñÈ¡µ÷¶ÈÓÅÏȼ¶
setpriority
ÉèÖõ÷¶ÈÓÅÏȼ¶
modify_ldt
¶Áд½ø³ÌµÄ±¾µØÃèÊö±í
nanosleep
ʹ½ø³Ì˯ÃßÖ¸¶¨µÄʱ¼ä
nice
¸Ä±ä·Öʱ½ø³ÌµÄÓÅÏȼ¶
pause
¹ÒÆð½ø³Ì£¬µÈ´ýÐźÅ
personality
ÉèÖýø³ÌÔËÐÐÓò
prctl
¶Ô½ø³Ì½øÐÐÌØ¶¨²Ù×÷
ptrace
½ø³Ì¸ú×Ù
sched_get_priority_max
È¡µÃ¾²Ì¬ÓÅÏȼ¶µÄÉÏÏÞ
sched_get_priority_min
È¡µÃ¾²Ì¬ÓÅÏȼ¶µÄÏÂÏÞ
sched_getparam
È¡µÃ½ø³ÌµÄµ÷¶È²ÎÊý
sched_getscheduler
È¡µÃÖ¸¶¨½ø³ÌµÄµ÷¶È²ßÂÔ
sched_rr_get_interval
È¡µÃ°´RRËã·¨µ÷¶ÈµÄʵʱ½ø³ÌµÄʱ¼äƬ³¤¶È
sched_setparam
ÉèÖýø³ÌµÄµ÷¶È²ÎÊý
sched_setscheduler
ÉèÖÃÖ¸¶¨½ø³ÌµÄµ÷¶È²ßÂԺͲÎÊý
sched_yield
½ø³ÌÖ÷¶¯Èóö´¦ÀíÆ÷,²¢½«×Ô¼ºµÈºòµ÷¶È¶ÓÁжÓβ
vfork
´´½¨Ò»¸ö×Ó½ø³Ì£¬ÒÔ¹©Ö´ÐÐгÌÐò£¬³£ÓëexecveµÈͬʱʹÓÃ
wait
µÈ´ý×Ó½ø³ÌÖÕÖ¹
wait3
²Î¼ûwait
waitpid
µÈ´ýÖ¸¶¨×Ó½ø³ÌÖÕÖ¹
wait4
²Î¼ûwaitpid
capget
»ñÈ¡½ø³ÌȨÏÞ
capset
ÉèÖýø³ÌȨÏ
Ïà¹ØÎĵµ£º
£¨L2CAPÐÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPÐÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼Á¬½Ó¿ØÖƺÍÊÊÅäÐÒé (L2CAP) ΪÉϲãÐÒéÌá¹©ÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àÐÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãÐÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ 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 Socket ѧϰ£¨Ê®£©
ÔÚÌ×½Ó¿ÚÉÏʹÓñê×¼I/O
ÔÚÇ°ÃæÕ½ڵÄÀý×Ó´úÂëÖÐÎÒÃÇÒѾʹÓÃÁËread(2)»òÊÇwrite(2)ϵͳµ÷ÓÃÔÚÌ×½Ó¿ÚÉÏÖ´ÐжÁÈ¡ºÍдÈë²Ù×÷¡£Õâ¸ö¹æÔòµÄÒ»¸öÀýÍâ¾ÍÊÇrecvfrom(2)ºÍsendto(2)º¯Êý£¬ÕâÁ½¸öº¯ÊýÓÃÀ´¶ÁдÊý¾Ý±¨¡£È»¶ø£¬Ê¹ÓÃreadºÍwritteº¯Êýµ÷ÓÃÈ´ÓÐһЩ³ÌÐòÉϵÄȱµã¡£
ÕâÒ»ÕÂÎÒÃǽ«»áÌÖÂÛÒÔÏÂÄÚÈÝ ......
Ò»¸öÓû§¡¢Ò»¸ö×é
ÎÒÃÇÀ´¿´Ò»¿´ LinuxȨÏÞºÍËùÓÐȨģÐÍ¡£ÎÒÃÇÒѾ¿´µ½Ã¿¸öÎļþÊôÓÚÒ»¸öÓû§ºÍÒ»¸ö×é¡£ÕâÕýÊÇLinux ÖÐȨÏÞÄ£Ð͵ĺËÐÄ¡£Äú¿ÉÒÔÔÚ ls -lÇåµ¥Öв鿴Óû§ºÍ×飺
$ ls -l /bin/bash
-rwxr-xr-x 1 root wheel 430540 Dec 23 18:27 /bin/bash
ÔÚÕâ¸öÌØÊâµÄʾÀýÖУ¬/bin/bash ¿ÉÖ´ÐÐÎļþÊôÓÚroot Óà ......
LinuxϵͳϵÄGcc£¨GNU C Compiler£©ÊÇGNUÍÆ³öµÄ¹¦ÄÜÇ¿´ó¡¢ÐÔÄÜÓÅÔ½µÄ¶àƽ̨±àÒëÆ÷£¬ÊÇGNUµÄ´ú±í×÷Æ·Ö®Ò»¡£gccÊÇ¿ÉÒÔÔÚ¶àÖÖÓ²ÌåÆ½Ì¨ÉϱàÒë³ö¿ÉÖ´ÐгÌÐòµÄ³¬¼¶±àÒëÆ÷£¬ÆäÖ´ÐÐЧÂÊÓëÒ»°ãµÄ±àÒëÆ÷Ïà±Èƽ¾ùЧÂÊÒª¸ß20%~30%¡£ Gcc±àÒëÆ÷Äܽ«C¡¢C++ÓïÑÔÔ´³ÌÐò¡¢»ã³Ìʽ»¯ÐòºÍÄ¿±ê³ÌÐò±àÒë¡¢Á¬½Ó³É¿ÉÖ´ÐÐÎļþ£¬Èç¹ûûÓиø³ö¿ÉÖ´ÐÐÎÄ ......