Linux中/proc目錄下文件詳解


/proc文件系統下的多種文件提供的系統信息不是針對某個特定進程的,而是能夠在整個系統范圍的上下文中使用。可以使用的文件隨系統配置的變化而變化。命令procinfo能夠顯示基於其中某些文件的多種系統信息。以下詳細描述/proc下的文件。
--------------------------------------------------------------------------------
/proc/cmdline文件
這個文件給出了內核啟動的命令行。它和用於進程的cmdline項非常相似。
--------------------------------------------------------------------------------
/proc/cpuinfo文件
這個文件提供了有關系統CPU的多種信息。這些信息是從內核里對CPU的測試代碼中得到的。文件列出了CPU的普通型號(386,486,586,686等),以及能得到的更多特定信息(制造商,型號和版本)。文件還包含了以bogomips表示的處理器速度,而且如果檢測到CPU的多種特性或者bug,文件還會包含相應的標志。這個文件的格式為:文件由多行構成,每行包括一個域名稱,一個冒號和一個值。
--------------------------------------------------------------------------------
/proc/devices文件
這個文件列出字符和塊設備的主設備號,以及分配到這些設備號的設備名稱。
--------------------------------------------------------------------------------
/proc/dma文件
這個文件列出由驅動程序保留的DMA通道和保留它們的驅動程序名稱。casade項供用於把次DMA控制器從主控制器分出的DMA行所使用;這一行不能用於其它用途。
--------------------------------------------------------------------------------
/proc/filesystems文件
這個文件列出可供使用的文件系統類型,一種類型一行。雖然它們通常是編入內核的文件系統類型,但該文件還可以包含可加載的內核模塊加入的其它文件系統類型。
--------------------------------------------------------------------------------
/proc/interrupts文件
這個文件的每一行都有一個保留的中斷。每行中的域有:中斷號,本行中斷的發生次數,可能帶有一個加號的域(SA_INTERRUPT標志設置),以及登記這個中斷的驅動程序的名字。可以在安裝新硬件前,像查看/proc/dma和/proc/ioports一樣用cat命令手工查看手頭的這個文件。這幾個文件列出了當前投入使用的資源(但是不包括那些沒有加載驅動程序的硬件所使用的資源)。
--------------------------------------------------------------------------------
/proc/ioports文件
這個文件列出了諸如磁盤驅動器,以太網卡和聲卡設備等多種設備驅動程序登記的許多I/O端口范圍。
--------------------------------------------------------------------------------
/proc/kcore文件
這個文件是系統的物理內存以core文件格式保存的文件。例如,GDB能用它考察內核的數據結構。它不是純文本,而是/proc目錄下為數不多的幾個二進制格式的項之一。
-------------------------------------------------------------------------------
/proc/kmsg文件
這個文件用於檢索用printk生成的內核消息。任何時刻只能有一個具有超級用戶權限的進程可以讀取這個文件。也可以用系統調用syslog檢索這些消息。通常使用工具dmesg或守護進程klogd檢索這些消息。
--------------------------------------------------------------------------------
/proc/ksyms文件
這個文件列出了已經登記的內核符號;這些符號給出了變量或函數的地址。每行給出一個符號的地址,符號名稱以及登記這個符號的模塊。程序ksyms,insmod和kmod使用這個文件。它還列出了正在運行的任務數,總任務數和最后分配的PID。
--------------------------------------------------------------------------------
/proc/loadavg文件
這個文件給出以幾個不同的時間間隔計算的系統平均負載,這就如同uptime命令顯示的結果那樣。前三個數字是平均負載。這是通過計算過去1分鍾,5分鍾,15分鍾里運行隊列中的平均任務數得到的。隨后是正在運行的任務數和總任務數。最后是上次使用的進程號。
--------------------------------------------------------------------------------
/proc/locks文件
這個文件包含在打開的文件上的加鎖信息。文件中的每一行描述了特定文件和文檔上的加鎖信息以及對文件施加的鎖的類型。內核也可以需要時對文件施加強制性鎖。
--------------------------------------------------------------------------------
/proc/mdstat文件
這個文件包含了由md設備驅動程序控制的RAID設備信息。
--------------------------------------------------------------------------------
/proc/meminfo文件
這個文件給出了內存狀態的信息。它顯示出系統中空閑內存,已用物理內存和交換內存的總量。它還顯示出內核使用的共享內存和緩沖區總量。這些信息的格式和free命令顯示的結果類似。
--------------------------------------------------------------------------------
/proc/misc文件
這個文件報告用內核函數misc_register登記的設備驅動程序。
--------------------------------------------------------------------------------
/proc/modules文件
這個文件給出可加載內核模塊的信息。lsmod程序用這些信息顯示有關模塊的名稱,大小,使用數目方面的信息。
--------------------------------------------------------------------------------
/proc/mounts文件
這個文件以/etc/mtab文件的格式給出當前系統所安裝的文件系統信息。這個文件也能反映出任何手工安裝從而在/etc/mtab文件中沒有包含的文件系統。
--------------------------------------------------------------------------------
/proc/pci文件
這個文件給出PCI設備的信息。用它可以方便地診斷PCI問題。你可以從這個文件中檢索到的信息包括諸如IDE接口或USB控制器這樣的設備,總線,設備和功能編號,設備延遲以及IRQ編號。
--------------------------------------------------------------------------------
/proc/stat文件 
這個文件包含的信息有CPU利用率,磁盤,內存頁,內存對換,全部中斷,接觸開關以及賞賜自舉時間(自1970年1月1日起的秒數)。
--------------------------------------------------------------------------------
/proc/uptime文件
這個文件給出自從上次系統自舉以來的秒數,以及其中有多少秒處於空閑。這主要供uptime程序使用。比較這兩個數字能夠告訴你長期來看CPU周期浪費的比例。
--------------------------------------------------------------------------------
/proc/version文件
這個文件只有一行內容,說明正在運行的內核版本。可以用標准的編程方法進行分析獲得所需的系統信息。
--------------------------------------------------------------------------------
/proc/net子目錄
此目錄下的文件描述或修改了聯網代碼的行為。可以通過使用arp,netstat,route和ipfwadm命令設置或查詢這些特殊文件中的許多文件。
--------------------------------------------------------------------------------
以下摘要介紹此目錄下文件的功能:
arp
轉儲每個網絡接口的arp表中dev包的統計
dev
來自網絡設備的統計
dev_mcast
列出二層(數據鏈路層)多播組
igmp
加入的IGMP多播組
netlink
netlink套接口的信息
netstat
網絡流量的多種統計。第一行是信息頭,帶有每個變量的名稱。接下來的一行保存相應變量的值
raw
原始套接口的套接口表
route
靜態路由表
rpc
包含RPC信息的目錄
rt_cache
路由緩沖
snmp
snmp agent的ip/icmp/tcp/udp協議統計;各行交替給出字段名和值
sockstat
列出使用的tcp/udp/raw/pac/syc_cookies的數量
tcp
TCP連接的套接口
udp
UDP連接的套接口表
unix
UNIX域套接口的套接口表 
--------------------------------------------------------------------------------
示例:
[root@localhost /]# cat /proc/net/route
Iface Destination Gateway Flags RefCnt Use Metric Mask MTU Window IRTT
eth0 0035C2DA 00000000 0001 0 0 0 80FFFFF0
eth0 0000FEA9 00000000 0001 0 0 0 0000FFF0
eth0 00000000 0135C2DA 0003 0 0 0 00000000 
--------------------------------------------------------------------------------
[root@localhost /]# cat /proc/net/tcp
sl local_address rem_address st tx_queue rx_queue tr tm->when retrnsmt uid timeout inode
0: 00000000:8000 00000000:0000 0A 00000000:00000000 00:00000000 00000000 29 0 9525 1 0dde7500 3000 0 0 2 -1
1: 00000000:006F 00000000:0000 0A 00000000:00000000 00:00000000 00000000 0 0 9484 1 0dde79e0 3000 0 0 2 -1
2: 0100007F:0277 00000000:0000 0A 00000000:00000000 00:00000000 00000000 0 0 10049 1 0a8e3a00 3000 0 0 2 -1
3: 0100007F:14D7 00000000:0000 0A 00000000:00000000 00:00000000 00000000 99 0 9847 1 0dde7020 3000 0 0 2 -1
4: 0100007F:0019 00000000:0000 0A 00000000:00000000 00:00000000 00000000 0 0 10286 1 0a8e3520 3000 0 0 2 -1 
--------------------------------------------------------------------------------
[root@localhost /]# cat /proc/net/arp
IP address HW type Flags HW address Mask Device
218.194.53.1 0x1 0x2 00:0D:BC:78:07:3F * eth0 
--------------------------------------------------------------------------------
[root@localhost /]# cat /proc/net/udp
sl local_address rem_address st tx_queue rx_queue tr tm->when retrnsmt uid timeout inode
0: 00000000:8000 00000000:0000 07 00000000:00000000 00:00000000 00000000 29 0 9520 2 0b4ef7c0
105: 00000000:14E9 00000000:0000 07 00000000:00000000 00:00000000 00000000 99 0 10284 2 0b4ef040
111: 00000000:006F 00000000:0000 07 00000000:00000000 00:00000000 00000000 0 0 9483 2 0b4efcc0
116: 00000000:02F4 00000000:0000 07 00000000:00000000 00:00000000 00000000 0 0 9511 2 0b4efa40
119: 00000000:0277 00000000:0000 07 00000000:00000000 00:00000000 00000000 0 0 10050 2 0b4ef2c0
--------------------------------------------------------------------------------
/proc/scsi子目錄
此目錄下包含一個列出了所有檢測到的SCSI設備的文件,並且為每種控制器驅動程序提供一個目錄,在這個目錄下又為已安裝的此種控制器的每個實例提供一個子目錄。
--------------------------------------------------------------------------------


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM