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
Ïà¹ØÎĵµ£º
¿´LDD3ÖÐÉ豸ģÐÍÒ»Õ£¬¾õµÃ˼άÓÐЩ»ìÂÒ¡£ÕâÀï´ÓÕûÌåµÄ½Ç¶ÈÀ´ÀíÀí˼·¡£
±¾ÎÄ´ÓËĸö·½ÃæÀ´×ܽáһЩÄÚÈÝ£º
1.µ×²ãÊý¾Ý½á¹¹£ºkobject,kset.
2.linuxÉ豸ģÐͲã´Î¹ØÏµ£ºbus_type,device,device_driver.
3.¼¯³É£ºPCIÉ豸Çý¶¯Ä£ÐÍʵÀý¼°É豸£¬É豸Çý¶¯×¢²áÔ´ÂëµÄ¼òµ¥·ÖÎö.
4.ÃæÏò¶ÔÏóµÄ˼ÏëÔÚlinuxÉ豸ģÐÍÖеÄÓ¦Ó÷ÖÎö.
......
ÔÚLinuxÏ¿´µçÊÓ
ʱ¼ä£º2009-12-09 13:37:00 À´Ô´£ºÍøÂç ×÷ÕߣºÐ¡Â¬
¡¡¡¡³¤ÆÚÒÔÀ´£¬ÔÚLinux²Ù×÷ϵͳÏÂʹÓõçÊÓ¿¨ÊÇÒ»¼þ±È½ÏÂé·³µÄÊ£¬ÕâÊÇÒòΪ¸÷¼ÒµçÊÓ¿¨Éú²ú³§É̶¼Ã»ÓÐÌṩ¹Ù·½µÄLinuxÇý¶¯£¬Ö»ÓÐWindowsϵÄWDMÇý¶¯¡£
¡¡¡¡LinuxϵĵçÊÓ¿¨Çý¶¯£¬Ò»Ö±ÓÉlinux.bytesex.orgµÄLinux°®ºÃÕ߸ºÔ𿪷¢¡£¸ÃÇý¶¯ÓÐÁ½ ......
List_Head
²Ù×÷ϵͳÄں˾³£ÐèҪά»¤Êý¾Ý½á¹¹¡£ÄÚºËÓбê×¼µÄÑ»·Á´±í¡¢Ë«ÏòÁ´±íµÄʵÏÖ¡£ÔÚ<Linux/list.h>ÎļþÖж¨ÒåÁËÒ»¸ölist_headÀàÐͼòµ¥½á¹¹£º
struct list_head {
struct list_head *next, *prev;
};
ͨÓÃÁ´±íµÄ³£ÓÃÓÃ;Êǽ«Ä³Ò»¸öÊý¾Ý½á¹¹±¾Éí´®³ÉÁ´±í£¬»ò½«Ä³Ð©Á´±íÓëÒ»¸öÊý¾Ý½á¹ ......
ÔÚLinux 2.6ÄÚºËÖУ¬devfs±»ÈÏΪÊǹýʱµÄ·½·¨£¬²¢×îÖÕ±»Åׯú£¬udevÈ¡´úÁËËü¡£DevfsµÄÒ»¸öºÜÖØÒªµÄÌØµã¾ÍÊÇ¿ÉÒÔ¶¯Ì¬´´½¨É豸½áµã¡£ÄÇÎÒÃÇÏÖÔÚÈçºÎͨ¹ýudevºÍsysÎļþϵͳ¶¯Ì¬´´½¨É豸½áµãÄØ£¿
ÓÃudevÔÚ/dev/϶¯Ì¬Éú³ÉÉ豸Îļþ£¬ÕâÑùÓû§¾Í²»ÓÃÊÖ¹¤µ÷ÓÃmknodÁË¡£
ÀûÓõÄkernel API£º
&nb ......
linuxÍøÂçÁ¬½ÓÅäÖÃͨ¹ýÃüÁîifconfigÀ´Íê³É£¬Ò²¾ÍÊÇinterface configuration¡£
£¡£¡ÓÑÇéÌáÐÑ£ºÏÂÃæÓõÄÃüÁîÓÐЩÐèÒªrootȨÏÞ
²é¿´ÍøÂçÁ¬½Ó
ifconfig
eth0 Link encap:ÒÔÌ«Íø Ó²¼þµØÖ· 00:e0:61:02:af:ba
&n ......