Linux PROCÎļþϵͳÏêϸ½éÉÜ
procÎļþϵͳÊÇÒ»¸öαÎļþϵͳ£¬ËüÖ»´æÔÚÄÚ´æµ±ÖУ¬¶ø²»Õ¼ÓÃÍâ´æ¿Õ¼ä¡£ËüÒÔÎļþϵͳµÄ·½Ê½Îª·ÃÎÊϵͳÄÚºËÊý¾ÝµÄ²Ù×÷Ìṩ½Ó¿Ú¡£Óû§ºÍÓ¦ÓóÌÐò¿ÉÒÔͨ¹ýprocµÃµ½ÏµÍ³µÄÐÅÏ¢£¬²¢¿ÉÒԸıäÄں˵ÄijЩ²ÎÊý¡£ÓÉÓÚϵͳµÄÐÅÏ¢£¬Èç½ø³Ì£¬ÊǶ¯Ì¬¸Ä±äµÄ£¬ËùÒÔÓû§»òÓ¦ÓóÌÐò¶ÁÈ¡procÎļþʱ£¬procÎļþϵͳÊǶ¯Ì¬´ÓϵͳÄں˶Á³öËùÐèÐÅÏ¢²¢Ìá½»µÄ¡£ËüµÄĿ¼½á¹¹ÈçÏ£º
Ŀ¼Ãû³Æ Ŀ¼ÄÚÈÝ
apm ¸ß¼¶µçÔ´¹ÜÀíÐÅÏ¢
cmdline ÄÚºËÃüÁîÐÐ
Cpuinfo ¹ØÓÚCpuÐÅÏ¢
Devices ¿ÉÒÔÓõ½µÄÉ豸£¨¿éÉ豸/×Ö·ûÉ豸£©
Dma ʹÓõÄDMAͨµÀ
Filesystems Ö§³ÖµÄÎļþϵͳ
Interrupts ÖжϵÄʹÓÃ
Ioports I/O¶Ë¿ÚµÄʹÓÃ
Kcore Äں˺ËÐÄÓ¡Ïó
Kmsg ÄÚºËÏûÏ¢
Ksyms Äں˷ûºÅ±í
Loadavg ¸ºÔؾùºâ
Locks ÄÚºËËø
Meminfo ÄÚ´æÐÅÏ¢
Misc ÔÓÏî
Modules ¼ÓÔØÄ£¿éÁбí
Mounts ¼ÓÔØµÄÎļþϵͳ
Partitions ϵͳʶ±ðµÄ·ÖÇø±í
Rtc ʵʱʱÖÓ
Slabinfo Slab³ØÐÅÏ¢
Stat È«ÃæÍ³¼Æ×´Ì¬±í
Swaps ¶Ô»»¿Õ¼äµÄÀûÓÃÇé¿ö
Version Äں˰汾
Uptime ϵͳÕý³£ÔËÐÐʱ¼ä
²¢²»ÊÇËùÓÐÕâЩĿ¼ÔÚÄãµÄϵͳÖж¼ÓУ¬ÕâÈ¡¾öÓÚÄãµÄÄÚºËÅäÖúÍ×°ÔØµÄÄ£¿é¡£ÁíÍ⣬ÔÚ/procÏ»¹ÓÐÈý¸öºÜÖØÒªµÄĿ¼£ºnet£¬scsiºÍsys¡£ SysĿ¼ÊÇ¿ÉдµÄ£¬¿ÉÒÔͨ¹ýËüÀ´·ÃÎÊ»òÐÞ¸ÄÄں˵IJÎÊý£¨¼ûÏÂÒ»²¿·Ö£©£¬¶ønetºÍscsiÔòÒÀÀµÓÚÄÚºËÅäÖá£ÀýÈ磬Èç¹ûϵͳ²»Ö§³Öscsi£¬Ôòscsi Ŀ¼²»´æÔÚ¡£
³ýÁËÒÔÉϽéÉܵÄÕâЩ£¬»¹ÓеÄÊÇһЩÒÔÊý×ÖÃüÃûµÄĿ¼£¬ËüÃÇÊǽø³ÌĿ¼¡£ÏµÍ³Öе±Ç°ÔËÐеÄÿһ¸ö½ø³Ì¶¼ÓжÔÓ¦µÄÒ»¸öĿ¼ÔÚ/procÏ£¬ÒÔ½ø³ÌµÄ PIDºÅΪĿ¼Ãû£¬ËüÃÇÊǶÁÈ¡½ø³ÌÐÅÏ¢µÄ½Ó¿Ú¡£¶øselfĿ¼ÔòÊǶÁÈ¡½ø³Ì±¾ÉíµÄÐÅÏ¢½Ó¿Ú£¬ÊÇÒ»¸ölink¡£ProcÎļþϵͳµÄÃû×Ö¾ÍÊÇÓÉÖ®¶øÆð¡£Ã¿¸ö½ø³ÌĿ¼µÄ½á¹¹ÈçÏ£º
Ŀ¼Ãû³Æ Ŀ¼ÄÚÈÝ
Cmdline ÃüÁîÐвÎÊý
Environ »·¾³±äÁ¿Öµ
Fd Ò»¸ö°üº¬ËùÓÐÎļþÃèÊö·ûµÄĿ¼
Mem ½ø³ÌµÄÄÚ´æ±»ÀûÓÃÇé¿ö
Stat ½ø³Ì״̬
Status ½ø³Ìµ±Ç°×´Ì¬£¬ÒԿɶÁµÄ·½Ê½ÏÔʾ³öÀ´
Cwd µ±Ç°¹¤×÷Ŀ¼µÄÁ´½Ó
Exe Ö¸Ïò¸Ã½ø³ÌµÄÖ´ÐÐÃüÁîÎļþ
Maps ÄÚ´æÓ³Ïó
Statm ½ø³ÌÄÚ´æ×´Ì¬ÐÅÏ¢
Root Á´½Ó´Ë½ø³ÌµÄrootĿ¼
Óû§Èç¹ûÒª²é¿´ÏµÍ³ÐÅÏ¢£¬¿ÉÒÔÓÃcatÃüÁî¡£ÀýÈ磺# cat /proc/interrupts ¡£Óû§»¹¿ÉÒÔʵÏÖÐÞ¸ÄÄں˲ÎÊý£¬ÔÚ/procÎļþϵͳÖÐÓÐÒ»¸öÓÐȤµÄĿ¼£º/proc/sys¡£Ëü²»½öÌṩÁËÄÚºËÐÅÏ¢£¬¶øÇÒ¿ÉÒÔͨ¹ýËüÐÞ¸ÄÄں˲ÎÊý£¬À´ÓÅ»¯ÄãµÄϵͳ¡£µ«Ê
Ïà¹ØÎĵµ£º
¿Í»§¶ËµÄÁ¬½ÓµÄÖ÷Òª²½ÖèÓгõʼ»¯Ì×½Ó×Ö(socket)£¬Á¬½Ó·þÎñ¶Ë(connect)£¬½ÓÊÕ/·¢ËÍ(send/recv)£¬¹Ø±Õ(close)µÈ¡£
·þÎñ¶ËµÄÁ¬½ÓµÄÖ÷Òª²½ÖèÓгõʼ»¯Ì×½Ó×Ö(socket)£¬°î¶¨(bind)£¬¼àÌý(listen)£¬½ÓÊÕ/·¢ËÍ(send/recv)£¬¹Ø±Õ(close)µÈ¡£
ÓÉÓÚÔÚLinuxÖÐËùÓÐÉ豸¶¼¿ÉÒÔ¿´×÷ ......
1£® ÅäÖÃϵͳµÄ»ù±¾½á¹¹
LinuxÄں˵ÄÅäÖÃϵͳÓÉÈý¸ö²¿·Ö×é³É£¬·Ö±ðÊÇ£º
Makefile£º·Ö²¼ÔÚ Linux ÄÚºËÔ´´úÂëÖÐµÄ Makefile£¬¶¨Òå Linux Äں˵ıàÒë¹æÔò£»
ÅäÖÃÎļþ£¨config.in£©£º¸øÓû§ÌṩÅäÖÃÑ¡ÔñµÄ¹¦ÄÜ£»
ÅäÖù¤¾ß£º°üÀ¨ÅäÖÃÃüÁî½âÊÍÆ÷£¨¶ÔÅäÖýű¾ÖÐʹÓõÄÅäÖÃÃüÁî½øÐнâÊÍ£©ºÍÅäÖÃÓû§½çÃæ£¨Ìṩ»ùÓÚ×Ö·û½çÃæ¡¢» ......
1²Ù×÷ϵͳµÄÆô¶¯ºÍ²Ù×÷ϵͳµÄÒýµ¼³ÌÐòµÄ±àд
1.linux
0.01ÖеÄÒýµ¼»ã±à³ÌÐòµÄ½âÊÍ
µ±PC»ú´ò¿ªµçÔ´ºó£¬80x86½á¹¹×Ô¶¯µÄ½øÈëʵʩģʽ¡£
--------------------------------------------------------------------------------------------
ËùνµÄʵʱģʽÊÇÖ¸µÄcpuÆô¶¯Ê±ºòµÄģʽ£¬Õâʱºò¾ÍÏ൱ÓÚÒ»¸öËٶȳ¬¿ìµÄ80 ......
http://www.linuxgraphics.cn/android/index.html
http://blog.chinaunix.net/u2/85805/
http://blog.csdn.net/stevenliyong/category/578556.aspx
http://blog.csdn.net/cuijpus/archive/2008/06/15/2549803.aspx
http://dbus.freedesktop.org/doc/dbus-tutorial.html#glib-client
http://www.ibm.com/developerworks ......