Linux下/proc目錄詳解

Linux下/proc目錄詳解


  • proc目錄總的概述
  • proc下有關進程的目錄概述
  • proc下針對Linux系統相關的參數目錄概述

/proc目錄總的概述

1.首先,我們可以使用ll命令查看下/proc目錄,如下

[root@centos6 ~]# ls -l /proc
    total 0
        dr-xr-xr-x.  8 root      root         0 May 19 04:02 1
        dr-xr-xr-x.  8 root      root         0 May 19 04:02 10
        dr-xr-xr-x.  8 root      root         0 May 18 20:02 1078
        dr-xr-xr-x.  8 root      root         0 May 18 20:02 1079
        ...(中間省略)...
        -r--r--r--.  1 root      root         0 May 19 17:39 timer_list
        -rw-r--r--.  1 root      root         0 May 19 17:39 timer_stats
        dr-xr-xr-x.  4 root      root         0 May 19 17:39 tty
        -r--r--r--.  1 root      root         0 May 19 17:39 uptime
        -r--r--r--.  1 root      root         0 May 19 17:39 version
        -r--------.  1 root      root         0 May 19 17:39 vmallocinfo
        -r--r--r--.  1 root      root         0 May 19 17:39 vmstat
        -r--r--r--.  1 root      root         0 May 19 17:39 zoneinfo

2.使用ps aux命令查看下當前系統所有正在運行的進程

[root@centos6 ~]# ps aux
    USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
    root          1  0.0  0.1  19352  1564 ?        Ss   May18   0:02 /sbin/init
    root          2  0.0  0.0      0     0 ?        S    May18   0:00 [kthreadd]
    root          3  0.0  0.0      0     0 ?        S    May18   0:00 
    ...(中間省略)...
   /sbin/dhclient -d -4 -sf /usr/libexec/nm-dhcp-client.action -pf /var/run/dhcl
    root      27825  0.0  0.4 102104  4140 ?        Ss   14:10   0:00 sshd:  root@pts/4 
    root      27826  0.0  0.4 102104  4152 ?        Ss   14:10   0:00 sshd: root@pts/3 
    root      27833  0.0  0.1 108364  1816 pts/3    Ss   14:10   0:00 -bash
    root      27834  0.0  0.1 108364  1800 pts/4    Ss+  14:10   0:00 -bash
    postfix   28615  0.0  0.3  81040  3436 ?        S    17:44   0:00 pickup -l -t fifo -u
    root      28620  8.0  0.1 110256  1152 pts/3    R+   17:45   0:00 ps aux

3.對比上面的兩條命令運行的結果,我們可以發現系統中每個正在運行的進程幾乎都在/prom目錄下有一個以其進程Id命名的文件夾(/proc/Pid/),但是proc目錄下除了這些以進程Id命令的文件夾,還有其他類似/proc/cpuinfo、/proc/pci的文件夾。通過man proc得知proc是一個進程信息偽文件系統,它只存在內存當中,不占用外內存空間。它以文件的方式為訪問系統內核數據的操作提供接口。

proc下有關進程的目錄概述

1.用ll 查看/proc/1/、 /proc/2 等類似/proc/Pid/的文件夾,可以發現它們有相同的文件夾。如下

[root@centos6 ~]# ll /proc/1
total 0
dr-xr-xr-x. 2 root root 0 May 19 18:25 attr
-rw-r--r--. 1 root root 0 May 19 18:25 autogroup
-r--------. 1 root root 0 May 19 18:25 auxv
-r--r--r--. 1 root root 0 May 19 18:25 cgroup
--w-------. 1 root root 0 May 19 18:25 clear_refs
-r--r--r--. 1 root root 0 May 19 04:02 cmdline
-rw-r--r--. 1 root root 0 May 19 18:25 comm
 ...(中間省略)...
-r--r--r--. 1 root root 0 May 19 04:02 stat
-r--r--r--. 1 root root 0 May 19 18:25 statm
-r--r--r--. 1 root root 0 May 19 17:46 status
-r--r--r--. 1 root root 0 May 19 18:25 syscall
dr-xr-xr-x. 3 root root 0 May 19 18:25 task
-r--r--r--. 1 root root 0 May 19 18:25 wchan

2.下面是/proc/Pid下的常用子目錄作用簡介

文件名 文件內容
/proc/[pid]/cmdline 進程被啟動的命令串
/proc/[pid]/environ 進程的環境變量內容
/proc/[pid]/cwd 指向當前進程運行目錄的一個符號鏈接
/proc/[pid]/exe 指向啟動當前進程的執行路徑的符號鏈接
/proc/[pid]/fd 包含當前進程打開的每一個文件的文件描述符的目錄
/proc/[pid]/limits 當前進程所使用的每一個受限的軟硬件限制和管理單元
/proc/[pid]/maps 當前進程關聯到每個可執行文件和庫文件在內存中的映射區域及其訪問權限所組成的列表
/proc/[pid]/mem 當前進程所占用的內存空間
/proc/[pid]/root 指向當前進程運行根目錄的符號鏈接
/proc/[pid]/stat 當前進程的狀態信息
/proc/[pid]/statm 當前進程占用內存的狀態信息
/proc/[pid]/status 當前進程的狀態信息

