¶øÔÚÄں˵ĵ÷ÊÔºÍÐÔÄÜÓÅ»¯¹ý³ÌÖУ¬`/proc`ºÍ`/kmem`Ŀ¼°çÑÝ×ÅÖÁ¹ØÖØÒªµÄ½ÇÉ«
±¾ÎĽ«ÉîÈë̽ÌÖLinuxµÄ`/proc`Îļþϵͳ¼°ÆäÓë`/kmem`µÄ¹ØÏµ£¬½ÒʾËüÃÇÈçºÎ°ïÖú¿ª·¢Õߺ͹ÜÀíÔ±¸üºÃµØÀí½âºÍ¹ÜÀíϵͳ×ÊÔ´
Ò»¡¢`/proc`Îļþϵͳ¸ÅÊö `/proc`ÊÇÒ»¸öαÎļþϵͳ£¨pseudo-file system£©£¬ÌṩÁËÒ»¸ö·ÃÎÊÄÚºËÊý¾Ý½á¹¹µÄ½Ó¿Ú
Óû§¿ÉÒÔͨ¹ý¸ÃĿ¼²é¿´ÏµÍ³µÄ¸÷ÖÖÐÅÏ¢£¬±ÈÈç½ø³ÌÐÅÏ¢¡¢É豸ÐÅÏ¢¡¢CPUÐÅÏ¢µÈ
`/proc`Ŀ¼ÏµÄÎļþÊÇÓÉϵͳÄں˶¯Ì¬Éú³ÉµÄ£¬Óû§¿ÉÒÔËæÊ±Í¨¹ý`cat`µÈÃüÁî²é¿´ÎļþµÄÄÚÈÝ
`/proc`ÎļþϵͳµÄÿ¸ö½Úµã¶¼ÓÐÏàÓ¦µÄ`inode_operations`ºÍ`file_operations`£¬ÔÊÐíÄÚºËÔÚ¶ÁÈ¡Îļþʱ¶¯Ì¬Éú³ÉÄÚÈÝ
ÕâÒ»ÌØÐÔʹµÃ`/proc`³ÉΪÁËÒ»Öַdz£Áé»îÇÒÇ¿´óµÄϵͳ¼à¿ØºÍµ÷ÊÔ¹¤¾ß
¶þ¡¢`/proc`Ŀ¼µÄÖ÷ÒªÄÚÈÝ `/proc`Ŀ¼ÖеÄÄÚÈݷdz£·á¸»£¬º¸ÇÁËϵͳµÄ¼¸ºõËùÓз½Ãæ
ÒÔÏÂÊÇһЩÖ÷ÒªµÄÄÚÈÝ·ÖÀࣺ 1.½ø³ÌÐÅÏ¢£º - ÿ¸ö½ø³Ì¶¼ÓÐÒ»¸öÒÔÆäPIDΪÃûµÄ×ÓĿ¼£¬×ÓĿ¼Öаüº¬Á˸ýø³ÌµÄÃüÁî¡¢»·¾³±äÁ¿¡¢CPUÕ¼ÓÃʱ¼ä¡¢ÄÚ´æÓ³Éä±í¡¢ÒÑ´ò¿ªÎļþµÄÎļþºÅÒÔ¼°½ø³Ì״̬µÈÐÅÏ¢
- ÀýÈ磬`/proc/¡¾pid¡¿/maps`Îļþ°üº¬Á˽ø³ÌµÄÄÚ´æÓ³ÉäÐÅÏ¢£¬`pmap`ÃüÁîÕýÊÇͨ¹ý¶ÁÈ¡Õâ¸öÎļþÀ´ÏÔʾ½ø³ÌµÄÄÚ´æÓ³ÉäºÍ״̬ÐÅÏ¢
2.É豸ÐÅÏ¢£º -Èç`/proc/pci`ÌṩÁËϵͳµÄPCI×ÜÏßÉÏËùÓÐÉ豸µÄÇåµ¥
3.ÎļþϵͳÐÅÏ¢£º -Èç`/proc/mounts`ÁгöÁËϵͳÖÐÒѾ°²×°µÄ¸÷ÖÖÎļþϵͳÉ豸£¬`/proc/filesystems`ÁгöÁËϵͳÖÐÒѾµÇ¼ÇµÄÎļþϵͳÀàÐÍ
4.ÖжÏÐÅÏ¢£º -`/proc/interrupts`ÌṩÁËÖжÏÔ´ºÍËüÃǵÄÖжÏÏòÁ¿±àºÅµÄÇåµ¥
5.¶¯Ì¬Ä£¿éÐÅÏ¢£º -`/proc/modules`ÁгöÁËϵͳÖÐÒѾ°²×°µÄ¶¯Ì¬Ä£¿é£¬`/proc/ksyms`ÔòÁгöÁËÄÚºËÖпɰ²×°Ä£¿é¶¯Ì¬Á´½ÓµÄ·ûºÅ¼°ÆäµØÖ·
6.ÄÚ´æ·ÃÎÊÊֶΣº -Èç`/proc/kcore`ÌṩÁË·ÃÎÊÄÚºËÄÚ´æµÄÊֶΣ¬ÀàËÆÓÚÔçÆÚµÄ`/dev/mem`ºÍ`/dev/kmem`Îļþ
7.ϵͳͳ¼ÆºÍ״̬ÐÅÏ¢£º - °üº¬ÁËϵͳµÄ°æ±¾ºÅ¡¢¸÷ÖÖͳ¼ÆÐÅÏ¢µÈ
Èý¡¢`/dev/mem`ºÍ`/dev/kmem`µÄÀúÊ·Ó빦ÄÜ ÔÚÔçÆÚµÄUnixϵͳÖУ¬`/dev`Ŀ¼ÏÂÉèÖÃÁËÁ½¸öÌØÊâÎļþ£º`/dev/mem`ºÍ`/dev/kmem`
- /dev/mem£ºÍ¨¹ýÕâ¸öÎļþ¿ÉÒÔ¶ÁдϵͳµÄÕû¸öÎïÀíÄÚ´æ
ÎïÀíÄÚ´æµÄµØÖ·ÓöÁдÎļþÄÚ²¿µÄÎ»ÒÆÁ¿±íʾ
Õâ¸öÎļþͬÑùÊÊÓÃÓÚ`read`¡¢`write`¡¢`lseek`µÈ³£¹æµÄÎļþ²Ù×÷£¬ÌṩÁËÒ»¸öÔÚÄÚºËÍⲿ¶¯Ì¬µØ¶Áд°üÀ¨ÄÚºËÓ³ÏñºÍÄÚºËÖи÷¸öÊý¾Ý½á¹¹ÒÔ¼°¶ÑÕ»ÄÚÈݵÄÊÖ¶Î
- /dev/kmem£º¶ÔÓ¦ÓÚϵͳµÄÕû¸öÐé´æ¿Õ¼ä
ÕâÁ½¸öÌØÊâÎļþµÄ¹¦