LinuxÄÚºË Ñ§Ï°±Ê¼Ç1
Ò». Linuxϵͳ¸ÅÊö
1. Ó²Á´½ÓºÍÈíÁ´½Ó
Ó²Á´½ÓÏÞÖÆÓÚͬһ¸öÎļþϵͳÄÚ²¿£¬ÇÒ²»ÄܸøÄ¿Â¼´´½¨Ó²Á´½Ó
ÈíÁ´½ÓʵÏÖ¡£ Èç ln -s f1 f2£¬ ÃüÁîÖ´ÐÐʱ£¬ÏµÍ³´´½¨Ò»¸öеÄÈíÁ´½Ó£¬²¢°Ñ·¾¶Ãûf1дÈë¸ÃÁ´½Ó¡£È»ºóÔÚºÏÊʵÄĿ¼ÖвåÈëÒ»¸öеÄĿ¼Ï°üº¬Â·¾¶f2ÖеÄ×îºóÃû³Æ¡£ÒÔÕâÖÖ·½Ê½£¬ÈκηÃÎÊf2µÄÒýÓö¼¿ÉÒÔ×Ô¶¯±»×ª»»Îª¶Ôf1µÄÒýÓá£
2. Õë¶Ô¿ÉÖ´ÐÐÎļþµÄÈýÖÖ¸½¼ÓȨÏÞ±ê¼Ç suid, sgid, sticky
suid (Set User ID): ½ø³ÌÖ´ÐиÃÎļþʱ²»Ê¹Óýø³ÌµÄUID£¬¶øÊÇ»ñµÃ¸ÃÎļþµÄUID
sgid (Set Group ID): ͬÉÏ£¬Ö»ÊÇΪGID
sticky: פÁôÄڴ棬ÒÑ·ÏÆú
3. ÎļþϵͳµÄ·ÃÎÊ
open()ϵͳµ÷Óô´½¨Ò»¸ö´ò¿ªÎļþ¶ÔÏ󣬲¢·µ»Ø¶ÔÓ¦µÄ±êʶ·û¡£
Ò»¸ö´ò¿ªÎļþ¶ÔÏó°üÀ¨Ò»Ð©Îļþ²Ù×÷µÄÊý¾Ý½á¹¹£¨Äڴ滺³åÖ¸Õ룬OffsetÓòµÈ£©ºÍ¸ù¾Ý·ÃÎÊģʽÉ趨µÄ±»ÔÊÐí·ÃÎʵÄÄں˺¯ÊýÖ¸Õë
ͬһ¸ö´ò¿ªÎļþ¶ÔÏóÒ²ÐíÓжà¸ö±êʶ·û£¬Èçstderr, stdout .etc
¶à¸ö½ø³Ì´ò¿ªÍ¬Ò»¸öÎļþʱ£¬Îļþϵͳ¸øÃ¿¸ö½ø³Ì´´½¨Ò»¸ö´ò¿ªÎļþ¶ÔÏóºÍµ¥¶ÀµÄ±êʶ·û£¬µ«²»ÌṩÈκÎͬ²½»úÖÆ¡£µ«½ø³Ì±¾Éí¿ÉÒÔʹÓÃflock()µÈϵͳµ÷ÓöÔÕû¸ö»ò²¿·ÖÎļþÄÚÈÝʵʩͬ²½¡£
ÖØÃüÃû»òɾ³ýÎļþʱ£¬½ø³Ì²»ÐèÒª´ò¿ªËü¡£ÎļþϵͳֻÊÇÐÞ¸ÄĿ¼ÄÚÈÝ¡£È磺 rename(old, new)£¬ ¸Ä±äÁËÎļþÁ´½ÓµÄÃû×Ö£» unlink(pathname)¼õÉÙÁËÎļþÁ´½ÓÊý£¬É¾³ý¶ÔÓ¦µÄĿ¼Ïµ±Á´½ÓÊýΪ0ʱ£¬Îļþ²ÅÕæÕý±»É¾³ý¡£
¶þ. Äں˸ÅÊö
1. LinuxÄÚºËÖ»ÀûÓÃÁËCPUµÄÄÚºË̬ºÍÓû§Ì¬£¬Çл»·½Ê½ÓÐϵͳµ÷Óô¦Àí£¬µ÷¶ÈºÍÖжϴ¦ÀíµÈ
2. ½ø³ÌÃèÊö·ûµÄÄÚÈݰüÀ¨
³ÌÐò¼ÆÊýÆ÷(PC)ºÍÕ»Ö¸Õë(SP)¼Ä´æÆ÷
ͨÓüĴæÆ÷
¸¡µã¼Ä´æÆ÷
°üº¬CPU״̬ÐÅÏ¢µÄCPU¿ØÖƼĴæÆ÷ (Processor status word, PSW)
ÓÃÀ´¸ú×Ù½ø³Ì¶ÔRAM·ÃÎʵÄÄÚ´æ¹ÜÀí¼Ä´æÆ÷
3. ½ø³ÌµØÖ·¿Õ¼ä
½ø³ÌÔËÐÐÔÚËü˽ÓеĵØÖ·¿Õ¼ä£¬Óû§Ì¬Ï°üº¬Ë½ÓÐÕ»£¬Êý¾ÝºÍ´úÂëÇø£¬ÄÚºË̬Ï·ÃÎÊÄں˵ÄÊý¾ÝºÍ´úÂëÇø£¬µ«Ê¹ÓöÀÁ¢µÄ˽ÓÐÄÚºË̬¶ÑÕ»£¬ÒÔ±ãµ÷¶È¡£
ÄÚºËÓÐʱ»á×Ô¶¯ÔÚ½ø³Ì¼ä¹²ÏíÄڴ棬ÈçÒ»¶Î´úÂëͬʱ±»¼¸¸ö½ø³ÌʹÓÃʱ£¬µ±È»£¬Ö»ÊÇÖ¸ÁÊý¾Ý²»±»¹²Ïí¡£
½ø³Ì¼ä¿ÉÒÔʹÓù²ÏíÄÚ´æ½øÐÐͨÐÅ£¬Èçmmap()µÈ¡£
4. ½ø³Ìͬ²½
ÐźÅÁ¿ (Semaphore)
ͨ³£°üº¬
1¸öÕûÊý±äÁ¿
Ò»¸öµÈ´ý½ø³ÌµÄÁ´±í
Á½¸öÔ×Ó·½·¨down()ºÍup()
ÕûÊý±äÁ¿µÄ³õʼֵΪ1£¬ down()·½·¨¶ÔÕûÊý±äÁ¿¼õ1£¬Èç¹ûСÓÚ0£¬°Ñµ÷Óýø³Ì¼ÓÈëµÈ´ýÁÐ±í£¬È»ºóµ÷Óõ÷¶È³ÌÐòÒÔ×èÈû¸Ã½ø³Ì¡£
up()·½·¨¼Ó1£
Ïà¹ØÎĵµ£º
£¨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 ......
±¾ÎÄ×ªÔØÓÚ£º http://hi.baidu.com/peruke/blog/item/b8de06ec6a04583b27979132.html
tzset
#incude <time.h
>
void tzset(void);
ÉèÖÃʱ¼ä»·¾³±äÁ¿¡£
˵Ã÷
tzset()º¯ÊýʹÓû·¾³±äÁ¿TZµÄµ±Ç°ÉèÖðÑÖµ¸³¸øÈý¸öÈ«¾Ö±äÁ¿:daylight,timezoneºÍtzname¡£
ÕâЩ±äÁ¿ÓÉftimeºÍlocaltimeº¯ÊýʹÓÃУÕý¸ñÁÖÍþÖÎ(UTC ......
Ò»¡¢¸ÅÊö
̸µ½ÔÚlinuxϵͳϱàдI2CÇý¶¯£¬Ä¿Ç°Ö÷ÒªÓÐÁ½ÖÖ·½Ê½£¬Ò»ÖÖÊǰÑI2CÉ豸µ±×÷Ò»¸öÆÕͨµÄ×Ö·ûÉ豸À´´¦Àí£¬ÁíÒ»ÖÖÊÇÀûÓÃlinux I2CÇý¶¯Ìåϵ½á¹¹À´Íê³É¡£ÏÂÃæ±È½ÏÏÂÕâÁ½ÖÖÇý¶¯¡£
µÚÒ»ÖÖ·½·¨µÄºÃ´¦£¨¶ÔÓ¦µÚ¶þÖÖ·½·¨µÄÁÓÊÆ£©ÓУº
¡ñ ˼·±È½ÏÖ±½Ó£¬²»ÐèÒª ......
±¾ÎÄ×ªÔØÓÚ£º http://hi.baidu.com/peruke/blog/item/7f1f34580a0eb6d89c82043b.html
LinuxÊÇÒ»¸ö¶àÓû§µÄ²Ù×÷ϵͳ¡£Ã¿¸öÓû§µÇ¼ϵͳºó£¬¶¼»áÓÐÒ»¸öרÓõÄÔËÐл·¾³¡£Í¨³£Ã¿¸öÓû§Ä¬ÈϵĻ·¾³¶¼ÊÇÏàͬµÄ£¬Õâ¸öĬÈÏ»·¾³Êµ¼ÊÉϾÍÊÇÒ»×é»·¾³±äÁ¿µÄ¶¨Òå¡£Óû§¿ÉÒÔ¶Ô×Ô¼ºµÄÔËÐл·¾³½øÐж¨ÖÆ£¬Æä·½·¨¾ÍÊÇÐÞ¸ÄÏàÓ¦µÄϵͳ»·¾³ ......