proc下針對Linux系統相關的參數目錄概述

1.我們可以使用cat查看/proc/cpuinfo 等目錄,可以看到與系統相關的一些參數

[root@centos6 ~]# cat /proc/cpuinfo 
processor   : 0
vendor_id   : GenuineIntel
cpu family  : 6
model       : 58
model name  : Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz
stepping    : 9
microcode   : 21
cpu MHz     : 2594.139
cache size  : 3072 KB
physical id : 0
siblings    : 1
core id     : 0
cpu cores   : 1
apicid      : 0
initial apicid  : 0
fpu     : yes
fpu_exception   : yes
cpuid level : 13
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc up arch_perfmon pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf unfair_spinlock pni pclmulqdq ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm ida arat epb pln pts dtherm fsgsbase smep
bogomips    : 5188.27
clflush size    : 64
cache_alignment : 64
address sizes   : 42 bits physical, 48 bits virtual
power management:

2.下面是/proc/Pid下的常用子目錄作用簡介

文件名 文件內容
/proc/cmdline kernel啟動的命令行
/proc/cpuinfo 本機的CPU相關信息
/proc/devices 記錄字符和塊設備的主設備號,以及分配到這些設備號的設備名稱
/proc/filesystems 目前系統已經加載的文件系統
/proc/interrupts 目前系統上面的IRQ分配狀態
/proc/ioports 目前系統上各個設備所配置的I/O地址
/proc/kcore 系統的物理內存以core文件格式保存的文件
/proc/loadavg 保存關于CPU和磁盤I/O的負載平均值,其前三列分別表示每1秒鐘、每5秒鐘及每15秒的負載平均值
/proc/meminfo 內存信息
/proc/modules Linux已經加載的模塊列表
/proc/mounts 系統已經掛載的數據
/proc/swaps 當前系統上的交換分區及其空間利用信息
/proc/partitons 系統分區信息
/proc/zoneinfo 顯示內存空間的統計信息,對分析虛擬內存行為很有用
/proc/pci 在PCI總線上的每個設備的詳細情況
/proc/uptime 系統上次啟動以來的運行時間
/proc/version 內核的版本
/proc/net 網卡設備信息
/proc/tty tty設備信息
/proc/bus/* 一些總線的設備、USB設備記錄在此
+

原創文章,作者:似夢非雨,如若轉載,請注明出處:http://www.www58058.com/76464

(1)
似夢非雨似夢非雨
上一篇 2017-05-20 15:45
下一篇 2017-05-20 21:42

相關推薦

  • N26_第一周

    計算機組成     CPU:核心部件:                 運算器: 對數據進行算術運算和邏輯運算     …

    Linux干貨 2017-01-11
  • MySQL應用管理

    這篇文章主要講述基本的SQL語句,以供新手參考使用,不過最好的辦法還是查閱官方文檔和help命令。 進入正題 什么是SQL?        SQL結構化查詢語言,是關系型數據庫查詢和管理語言,是一種數據庫查詢和程序設計語言,用于存取數據以及查詢,更新和管理關系型數據庫系統。 SQL的分類 &nbsp…

    Linux干貨 2015-09-23
  • 回溯法 -數據結構與算法

    1.回溯法算法思想: 定義:         回溯法(探索與回溯法)是一種選優搜索法,按選優條件向前搜索,以達到目標。但當探索到某一步時,發現原先選擇并不優或達不到目標,就退回一步重新選擇,這種走不通就退回再走的技術為回溯法,而滿足回溯條件的某個狀態的點稱為“回溯點”。 1、回溯法適用:有許多問題,當需要找出它的解集(…

    Linux干貨 2015-04-07
  • linux用戶管理

    linux用戶:       linux用戶大體分為兩種:一是:管理員用戶;二是普通用戶,普通用戶又可以分為系統用戶和登錄用戶。因為linux是一個多用戶多任務的系統,所以每一個要使用系統資源的用戶,都要向管理員申請一個賬號,使用這個賬號登錄到系統。每個用戶都擁有一個自己的名字和密碼,以登錄到用戶。 每個用戶都有唯一的用戶標識(…

    Linux干貨 2016-08-04
  • 鏈接的“軟”與“硬”

    前言     類似Windows系統,Linux系統在進行文件管理時,也會引入鏈接概念。而鏈接又分為軟鏈接和硬鏈接,兩種鏈接適用于不同場合、不同用途,各有優缺點。在介紹軟硬兩種鏈接之前,需要先引入inode的概念。 Inode:     系統在管理文件時,為了有序尋址,會將元數據(metadata)和用戶數據…

    Linux干貨 2016-10-20
  • 馬哥教育網絡班22期第六周課程練習1

    1、1,$s/^\s\+/#/g 2、1,$s/^\s\+$//g 3、1,$s/^#\s//g 4、1,3s/^/#/g 5、sed -e s/gpgcheck=1/gpgcheck=0/g -e s/enabled=0/enabled=1/g /etc/yum.repos.d/CentOS-Media.repo  6、0 /4 * * * cp…

    Linux干貨 2016-09-26
欧美性久久久久