Linux系统的proc详解

Linux系统上的/proc目录是一种文件系统,即proc文件系统。与其它常见的文件系统不同的是,/proc是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,用户可以通过这些文件查看有关系统硬件及当前正在运行进程的信息,甚至可以通过更改其中某些文件来改变内核的运行状态。

基于/proc文件系统如上所述的特殊性,其内的文件也常被称作虚拟文件,并具有一些独特的特点。例如,其中有些文件虽然使用查看命令查看时会返回大量信息,但文件本身的大小却会显示为0字节。此外,这些特殊文件中大多数文件的时间及日期属性通常为当前系统时间和日期,这跟它们随时会被刷新(存储于RAM中)有关。另外,在/proc下还有三个很重要的目录:net,scsi和sys。 Sys目录是可写的,可以通过它来访问或修改内核的参数,而net和scsi则依赖于内核配置。例如,如果系统不支持scsi,则scsi 目录不存在。

为了查看及使用上的方便,这些文件通常会按照相关性进行分类存储于不同的目录甚至子目录中,如/proc/scsi目录中存储的就是当前系统上所有SCSI设备的相关信息,/proc/N中存储的则是系统当前正在运行的进程的相关信息,其中N为正在运行的进程(可以想象得到,在某进程结束后其相关目录则会消失)。

大多数虚拟文件可以使用文件查看命令如cat、more或者less进行查看,有些文件信息表述的内容可以一目了然,但也有文件的信息却不怎么具有可读性。不过,这些可读性较差的文件在使用一些命令如apm、free、lspci或top查看时却可以有着不错的表现。

一、进程目录中的常见文件介绍

[root@test7 proc]# ll
total 0
dr-xr-xr-x  8 root    root                  0 Jun 30 08:02 1
dr-xr-xr-x  8 root    root                  0 Jun 30 17:27 10
dr-xr-xr-x  8 root    root                  0 Jun 30 17:27 100
dr-xr-xr-x  8 root    root                  0 Jun 30 17:27 101
dr-xr-xr-x  8 root    root                  0 Jun 30 14:04 1014
dr-xr-xr-x  8 root    root                  0 Jun 30 17:27 102
dr-xr-xr-x  8 root    root                  0 Jun 30 17:27 103
dr-xr-xr-x  8 root    root                  0 Jun 30 17:27 104
dr-xr-xr-x  8 root    root                  0 Jun 30 17:27 105
dr-xr-xr-x  8 root    root                  0 Jun 30 17:27 106
dr-xr-xr-x  8 root    root                  0 Jun 30 17:27 107
dr-xr-xr-x  8 root    root                  0 Jun 30 17:27 108
dr-xr-xr-x  8 root    root                  0 Jun 30 17:27 109
....
dr-xr-xr-x  8 root    root                  0 Jun 30 17:27 77
dr-xr-xr-x  8 root    root                  0 Jun 30 17:27 772
dr-xr-xr-x  8 root    root                  0 Jun 30 17:27 774
dr-xr-xr-x  8 root    root                  0 Jun 30 17:27 775
.....
dr-xr-xr-x  2 root    root                  0 Jun 30 19:51 acpi
dr-xr-xr-x  5 root    root                  0 Jun 30 19:51 asound
-r--r--r--  1 root    root                  0 Jun 30 19:51 buddyinfo
dr-xr-xr-x  4 root    root                  0 Jun 30 19:51 bus
-r--r--r--  1 root    root                  0 Jun 30 19:51 cgroups
-r--r--r--  1 root    root                  0 Jun 30 19:51 cmdline
-r--r--r--  1 root    root                  0 Jun 30 19:51 consoles
-r--r--r--  1 root    root                  0 Jun 30 19:51 cpuinfo
-r--r--r--  1 root    root                  0 Jun 30 19:51 crypto
-r--r--r--  1 root    root                  0 Jun 30 19:51 devices
-r--r--r--  1 root    root                  0 Jun 30 19:51 diskstats
-r--r--r--  1 root    root                  0 Jun 30 19:51 dma
dr-xr-xr-x  2 root    root                  0 Jun 30 19:51 driver
-r--r--r--  1 root    root                  0 Jun 30 19:51 execdomains
-r--r--r--  1 root    root                  0 Jun 30 19:51 fb
-r--r--r--  1 root    root                  0 Jun 30 19:51 filesystems
dr-xr-xr-x  4 root    root                  0 Jun 30 19:51 fs
-r--r--r--  1 root    root                  0 Jun 30 19:51 interrupts
-r--r--r--  1 root    root                  0 Jun 30 19:51 iomem
-r--r--r--  1 root    root                  0 Jun 30 19:51 ioports
dr-xr-xr-x 56 root    root                  0 Jun 30 19:51 irq
-r--r--r--  1 root    root                  0 Jun 30 19:51 kallsyms
-r--------  1 root    root    140737486266368 Jun 30 19:51 kcore
-r--r--r--  1 root    root                  0 Jun 30 19:51 keys
-r--r--r--  1 root    root                  0 Jun 30 19:51 key-users
-r--------  1 root    root                  0 Jun 30 19:51 kmsg
-r--------  1 root    root                  0 Jun 30 19:51 kpagecount
-r--------  1 root    root                  0 Jun 30 19:51 kpageflags
-r--r--r--  1 root    root                  0 Jun 30 19:51 loadavg
-r--r--r--  1 root    root                  0 Jun 30 19:51 locks
-r--r--r--  1 root    root                  0 Jun 30 19:51 mdstat
-r--r--r--  1 root    root                  0 Jun 30 19:51 meminfo
-r--r--r--  1 root    root                  0 Jun 30 19:51 misc
-r--r--r--  1 root    root                  0 Jun 30 19:51 modules
lrwxrwxrwx  1 root    root                 11 Jun 30 19:51 mounts -> self/mounts
dr-xr-xr-x  3 root    root                  0 Jun 30 19:51 mpt
-rw-r--r--  1 root    root                  0 Jun 30 19:51 mtrr
lrwxrwxrwx  1 root    root                  8 Jun 30 19:51 net -> self/net
-r--r--r--  1 root    root                  0 Jun 30 19:51 pagetypeinfo
-r--r--r--  1 root    root                  0 Jun 30 19:51 partitions
-r--r--r--  1 root    root                  0 Jun 30 19:51 sched_debug
dr-xr-xr-x  4 root    root                  0 Jun 30 19:51 scsi
lrwxrwxrwx  1 root    root                  0 Jun 30 08:02 self -> 12482
-r--------  1 root    root                  0 Jun 30 19:51 slabinfo
-r--r--r--  1 root    root                  0 Jun 30 19:51 softirqs
-r--r--r--  1 root    root                  0 Jun 30 19:51 stat
-r--r--r--  1 root    root                  0 Jun 30 08:02 swaps
dr-xr-xr-x  1 root    root                  0 Jun 30 08:02 sys
--w-------  1 root    root                  0 Jun 30 19:51 sysrq-trigger
dr-xr-xr-x  2 root    root                  0 Jun 30 19:51 sysvipc
-r--r--r--  1 root    root                  0 Jun 30 19:51 timer_list
-rw-r--r--  1 root    root                  0 Jun 30 19:51 timer_stats
dr-xr-xr-x  4 root    root                  0 Jun 30 19:51 tty
-r--r--r--  1 root    root                  0 Jun 30 19:51 uptime
-r--r--r--  1 root    root                  0 Jun 30 19:51 version
-r--------  1 root    root                  0 Jun 30 19:51 vmallocinfo
-r--r--r--  1 root    root                  0 Jun 30 19:51 vmstat
-r--r--r--  1 root    root                  0 Jun 30 19:51 zoneinf

上面列出的是/proc目录中一些进程相关的目录,每个目录中是当程本身相关信息的文件。下面是作者系统(RHEL7.0)上运行的一个PID为1120的进程SSHD 的相关文件,其中有些文件是每个进程都会具有的,后文会对这些常见文件做出说明。

[root@test7 1120]# ll /proc/1120/
total 0
dr-xr-xr-x 2 root root 0 Jun 30 19:06 attr
-rw-r--r-- 1 root root 0 Jun 30 19:06 autogroup
-r-------- 1 root root 0 Jun 30 19:06 auxv
-r--r--r-- 1 root root 0 Jun 30 19:06 cgroup
--w------- 1 root root 0 Jun 30 19:06 clear_refs
-r--r--r-- 1 root root 0 Jun 30 17:51 cmdline
-rw-r--r-- 1 root root 0 Jun 30 19:06 comm
-rw-r--r-- 1 root root 0 Jun 30 19:06 coredump_filter
-r--r--r-- 1 root root 0 Jun 30 19:06 cpuset
lrwxrwxrwx 1 root root 0 Jun 30 19:06 cwd -> /
-r-------- 1 root root 0 Jun 30 19:06 environ
lrwxrwxrwx 1 root root 0 Jun 30 19:06 exe -> /usr/sbin/sshd
dr-x------ 2 root root 0 Jun 30 19:06 fd
dr-x------ 2 root root 0 Jun 30 19:06 fdinfo
-rw-r--r-- 1 root root 0 Jun 30 19:06 gid_map
-r-------- 1 root root 0 Jun 30 19:06 io
-r--r--r-- 1 root root 0 Jun 30 19:06 limits
-rw-r--r-- 1 root root 0 Jun 30 19:06 loginuid
-r--r--r-- 1 root root 0 Jun 30 19:06 maps
-rw------- 1 root root 0 Jun 30 19:06 mem
-r--r--r-- 1 root root 0 Jun 30 19:06 mountinfo
-r--r--r-- 1 root root 0 Jun 30 19:06 mounts
-r-------- 1 root root 0 Jun 30 19:06 mountstats
dr-xr-xr-x 5 root root 0 Jun 30 19:06 net
dr-x--x--x 2 root root 0 Jun 30 19:06 ns
-r--r--r-- 1 root root 0 Jun 30 19:06 numa_maps
-rw-r--r-- 1 root root 0 Jun 30 19:06 oom_adj
-r--r--r-- 1 root root 0 Jun 30 19:06 oom_score
-rw-r--r-- 1 root root 0 Jun 30 19:06 oom_score_adj
-r--r--r-- 1 root root 0 Jun 30 19:06 pagemap
-r--r--r-- 1 root root 0 Jun 30 19:06 personality
-rw-r--r-- 1 root root 0 Jun 30 19:06 projid_map
lrwxrwxrwx 1 root root 0 Jun 30 19:06 root -> /
-rw-r--r-- 1 root root 0 Jun 30 19:06 sched
-r--r--r-- 1 root root 0 Jun 30 19:06 sessionid
-r--r--r-- 1 root root 0 Jun 30 19:06 smaps
-r--r--r-- 1 root root 0 Jun 30 19:06 stack
-r--r--r-- 1 root root 0 Jun 30 08:02 stat
-r--r--r-- 1 root root 0 Jun 30 19:06 statm
-r--r--r-- 1 root root 0 Jun 30 17:51 status
-r--r--r-- 1 root root 0 Jun 30 19:06 syscall
dr-xr-xr-x 3 root root 0 Jun 30 19:06 task
-rw-r--r-- 1 root root 0 Jun 30 19:06 uid_map
-r--r--r-- 1 root root 0 Jun 30 19:06 wchan

1.1 cmdline

启动当前进程的完整命令,但僵尸进程目录中的此文件不包含任何信息;

[root@test7 1120]# cat cmdline
/usr/sbin/sshd-D

1.2 cwd

指向当前进程运行目录的一个符号链接

lrwxrwxrwx 1 root root 0 Jun 30 19:06 cwd -> /

1.3 environ

当前进程的环境变量列表,彼此之间用空字符NULL隔开,变量用大写字母表示,其值用小写字母表示

[root@test7 1120]# more /proc/1120/environ
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/binLANG=en_US.UTF-8SSH_USE_STRONG_RNG=0

1.4 exe

指向启动当前进程的可执行文件(完整路径)的符号链接,通过/proc/N/exe 可以启动当前进程的一个拷贝, 这个文件是二进制文件。

1.5 fd

这是个目录,包含当前进程打开的每一个文件的文件描述符(file descriptor),这些文件描述符是指向实际文件的一个符号链接

[root@test7 fd]# ll /proc/1120/fd
total 0
lr-x------ 1 root root 64 Jun 30 19:12 0 -> /dev/null
lrwx------ 1 root root 64 Jun 30 19:12 1 -> socket:[17589]
lrwx------ 1 root root 64 Jun 30 19:12 2 -> socket:[17589]
lrwx------ 1 root root 64 Jun 30 19:12 3 -> socket:[17632]
lrwx------ 1 root root 64 Jun 30 19:12 4 -> socket:[17634]

1.6 limits

当前进程所使用的每一个受限资源的软限制、硬限制和管理单元;此文件仅可由实际启动当前进程的UID用户读取;(2.6.24以后的内核版本支持此功能);

[root@test7 1120]# cat limits
Limit                     Soft Limit           Hard Limit           Units
Max cpu time              unlimited            unlimited            seconds
Max file size             unlimited            unlimited            bytes
Max data size             unlimited            unlimited            bytes
Max stack size            8388608              unlimited            bytes
Max core file size        0                    unlimited            bytes
Max resident set          unlimited            unlimited            bytes
Max processes             3707                 3707                 processes
Max open files            1024                 4096                 files
Max locked memory         65536                65536                bytes
Max address space         unlimited            unlimited            bytes
Max file locks            unlimited            unlimited            locks
Max pending signals       3707                 3707                 signals
Max msgqueue size         819200               819200               bytes
Max nice priority         0                    0
Max realtime priority     0                    0
Max realtime timeout      unlimited            unlimited            us

1.7 maps

当前进程关联到的每个可执行文件和库文件在内存中的映射区域及其访问权限所组成的列表

[root@test7 1120]# cat maps
7fcacee51000-7fcacee5c000 r-xp 00000000 fd:01 201770159                  /usr/lib64/libnss_files-2.17.so (deleted)
7fcacee5c000-7fcacf05b000 ---p 0000b000 fd:01 201770159                  /usr/lib64/libnss_files-2.17.so (deleted)
7fcacf05b000-7fcacf05c000 r--p 0000a000 fd:01 201770159                  /usr/lib64/libnss_files-2.17.so (deleted)
7fcacf05c000-7fcacf05d000 rw-p 0000b000 fd:01 201770159                  /usr/lib64/libnss_files-2.17.so (deleted)
7fcacf05d000-7fcacf064000 r-xp 00000000 fd:01 201770171                  /usr/lib64/librt-2.17.so (deleted)
7fcacf064000-7fcacf263000 ---p 00007000 fd:01 201770171                  /usr/lib64/librt-2.17.so (deleted)
7fcacf263000-7fcacf264000 r--p 00006000 fd:01 201770171                  /usr/lib64/librt-2.17.so (deleted)
7fcacf264000-7fcacf265000 rw-p 00007000 fd:01 201770171                  /usr/lib64/librt-2.17.so (deleted)
7fcacf265000-7fcacf268000 r-xp 00000000 fd:01 201449283                  /usr/lib64/libkeyutils.so.1.5
7fcacf268000-7fcacf467000 ---p 00003000 fd:01 201449283                  /usr/lib64/libkeyutils.so.1.5
......
7fcad5bcc000-7fcad5bed000 rw-p 00000000 00:00 0                          [heap]
7fff792fb000-7fff7931c000 rw-p 00000000 00:00 0                          [stack]
7fff793ad000-7fff793af000 r-xp 00000000 00:00 0                          [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]

1.8 mem

当前进程所占用的内存空间,由open,read和seek等系统调用使用,不能被用户读取

1.9 root

指向当前进程运行根目录的符号链接;在Unix和Linux系统上,通常采用chroot命令使每个进程运行于独立的根目录;

lrwxrwxrwx 1 root root 0 Jun 30 19:06 root -> /

1.10 stat

当前进程的状态信息,包含一系列格式化后的数据列,可读性差,通常由ps命令使用。

[root@test7 1120]# cat stat
1120 (sshd) S 1 1120 1120 0 -1 1077960960 1127 2604 10 26 0 0 12 301 20 0 1 0 437 84946944 328 18446744073709551615 140509117243392 140509117860284 140735226683504 140735226680440 140509069474627 0 0 4096 81925 18446744071580695536 0 0 17 0 0 0 2 0 0 140509119958816 140509119973492 140509146038272 140735226691450 140735226691468 140735226691468 140735226691561 0

1.11 statm

当前进程占用内存的状态信息,通常以”页面(page)“表示

[root@test7 1120]# cat statm
20739 328 116 151 0 183 0

1.12 status

与stat所提供的信息类似,但可读性好,如下所示,每行表示一个属性信息,详细介绍参见proc的man手册

[root@test7 1120]# cat /proc/1120/status
Name:   sshd
State:  S (sleeping)
Tgid:   1120
Ngid:   0
Pid:    1120
PPid:   1
TracerPid:      0
Uid:    0       0     0 0
Gid:    0       0     0 0
FDSize: 64
Groups:
VmPeak:    82976 kB
VmSize:    82956 kB
VmLck:         0 kB
VmPin:         0 kB
VmHWM:      3580 kB
VmRSS:      1312 kB
VmData:      596 kB
VmStk:       136 kB
VmExe:       604 kB
VmLib:      9420 kB
VmPTE:       172 kB
VmSwap:        0 kB
Threads:        1
SigQ:   0/3707
SigPnd: 0000000000000000
ShdPnd: 0000000000000000
SigBlk: 0000000000000000
SigIgn: 0000000000001000
SigCgt: 0000000180014005
CapInh: 0000000000000000
CapPrm: 0000001fffffffff
CapEff: 0000001fffffffff
CapBnd: 0000001fffffffff
Seccomp:        0
Cpus_allowed:   ffffffff,ffffffff,ffffffff,ffffffff
Cpus_allowed_list:    0-127
Mems_allowed:   00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000001
Mems_allowed_list:    0
voluntary_ctxt_switches:        30
nonvoluntary_ctxt_switches:     1

1.13 task

目录文件,包含由当前进程所运行的每一个线程的相关信息,每个线程的相关信息文件均保存在一个由线程号(tid)命名的目录中,这类似于其内容类似于每个进程目录中的内容;(内核2.6版本以后支持此功能)

[root@test7 1120]# tree task/
task/
└── 1120├── attr│   ├── current│   ├── exec│   ├── fscreate│   ├── keycreate│   ├── prev│   └── sockcreate├── auxv├── cgroup├── clear_refs├── cmdline├── comm├── cpuset├── cwd -> /├── environ├── exe -> /usr/sbin/sshd├── fd│   ├── 0 -> /dev/null│   ├── 1 -> socket:[17589]│   ├── 2 -> socket:[17589]│   ├── 3 -> socket:[17632]│   └── 4 -> socket:[17634]├── fdinfo│   ├── 0│   ├── 1│   ├── 2│   ├── 3│   └── 4├── gid_map├── io├── limits├── loginuid├── maps├── mem├── mountinfo├── mounts├── ns│   ├── ipc -> ipc:[4026531839]│   ├── mnt -> mnt:[4026531840]│   ├── net -> net:[4026531956]│   ├── pid -> pid:[4026531836]│   └── uts -> uts:[4026531838]├── numa_maps├── oom_adj├── oom_score├── oom_score_adj├── pagemap├── personality├── projid_map├── root -> /├── sched├── sessionid├── smaps├── stack├── stat├── statm├── status├── syscall├── uid_map└── wchan

二、/proc目录下常见的文件介绍

2.1 /proc/apm

高级电源管理(APM)版本信息及电池相关状态信息,通常由apm命令使用;

2.2 /proc/buddyinfo

用于诊断内存碎片问题的相关信息文件

[root@test7 proc]# cat buddyinfo
Node 0, zone      DMA     11     21     41     21      6      4      1      0      0      1      0
Node 0, zone    DMA32    371   1039    477     99     61    365    190     46      9      2      1

2.3 /proc/cmdline

在启动时传递至内核的相关参数信息,这些信息通常由lilo或grub等启动管理工具进行传递;

[root@test7 1120]# cat /proc/cmdline
BOOT_IMAGE=/vmlinuz-3.10.0-123.el7.x86_64 root=UUID=b3f19aa8-c901-4f09-8aa9-e6c40acc1b5b ro rd.lvm.lv=centos/swap vconsole.font=latarcyrheb-sun16 rd.lvm.lv=centos/root crashkernel=auto vconsole.keymap=us rhgb quiet LANG=en_US.UTF-8

2.4、/proc/cpuinfo

处理器的相关信息的文件;

[root@test7 proc]# cat /proc/cpuinfo
processor       : 0
vendor_id       : AuthenticAMD
cpu family      : 23
model           : 96
model name      : AMD Ryzen 7 PRO 4750U with Radeon Graphics
stepping        : 1
microcode       : 0x8600106
cpu MHz         : 1696.814
cache size      : 512 KB
physical id     : 0
siblings        : 1
core id         : 0
cpu cores       : 1
apicid          : 0
initial apicid  : 0
fpu             : yes
fpu_exception   : yes
cpuid level     : 16
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx f16c rdrand hypervisor lahf_lm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw arat xsaveopt fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap
bogomips        : 3393.62
TLB size        : 3072 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 43 bits physical, 48 bits virtual
power management:

2.5、/proc/crypto

系统上已安装的内核使用的密码算法及每个算法的详细信息列表;

[root@test7 proc]# cat crypto
name         : crct10dif
driver       : crct10dif-pclmul
module       : crct10dif_pclmul
priority     : 200
refcnt       : 1
selftest     : passed
type         : shash
blocksize    : 1
digestsize   : 2name         : crc32
driver       : crc32-pclmul
... 省略多个加密算法
blocksize    : 64
digestsize   : 16name         : aes
driver       : aes-asm
module       : kernel
priority     : 200
refcnt       : 2
selftest     : passed
type         : cipher
blocksize    : 16
min keysize  : 16
max keysize  : 32

2.6、/proc/devices

系统已经加载的所有块设备和字符设备的信息,包含主设备号和设备组(与主设备号对应的设备类型)名;

[root@test7 proc]# cat /proc/devices
Character devices:1 mem4 /dev/vc/04 tty4 ttyS5 /dev/tty5 /dev/console5 /dev/ptmx7 vcs10 misc13 input14 sound21 sg29 fb
116 alsa
128 ptm
136 pts
162 raw
180 usb
188 ttyUSB
189 usb_device
202 cpu/msr
203 cpu/cpuid
226 drm
250 hidraw
251 usbmon
252 bsg
253 watchdog
254 rtcBlock devices:
259 blkext8 sd9 md11 sr65 sd66 sd67 sd68 sd69 sd70 sd71 sd
128 sd
129 sd
130 sd
131 sd
132 sd
133 sd
134 sd
135 sd
253 device-mapper
254 mdp

2.7、/proc/diskstats

每块磁盘设备的磁盘I/O统计信息列表;(内核2.5.69以后的版本支持此功能)

[root@test7 proc]#  cat diskstats 8       0 sda 22544 840 1424214 9833 25319 3121 3401514 37230 0 12965 460638       1 sda1 2003 0 8999 221 2055 0 4120 126 0 340 3478       2 sda2 20387 840 1413983 9601 23264 3121 3397394 37104 0 12635 4570911       0 sr0 0 0 0 0 0 0 0 0 0 0 0253       0 dm-0 429 0 3432 355 790 0 6320 1632 0 188 1987253       1 dm-1 20566 0 1408821 9562 25561 0 3386796 44634 0 12407 54196253       2 dm-2 129 0 906 31 34 0 4278 22 0 44 53

2.8、/proc/dma

每个正在使用且注册的ISA DMA通道的信息列表;

[root@rhel5 ~]# more
/proc/dma

2: floppy

4: cascade

2.9、/proc/execdomains

内核当前支持的执行域(每种操作系统独特“个性”)信息列表;

[root@test7 proc]# cat /proc/dma 4: cascade

帧缓冲设备列表文件,包含帧缓冲设备的设备号和相关驱动信息;

2.11、/proc/filesystems

当前被内核支持的文件系统类型列表文件,被标示为nodev的文件系统表示不需要块设备的支持;通常mount一个设备时,如果没有指定文件系统类型将通过此文件来决定其所需文件系统的类型

[root@test7 proc]# cat /proc/filesystems
nodev   sysfs
nodev   rootfs
nodev   bdev
nodev   proc
nodev   cgroup
nodev   cpuset
nodev   tmpfs
nodev   devtmpfs
nodev   debugfs
nodev   securityfs
nodev   sockfs
nodev   pipefs
nodev   anon_inodefs
nodev   configfs
nodev   devpts
nodev   ramfs
nodev   hugetlbfs
nodev   autofs
nodev   pstore
nodev   mqueuexfs
nodev   binfmt_misc

2.12、/proc/interrupts

X86或X86_64体系架构系统上每个IRQ相关的中断号列表;多路处理器平台上每个CPU对于每个I/O设备均有自己的中断号;

[root@test7 proc]# cat /proc/interrupts CPU0       0:        151   IO-APIC-edge      timer1:         54   IO-APIC-edge      i80428:          1   IO-APIC-edge      rtc09:          0   IO-APIC-fasteoi   acpi12:        303   IO-APIC-edge      i804214:          0   IO-APIC-edge      ata_piix15:      42862   IO-APIC-edge      ata_piix16:          0   IO-APIC-fasteoi   vmwgfx, snd_ens137117:      40482   IO-APIC-fasteoi   ehci_hcd:usb1, ioc018:        238   IO-APIC-fasteoi   uhci_hcd:usb219:     175888   IO-APIC-fasteoi   eno1677773640:          0   PCI-MSI-edge      PCIe PME, pciehp41:          0   PCI-MSI-edge      PCIe PME, pciehp42:          0   PCI-MSI-edge      PCIe PME, pciehp43:          0   PCI-MSI-edge      PCIe PME, pciehp44:          0   PCI-MSI-edge      PCIe PME, pciehp45:          0   PCI-MSI-edge      PCIe PME, pciehp46:          0   PCI-MSI-edge      PCIe PME, pciehp47:          0   PCI-MSI-edge      PCIe PME, pciehp48:          0   PCI-MSI-edge      PCIe PME, pciehp49:          0   PCI-MSI-edge      PCIe PME, pciehp50:          0   PCI-MSI-edge      PCIe PME, pciehp51:          0   PCI-MSI-edge      PCIe PME, pciehp52:          0   PCI-MSI-edge      PCIe PME, pciehp53:          0   PCI-MSI-edge      PCIe PME, pciehp54:          0   PCI-MSI-edge      PCIe PME, pciehp55:          0   PCI-MSI-edge      PCIe PME, pciehp56:          0   PCI-MSI-edge      PCIe PME, pciehp57:          0   PCI-MSI-edge      PCIe PME, pciehp58:          0   PCI-MSI-edge      PCIe PME, pciehp59:          0   PCI-MSI-edge      PCIe PME, pciehp60:          0   PCI-MSI-edge      PCIe PME, pciehp61:          0   PCI-MSI-edge      PCIe PME, pciehp62:          0   PCI-MSI-edge      PCIe PME, pciehp63:          0   PCI-MSI-edge      PCIe PME, pciehp64:          0   PCI-MSI-edge      PCIe PME, pciehp65:          0   PCI-MSI-edge      PCIe PME, pciehp66:          0   PCI-MSI-edge      PCIe PME, pciehp67:          0   PCI-MSI-edge      PCIe PME, pciehp68:          0   PCI-MSI-edge      PCIe PME, pciehp69:          0   PCI-MSI-edge      PCIe PME, pciehp70:          0   PCI-MSI-edge      PCIe PME, pciehp71:          0   PCI-MSI-edge      PCIe PME, pciehp72:          1   PCI-MSI-edge      vmw_vmci73:          0   PCI-MSI-edge      vmw_vmciNMI:         13   Non-maskable interruptsLOC:     666402   Local timer interruptsSPU:          0   Spurious interruptsPMI:         13   Performance monitoring interruptsIWI:      19342   IRQ work interruptsRTR:          0   APIC ICR read retriesRES:          0   Rescheduling interruptsCAL:          0   Function call interruptsTLB:          0   TLB shootdownsTRM:          0   Thermal event interruptsTHR:          0   Threshold APIC interruptsMCE:          0   Machine check exceptionsMCP:        146   Machine check pollsERR:          0MIS:          0

2.13、/proc/iomem

每个物理设备上的记忆体(RAM或者ROM)在系统内存中的映射信息;

[root@test7 proc]# cat /proc/iomem
00000000-00000fff : reserved
00001000-0009ebff : System RAM
0009ec00-0009ffff : reserved
000a0000-000bffff : PCI Bus 0000:00
000c0000-000c7fff : Video ROM
000ca000-000cafff : Adapter ROM
000cc000-000cffff : PCI Bus 0000:00
000d0000-000d3fff : PCI Bus 0000:00
000d4000-000d7fff : PCI Bus 0000:00
000d8000-000dbfff : PCI Bus 0000:00
000dc000-000fffff : reserved000f0000-000fffff : System ROM
00100000-1fedffff : System RAM01000000-015f66e4 : Kernel code015f66e5-019eedff : Kernel data01b83000-01e1bfff : Kernel bss
1fee0000-1fefefff : ACPI Tables
1feff000-1fefffff : ACPI Non-volatile Storage
1ff00000-1fffffff : System RAM
c0000000-febfffff : PCI Bus 0000:00c0000000-c0007fff : 0000:00:0f.0c0008000-c000bfff : 0000:00:10.0e7400000-e74fffff : PCI Bus 0000:14....省略若干内容e7b00000-e7b0ffff : 0000:02:01.0e8000000-efffffff : 0000:00:0f.0e8000000-efffffff : vmwgfx probef0000000-f7ffffff : PCI MMCONFIG 0000 [bus 00-7f]f0000000-f7ffffff : reservedfd200000-fd2fffff : PCI Bus 0000:13fd300000-fd3fffff : PCI Bus 0000:0bfd400000-fd4fffff : PCI Bus 0000:03fd500000-fdffffff : PCI Bus 0000:02fd5c0000-fd5dffff : 0000:02:01.0fd5c0000-fd5dffff : e1000fd5ef000-fd5effff : 0000:02:03.0fd5ef000-fd5effff : ehci_hcdfdff0000-fdffffff : 0000:02:01.0fdff0000-fdffffff : e1000fe000000-fe7fffff : 0000:00:0f.0fe000000-fe7fffff : vmwgfx probefe800000-fe9fffff : pnp 00:09feba0000-febbffff : 0000:00:10.0feba0000-febbffff : mptfebc0000-febdffff : 0000:00:10.0febc0000-febdffff : mptfebfe000-febfffff : 0000:00:07.7
fec00000-fec0ffff : reservedfec00000-fec003ff : IOAPIC 0
fed00000-fed003ff : HPET 0fed00000-fed003ff : pnp 00:07
fee00000-fee00fff : Local APICfee00000-fee00fff : reserved
fffe0000-ffffffff : reserved
[root@test7 proc]#

2.14、/proc/ioports

当前正在使用且已经注册过的与物理设备进行通讯的输入-输出端口范围信息列表;如下面所示,第一列表示注册的I/O端口范围,其后表示相关的设备;

[root@test7 proc]# cat /proc/ioports
0000-0cf7 : PCI Bus 0000:000000-001f : dma10020-0021 : pic10040-0043 : timer00050-0053 : timer10060-0060 : keyboard0064-0064 : keyboard0070-0071 : rtc00080-008f : dma page reg00a0-00a1 : pic200c0-00df : dma200f0-00ff : fpu0170-0177 : 0000:00:07.10170-0177 : ata_piix01f0-01f7 : 0000:00:07.101f0-01f7 : ata_piix0376-0376 : 0000:00:07.10376-0376 : ata_piix03c0-03df : vga+03f6-03f6 : 0000:00:07.103f6-03f6 : ata_piix03f8-03ff : serial0cf0-0cf1 : pnp 00:00
0cf8-0cff : PCI conf1
0d00-feff : PCI Bus 0000:001000-103f : 0000:00:07.31000-1003 : ACPI PM1a_EVT_BLK1004-1005 : ACPI PM1a_CNT_BLK1008-100b : ACPI PM_TMR100c-100f : ACPI GPE0_BLK1010-1015 : ACPI CPU throttle1040-104f : 0000:00:07.31040-104f : pnp 00:001060-106f : 0000:00:07.11060-106f : ata_piix1070-107f : 0000:00:0f.01070-107f : vmwgfx probe1080-10bf : 0000:00:07.71080-10bf : vmw_vmci1400-14ff : 0000:00:10.02000-3fff : PCI Bus 0000:022000-203f : 0000:02:01.02000-203f : e10002040-207f : 0000:02:02.02040-207f : Ensoniq AudioPCI2080-209f : 0000:02:00.02080-209f : uhci_hcd4000-4fff : PCI Bus 0000:035000-5fff : PCI Bus 0000:0b6000-6fff : PCI Bus 0000:137000-7fff : PCI Bus 0000:1b8000-8fff : PCI Bus 0000:049000-9fff : PCI Bus 0000:0ca000-afff : PCI Bus 0000:14b000-bfff : PCI Bus 0000:1cc000-cfff : PCI Bus 0000:05d000-dfff : PCI Bus 0000:0de000-efff : PCI Bus 0000:15fce0-fcff : pnp 00:09

2.15、/proc/kallsyms

模块管理工具用来动态链接或绑定可装载模块的符号定义,由内核输出;(内核2.5.71以后的版本支持此功能);通常这个文件中的信息量相当大;

[root@test7 proc]# cat /proc/kallsyms  | less
0000000000000000 D irq_stack_union
0000000000000000 D __per_cpu_start
0000000000004000 d exception_stacks
000000000000a000 D gdt_page
000000000000b000 D cpu_llc_shared_map
000000000000b008 D cpu_core_map
000000000000b010 D cpu_sibling_map
000000000000b018 D cpu_llc_id
000000000000b01c D cpu_number
000000000000b020 D x86_bios_cpu_apicid
000000000000b022 D x86_cpu_to_apicid
000000000000b040 d cpu_loops_per_jiffy
000000000000b080 d xen_cr0_value
000000000000b088 d idt_desc
000000000000b0a0 d shadow_tls_desc
000000000000b0c0 D xen_vcpu_info
000000000000b100 D xen_vcpu
000000000000b120 D xen_mc_irq_flags
000000000000b140 d mc_buffer
000000000000bd50 D xen_current_cr3
000000000000bd58 D xen_cr3
000000000000bd80 d xen_clock_events
000000000000be80 d xen_residual_stolen
000000000000bea0 d xen_runstate_snapshot
000000000000bee0 d xen_runstate
000000000000bf10 d xen_debug_irq
000000000000bf20 d xen_irq_work
000000000000bf30 d xen_callfuncsingle_irq
000000000000bf40 d xen_callfunc_irq
000000000000bf50 d xen_resched_irq
000000000000bf60 d lock_waiting
000000000000bf70 d irq_name
.....省略下面内容

2.16、/proc/kcore

系统使用的物理内存,以ELF核心文件(core file)格式存储,其文件大小为已使用的物理内存(RAM)加上4KB;这个文件用来检查内核数据结构的当前状态,因此,通常由GBD通常调试工具使用,但不能使用文件查看命令打开此文件;

2.17、/proc/kmsg

此文件用来保存由内核输出的信息,通常由/sbin/klogd或/bin/dmsg等程序使用,不要试图使用查看命令打开此文件;

2.18、/proc/loadavg

保存关于CPU和磁盘I/O的负载平均值,其前三列分别表示每1秒钟、每5秒钟及每15秒的负载平均值,类似于uptime命令输出的相关信息;第四列是由斜线隔开的两个数值,前者表示当前正由内核调度的实体(进程和线程)的数目,后者表示系统当前存活的内核调度实体的数目;第五列表示此文件被查看前最近一个由内核创建的进程的PID;

[root@test7 proc]# cat /proc/loadavg
0.00 0.01 0.05 3/364 1255
8
[root@test7 proc]# uptime20:15:49 up 12:13,  3 users,  load average: 0.00, 0.01, 0.05

2.19、/proc/locks

保存当前由内核锁定的文件的相关信息,包含内核内部的调试数据;每个锁定占据一行,且具有一个惟一的编号;如下输出信息中每行的第二列表示当前锁定使用的锁定类别,POSIX表示目前较新类型的文件锁,由lockf系统调用产生,FLOCK是传统的UNIX文件锁,由flock系统调用产生;第三列也通常由两种类型,ADVISORY表示不允许其他用户锁定此文件,但允许读取,MANDATORY表示此文件锁定期间不允许其他用户任何形式的访问;

[root@test7 proc]# cat /proc/locks
1: FLOCK  ADVISORY  WRITE 1357 fd:01:67108998 0 EOF
2: FLOCK  ADVISORY  WRITE 1357 fd:01:554850 0 EOF
3: FLOCK  ADVISORY  WRITE 846 00:12:15490 0 EOF
4: POSIX  ADVISORY  WRITE 696 00:12:13268 0 EOF

2.20、/proc/mdstat

保存RAID相关的多块磁盘的当前状态信息,在没有使用RAID机器上,其显示为如下状态:

[root@test7 proc]# cat /proc/mdstat
Personalities :
unused devices: <none>

md=multiple disks

2.21、/proc/meminfo

系统中关于当前内存的利用状况等的信息,常由free命令使用;可以使用文件查看命令直接读取此文件,其内容显示为两列,前者为统计属性,后者为对应的值;

[root@test7 proc]# cat /proc/meminfo
MemTotal:         487352 kB
MemFree:          165192 kB
MemAvailable:     314776 kB
Buffers:               0 kB
Cached:           194992 kB
SwapCached:          436 kB
Active:           162628 kB
Inactive:          61904 kB
Active(anon):       2592 kB
Inactive(anon):    29180 kB
Active(file):     160036 kB
Inactive(file):    32724 kB
Unevictable:           0 kB
Mlocked:               0 kB
SwapTotal:       1081340 kB
SwapFree:        1078664 kB
Dirty:                 0 kB
Writeback:             0 kB
AnonPages:         29272 kB
Mapped:            12800 kB
Shmem:              2232 kB
Slab:              52852 kB
SReclaimable:      31228 kB
SUnreclaim:        21624 kB
KernelStack:        3920 kB
PageTables:         3272 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:     1325016 kB
Committed_AS:     237492 kB
VmallocTotal:   34359738367 kB
VmallocUsed:      186688 kB
VmallocChunk:   34359533564 kB
HardwareCorrupted:     0 kB
AnonHugePages:         0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
DirectMap4k:       55168 kB
DirectMap2M:      468992 kB
DirectMap1G:           0 kB

2.22、/proc/mounts

在内核2.4.29版本以前,此文件的内容为系统当前挂载的所有文件系统,在2.4.19以后的内核中引进了每个进程使用独立挂载名称空间的方式,此文件则随之变成了指向/proc/self/mounts(每个进程自身挂载名称空间中的所有挂载点列表)文件的符号链接;/proc/self是一个独特的目录,后文中会对此目录进行介绍;

[root@test7 proc]# cat /proc/mounts
rootfs / rootfs rw 0 0
proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0
sysfs /sys sysfs rw,nosuid,nodev,noexec,relatime 0 0
devtmpfs /dev devtmpfs rw,nosuid,size=237300k,nr_inodes=59325,mode=755 0 0
securityfs /sys/kernel/security securityfs rw,nosuid,nodev,noexec,relatime 0 0
tmpfs /dev/shm tmpfs rw,nosuid,nodev 0 0
devpts /dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0
tmpfs /run tmpfs rw,nosuid,nodev,mode=755 0 0
tmpfs /sys/fs/cgroup tmpfs rw,nosuid,nodev,noexec,mode=755 0 0
cgroup /sys/fs/cgroup/systemd cgroup rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/usr/lib/systemd/systemd-cgroups-agent,name=systemd 0 0
pstore /sys/fs/pstore pstore rw,nosuid,nodev,noexec,relatime 0 0
cgroup /sys/fs/cgroup/cpuset cgroup rw,nosuid,nodev,noexec,relatime,cpuset 0 0
cgroup /sys/fs/cgroup/cpu,cpuacct cgroup rw,nosuid,nodev,noexec,relatime,cpuacct,cpu 0 0
cgroup /sys/fs/cgroup/memory cgroup rw,nosuid,nodev,noexec,relatime,memory 0 0
cgroup /sys/fs/cgroup/devices cgroup rw,nosuid,nodev,noexec,relatime,devices 0 0
cgroup /sys/fs/cgroup/freezer cgroup rw,nosuid,nodev,noexec,relatime,freezer 0 0
cgroup /sys/fs/cgroup/net_cls cgroup rw,nosuid,nodev,noexec,relatime,net_cls 0 0
cgroup /sys/fs/cgroup/blkio cgroup rw,nosuid,nodev,noexec,relatime,blkio 0 0
cgroup /sys/fs/cgroup/perf_event cgroup rw,nosuid,nodev,noexec,relatime,perf_event 0 0
cgroup /sys/fs/cgroup/hugetlb cgroup rw,nosuid,nodev,noexec,relatime,hugetlb 0 0
configfs /sys/kernel/config configfs rw,relatime 0 0
/dev/mapper/centos-root / xfs rw,relatime,attr2,inode64,noquota 0 0
systemd-1 /proc/sys/fs/binfmt_misc autofs rw,relatime,fd=33,pgrp=1,timeout=300,minproto=5,maxproto=5,direct 0 0
mqueue /dev/mqueue mqueue rw,relatime 0 0
hugetlbfs /dev/hugepages hugetlbfs rw,relatime 0 0
debugfs /sys/kernel/debug debugfs rw,relatime 0 0
/dev/sda1 /boot xfs rw,relatime,attr2,inode64,noquota 0 0
/dev/mapper/centos-home /home xfs rw,relatime,attr2,inode64,noquota 0 0
binfmt_misc /proc/sys/fs/binfmt_misc binfmt_misc rw,relatime 0 0

如下所示,其中第一列表示挂载的设备,第二列表示在当前目录树中的挂载点,第三点表示当前文件系统的类型,第四列表示挂载属性(ro或者rw),第五列和第六列用来匹配/etc/mtab文件中的转储(dump)属性;

[root@test7 proc]# md5sum /etc/mtab
0104700953e592b6147e927c9077b0b5  /etc/mtab
[root@test7 proc]# md5sum /proc/mounts
0104700953e592b6147e927c9077b0b5  /proc/mounts

mount命令类似,但比mount多一行,rootfs / rootfs rw 0 0,mount命令执行没有这行内容

2.23、/proc/modules

当前装入内核的所有模块名称列表,可以由lsmod命令使用,也可以直接查看;如下所示,其中第一列表示模块名,第二列表示此模块占用内存空间大小,第三列表示此模块有多少实例被装入,第四列表示此模块依赖于其它哪些模块,第五列表示此模块的装载状态(Live:已经装入;Loading:正在装入;Unloading:正在卸载),第六列表示此模块在内核内存(kernel memory)中的偏移量;

[root@test7 proc]# cat /proc/modules
binfmt_misc 17468 1 - Live 0xffffffffa0415000
iptable_filter 12810 0 - Live 0xffffffffa03f7000
ip_tables 27239 1 iptable_filter, Live 0xffffffffa040d000
sg 36533 0 - Live 0xffffffffa0403000
crct10dif_pclmul 14289 0 - Live 0xffffffffa03f2000
crc32_pclmul 13113 0 - Live 0xffffffffa0385000
crc32c_intel 22079 0 - Live 0xffffffffa03fc000
ghash_clmulni_intel 13259 0 - Live 0xffffffffa029e000
snd_ens1371 25243 0 - Live 0xffffffffa03a3000
snd_rawmidi 30423 1 snd_ens1371, Live 0xffffffffa03e9000
snd_ac97_codec 130236 1 snd_ens1371, Live 0xffffffffa03c8000
ac97_bus 12730 1 snd_ac97_codec, Live 0xffffffffa0299000
snd_seq 61519 0 - Live 0xffffffffa03b7000
snd_seq_device 14497 2 snd_rawmidi,snd_seq, Live 0xffffffffa03ae000
snd_pcm 97511 2 snd_ens1371,snd_ac97_codec, Live 0xffffffffa038a000
aesni_intel 55624 0 - Live 0xffffffffa0376000
lrw 13286 1 aesni_intel, Live 0xffffffffa0371000
gf128mul 14951 1 lrw, Live 0xffffffffa036c000
vmw_balloon 13415 0 - Live 0xffffffffa0367000
glue_helper 13990 1 aesni_intel, Live 0xffffffffa0362000
ablk_helper 13597 1 aesni_intel, Live 0xffffffffa0350000
cryptd 20359 3 ghash_clmulni_intel,aesni_intel,ablk_helper, Live 0xffffffffa0355000
pcspkr 12718 0 - Live 0xffffffffa034b000
serio_raw 13462 0 - Live 0xffffffffa035d000
btusb 28219 0 - Live 0xffffffffa02a3000
snd_page_alloc 18710 1 snd_pcm, Live 0xffffffffa02bf000
snd_timer 29482 2 snd_seq,snd_pcm, Live 0xffffffffa0265000
bluetooth 372662 2 btusb, Live 0xffffffffa02ef000
e1000 149270 0 - Live 0xffffffffa02c9000
snd 74645 7 snd_ens1371,snd_rawmidi,snd_ac97_codec,snd_seq,snd_seq_device,snd_pcm,snd_timer, Live 0xffffffffa02ab000
rfkill 26536 1 bluetooth, Live 0xffffffffa0291000
soundcore 15047 1 snd, Live 0xffffffffa0288000
vmw_vmci 67106 0 - Live 0xffffffffa0276000
i2c_piix4 22106 0 - Live 0xffffffffa026f000
shpchp 37032 0 - Live 0xffffffffa013e000
mperf 12667 0 - Live 0xffffffffa012e000
xfs 914152 3 - Live 0xffffffffa0184000
libcrc32c 12644 1 xfs, Live 0xffffffffa011d000
sr_mod 22416 0 - Live 0xffffffffa0127000
cdrom 42556 1 sr_mod, Live 0xffffffffa0178000
ata_generic 12910 0 - Live 0xffffffffa00be000
pata_acpi 13038 0 - Live 0xffffffffa0118000
sd_mod 45373 3 - Live 0xffffffffa016b000
crc_t10dif 12714 1 sd_mod, Live 0xffffffffa0022000
crct10dif_common 12595 2 crct10dif_pclmul,crc_t10dif, Live 0xffffffffa0122000
vmwgfx 135143 1 - Live 0xffffffffa0149000
ttm 83948 1 vmwgfx, Live 0xffffffffa006f000
ata_piix 35038 0 - Live 0xffffffffa0134000
drm 297829 2 vmwgfx,ttm, Live 0xffffffffa00ce000
mptspi 22542 2 - Live 0xffffffffa00a1000
scsi_transport_spi 30732 1 mptspi, Live 0xffffffffa00c5000
i2c_core 40325 2 i2c_piix4,drm, Live 0xffffffffa00b3000
mptscsih 40150 1 mptspi, Live 0xffffffffa00a8000
mptbase 105960 2 mptspi,mptscsih, Live 0xffffffffa0086000
libata 219478 3 ata_generic,pata_acpi,ata_piix, Live 0xffffffffa0038000
dm_mirror 22135 0 - Live 0xffffffffa002d000
dm_region_hash 20862 1 dm_mirror, Live 0xffffffffa001b000
dm_log 18411 2 dm_mirror,dm_region_hash, Live 0xfff

2.24、/proc/partitions

块设备每个分区的主设备号(major)和次设备号(minor)等信息,同时包括每个分区所包含的块(block)数目(如下面输出中第三列所示);

[root@test7 proc]# cat /proc/partitions
major minor  #blocks  name8        0  104857600 sda8        1     512000 sda18        2  104344576 sda211        0    1048575 sr0253        0    1081344 dm-0253        1   52428800 dm-1253        2   50831360 dm-2

2.25、/proc/pci

内核初始化时发现的所有PCI设备及其配置信息列表,其配置信息多为某PCI设备相关IRQ信息,可读性不高,可以用“/sbin/lspci –vb”命令获得较易理解的相关信息;在2.6内核以后,此文件已为/proc/bus/pci目录及其下的文件代替;

[root@test7 proc]# tree /proc/bus/pci/
/proc/bus/pci/
├── 00
│   ├── 00.0
│   ├── 01.0
│   ├── 07.0
│   ├── 07.1
│   ├── 07.3
│   ├── 07.7
│   ├── 0f.0
│   ├── 10.0
│   ├── 11.0
│   ├── 15.0
│   ├── 15.1
│   ├── 15.2
│   ├── 15.3
│   ├── 15.4
│   ├── 15.5
│   ├── 15.6
│   ├── 15.7
│   ├── 16.0
│   ├── 16.1
│   ├── 16.2
│   ├── 16.3
│   ├── 16.4
│   ├── 16.5
│   ├── 16.6
│   ├── 16.7
│   ├── 17.0
│   ├── 17.1
│   ├── 17.2
│   ├── 17.3
│   ├── 17.4
│   ├── 17.5
│   ├── 17.6
│   ├── 17.7
│   ├── 18.0
│   ├── 18.1
│   ├── 18.2
│   ├── 18.3
│   ├── 18.4
│   ├── 18.5
│   ├── 18.6
│   └── 18.7
├── 02
│   ├── 00.0
│   ├── 01.0
│   ├── 02.0
│   └── 03.0
└── devices

2.26、/proc/slabinfo

在内核中频繁使用的对象(如inode、dentry等)都有自己的cache,即slab pool,而/proc/slabinfo文件列出了这些对象相关slap的信息;详情可以参见内核文档中slapinfo的手册页;

[root@test7 proc]# cat /proc/slabinfo
slabinfo - version: 2.1
# name            <active_objs> <num_objs> <objsize> <objperslab> <pagesperslab> : tunables <limit> <batchcount> <sharedfactor> : slabdata <active_slabs> <num_slabs> <sharedavail>
xfs_dqtrx              0      0    576   56    8 : tunables    0    0    0 : slabdata      0      0      0
xfs_icr                0      0    144   56    2 : tunables    0    0    0 : slabdata      0      0      0
xfs_ili             1323   2809    152   53    2 : tunables    0    0    0 : slabdata     53     53      0
xfs_inode           1332   1664   1024   32    8 : tunables    0    0    0 : slabdata     52     52      0
xfs_efd_item         600    800    400   40    4 : tunables    0    0    0 : slabdata     20     20      0
xfs_da_state          67     67    488   67    8 : tunables    0    0    0 : slabdata      1      1      0
xfs_btree_cur         39     39    208   39    2 : tunables    0    0    0 : slabdata      1      1      0
xfs_log_ticket       308    308    184   44    2 : tunables    0    0    0 : slabdata      7      7      0
scsi_cmd_cache        36     36    448   36    4 : tunables    0    0    0 : slabdata      1      1      0
kcopyd_job             0      0   3312    9    8 : tunables    0    0    0 : slabdata      0      0      0
dm_uevent              0      0   2608   12    8 : tunables    0    0    0 : slabdata      0      0      0
dm_rq_target_io        0      0    424   38    4 : tunables    0    0    0 : slabdata      0      0      0
UDPLITEv6              0      0   1152   28    8 : tunables    0    0    0 : slabdata      0      0      0
UDPv6                 28     28   1152   28    8 : tunables    0    0    0 : slabdata      1      1      0
tw_sock_TCPv6          0      0    256   64    4 : tunables    0    0    0 : slabdata      0      0      0
TCPv6                 16     16   2048   16    8 : tunables    0    0    0 : slabdata      1      1      0
cfq_queue            490    490    232   70    4 : tunables    0    0    0 : slabdata      7      7      0
bsg_cmd                0      0    312   52    4 : tunables    0    0    0 : slabdata      0      0      0
mqueue_inode_cache     36     36    896   36    8 : tunables    0    0    0 : slabdata      1      1      0
hugetlbfs_inode_cache     53     53    608   53    8 : tunables    0    0    0 : slabdata      1      1      0
configfs_dir_cache     46     46     88   46    1 : tunables    0    0    0 : slabdata      1      1      0
dquot                  0      0    256   64    4 : tunables    0    0    0 : slabdata      0      0      0
pid_namespace          0      0   2176   15    8 : tunables    0    0    0 : slabdata      0      0      0
posix_timers_cache      0      0    248   66    4 : tunables    0    0    0 : slabdata      0      0      0
UDP-Lite               0      0   1024   32    8 : tunables    0    0    0 : slabdata      0      0      0
ip_fib_trie           73     73     56   73    1 : tunables    0    0    0 : slabdata      1      1      0
RAW                  306    306    960   34    8 : tunables    0    0    0 : slabdata      9      9      0
UDP                   32     32   1024   32    8 : tunables    0    0    0 : slabdata      1      1      0
tw_sock_TCP           64     64    256   64    4 : tunables    0    0    0 : slabdata      1      1      0
TCP                   34     34   1920   17    8 : tunables    0    0    0 : slabdata      2      2      0
blkdev_queue          17     17   1920   17    8 : tunables    0    0    0 : slabdata      1      1      0
blkdev_requests      588    588    384   42    4 : tunables    0    0    0 : slabdata     14     14      0
blkdev_ioc            78     78    104   39    1 : tunables    0    0    0 : slabdata      2      2      0
fsnotify_event_holder    170    170     24  170    1 : tunables    0    0    0 : slabdata      1      1      0
fsnotify_event       408    408    120   68    2 : tunables    0    0    0 : slabdata      6      6      0
sock_inode_cache     510    510    640   51    8 : tunables    0    0    0 : slabdata     10     10      0
net_namespace          0      0   4224    7    8 : tunables    0    0    0 : slabdata      0      0      0
shmem_inode_cache    912    912    680   48    8 : tunables    0    0    0 : slabdata     19     19      0
Acpi-ParseExt       6272   6272     72   56    1 : tunables    0    0    0 : slabdata    112    112      0
Acpi-Namespace      5100   5100     40  102    1 : tunables    0    0    0 : slabdata     50     50      0
taskstats             49     49    328   49    4 : tunables    0    0    0 : slabdata      1      1      0
proc_inode_cache    2891   2891    656   49    8 : tunables    0    0    0 : slabdata     59     59      0
sigqueue              51     51    160   51    2 : tunables    0    0    0 : slabdata      1      1      0
bdev_cache            39     39    832   39    8 : tunables    0    0    0 : slabdata      1      1      0
sysfs_dir_cache    20412  20412    112   36    1 : tunables    0    0    0 : slabdata    567    567      0
inode_cache        27830  27830    592   55    8 : tunables    0    0    0 : slabdata    506    506      0
dentry             36120  36120    192   42    2 : tunables    0    0    0 : slabdata    860    860      0
iint_cache             0      0     80   51    1 : tunables    0    0    0 : slabdata      0      0      0
selinux_inode_security  12648  12648     80   51    1 : tunables    0    0    0 : slabdata    248    248      0
buffer_head        28665  28665    104   39    1 : tunables    0    0    0 : slabdata    735    735      0
vm_area_struct      3095   3330    216   37    2 : tunables    0    0    0 : slabdata     90     90      0
mm_struct             60     60   1600   20    8 : tunables    0    0    0 : slabdata      3      3      0
files_cache          204    204    640   51    8 : tunables    0    0    0 : slabdata      4      4      0
signal_cache         644    644   1152   28    8 : tunables    0    0    0 : slabdata     23     23      0
sighand_cache        510    510   2112   15    8 : tunables    0    0    0 : slabdata     34     34      0
task_xstate          546    546    832   39    8 : tunables    0    0    0 : slabdata     14     14      0
task_struct          509    528   2912   11    8 : tunables    0    0    0 : slabdata     48     48      0
anon_vma            1984   1984     64   64    1 : tunables    0    0    0 : slabdata     31     31      0
shared_policy_node   2125   2125     48   85    1 : tunables    0    0    0 : slabdata     25     25      0
numa_policy          186    186    264   62    4 : tunables    0    0    0 : slabdata      3      3      0
radix_tree_node     1843   2296    584   56    8 : tunables    0    0    0 : slabdata     41     41      0
idr_layer_cache      150    150   2112   15    8 : tunables    0    0    0 : slabdata     10     10      0
dma-kmalloc-8192       0      0   8192    4    8 : tunables    0    0    0 : slabdata      0      0      0
dma-kmalloc-4096       0      0   4096    8    8 : tunables    0    0    0 : slabdata      0      0      0
dma-kmalloc-2048       0      0   2048   16    8 : tunables    0    0    0 : slabdata      0      0      0
dma-kmalloc-1024       0      0   1024   32    8 : tunables    0    0    0 : slabdata      0      0      0
dma-kmalloc-512       64     64    512   64    8 : tunables    0    0    0 : slabdata      1      1      0
dma-kmalloc-256        0      0    256   64    4 : tunables    0    0    0 : slabdata      0      0      0
dma-kmalloc-128        0      0    128   64    2 : tunables    0    0    0 : slabdata      0      0      0
dma-kmalloc-64         0      0     64   64    1 : tunables    0    0    0 : slabdata      0      0      0
dma-kmalloc-32         0      0     32  128    1 : tunables    0    0    0 : slabdata      0      0      0
dma-kmalloc-16         0      0     16  256    1 : tunables    0    0    0 : slabdata      0      0      0
dma-kmalloc-8          0      0      8  512    1 : tunables    0    0    0 : slabdata      0      0      0
dma-kmalloc-192        0      0    192   42    2 : tunables    0    0    0 : slabdata      0      0      0
dma-kmalloc-96         0      0     96   42    1 : tunables    0    0    0 : slabdata      0      0      0
kmalloc-8192          28     52   8192    4    8 : tunables    0    0    0 : slabdata     13     13      0
kmalloc-4096         167    184   4096    8    8 : tunables    0    0    0 : slabdata     23     23      0
kmalloc-2048         385    480   2048   16    8 : tunables    0    0    0 : slabdata     30     30      0
kmalloc-1024        2125   2368   1024   32    8 : tunables    0    0    0 : slabdata     74     74      0
kmalloc-512         3488   3904    512   64    8 : tunables    0    0    0 : slabdata     61     61      0
kmalloc-256         2380   3072    256   64    4 : tunables    0    0    0 : slabdata     48     48      0
kmalloc-192         5335   5628    192   42    2 : tunables    0    0    0 : slabdata    134    134      0
kmalloc-128         3897   4480    128   64    2 : tunables    0    0    0 : slabdata     70     70      0
kmalloc-96          1638   1638     96   42    1 : tunables    0    0    0 : slabdata     39     39      0
kmalloc-64          8951  10816     64   64    1 : tunables    0    0    0 : slabdata    169    169      0
kmalloc-32          2816   2816     32  128    1 : tunables    0    0    0 : slabdata     22     22      0
kmalloc-16          3328   3328     16  256    1 : tunables    0    0    0 : slabdata     13     13      0
kmalloc-8           5632   5632      8  512    1 : tunables    0    0    0 : slabdata     11     11      0
kmem_cache_node      128    128     64   64    1 : tunables    0    0    0 : slabdata      2      2      0
kmem_cache           128    128    256   64    4 : tunables    0    0    0 : slabdata      2      2      0

2.27、/proc/stat

实时追踪自系统上次启动以来的多种统计信息;如下所示,其中,

“cpu”行后的八个值分别表示以1/100(jiffies)秒为单位的统计值(包括系统运行于用户模式、低优先级用户模式,运系统模式、空闲模式、I/O等待模式的时间等);

“intr”行给出中断的信息,第一个为自系统启动以来,发生的所有的中断的次数;然后每个数对应一个特定的中断自系统启动以来所发生的次数;

“ctxt”给出了自系统启动以来CPU发生的上下文交换的次数。

“btime”给出了从系统启动到现在为止的时间,单位为秒;

“processes
(total_forks) 自系统启动以来所创建的任务的个数目;

“procs_running”:当前运行队列的任务的数目;

“procs_blocked”:当前被阻塞的任务的数目;

[root@test7 proc]# cat /proc/stat
cpu  4474 52 6023 4437553 300 0 2412 0 0 0
cpu0 4474 52 6023 4437553 300 0 2412 0 0 0
intr 960653 151 54 0 0 0 0 0 0 1 0 0 0 303 0 0 43616 0 40524 238 179333 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
ctxt 1169510
btime 1656590520
processes 12710
procs_running 2
procs_blocked 0
softirq 872694 1 605826 8915 177050 59719 0 100 0 1446 1963

2.28、/proc/swaps

当前系统上的交换分区及其空间利用信息,如果有多个交换分区的话,则会每个交换分区的信息分别存储于/proc/swap目录中的单独文件中,而其优先级数字越低,被使用到的可能性越大;下面是作者系统中只有一个交换分区时的输出信息;

[root@test7 proc]# cat /proc/swaps
Filename                        Type            Size    Used    Priority
/dev/dm-0                               partition       1081340 2672

2.29、/proc/uptime

系统上次启动以来的运行时间,如下所示,其第一个数字表示系统运行时间,第二个数字表示系统空闲时间,单位是秒;

[root@test7 proc]# cat /proc/uptime
44602.58 44461.27

2.30、/proc/version

当前系统运行的内核版本号,在作者的RHEL5.3上还会显示系统安装的gcc版本,如下所示;

[root@test7 proc]# cat /proc/version
Linux version 3.10.0-123.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.2 20140120 (Red Hat 4.8.2-16) (GCC) ) #1 SMP Mon Jun 30 12:09:22 UTC 2014

2.31、/proc/vmstat

当前系统虚拟内存的多种统计数据,信息量可能会比较大,这因系统而有所不同,可读性较好;下面为作者机器上输出信息的一个片段;(2.6以后的内核支持此文件)

[root@test7 proc]# cat /proc/version
Linux version 3.10.0-123.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.2 20140120 (Red Hat 4.8.2-16) (GCC) ) #1 SMP Mon Jun 30 12:09:22 UTC 2014
[root@test7 proc]# cat /proc/vmstat
nr_free_pages 41267
nr_alloc_batch 298
nr_inactive_anon 7295
nr_active_anon 652
nr_inactive_file 8186
nr_active_file 40015
nr_unevictable 0
nr_mlock 0
nr_anon_pages 7322
nr_mapped 3201
nr_file_pages 48868
nr_dirty 0
nr_writeback 0
nr_slab_reclaimable 7807
nr_slab_unreclaimable 5406
nr_page_table_pages 818
nr_kernel_stack 490
nr_unstable 0
nr_bounce 0
nr_vmscan_write 790
nr_vmscan_immediate_reclaim 39
nr_writeback_temp 0
nr_isolated_anon 0
nr_isolated_file 0
nr_shmem 559
nr_dirtied 413618
nr_written 413788
numa_hit 2084085
numa_miss 0
numa_foreign 0
numa_interleave 9325
numa_local 2084085
numa_other 0
workingset_refault 93613
workingset_activate 57579
workingset_nodereclaim 0
nr_anon_transparent_hugepages 0
nr_free_cma 0
nr_dirty_threshold 22296
nr_dirty_background_threshold 7432
pgpgin 712511
pgpgout 1700944
pswpin 208
pswpout 790
pgalloc_dma 71420
pgalloc_dma32 2216579
pgalloc_normal 0
pgalloc_movable 0
pgfree 2329390
pgactivate 349768
pgdeactivate 329336
pgfault 3294293
pgmajfault 2455
pgrefill_dma 9884
pgrefill_dma32 334282
pgrefill_normal 0
pgrefill_movable 0
pgsteal_kswapd_dma 9648
pgsteal_kswapd_dma32 342370
pgsteal_kswapd_normal 0
pgsteal_kswapd_movable 0
pgsteal_direct_dma 12
pgsteal_direct_dma32 634
pgsteal_direct_normal 0
pgsteal_direct_movable 0
pgscan_kswapd_dma 10182
pgscan_kswapd_dma32 356175
pgscan_kswapd_normal 0
pgscan_kswapd_movable 0
pgscan_direct_dma 12
pgscan_direct_dma32 696
pgscan_direct_normal 0
pgscan_direct_movable 0
pgscan_direct_throttle 0
zone_reclaim_failed 0
pginodesteal 0
slabs_scanned 130304
kswapd_inodesteal 7133
kswapd_low_wmark_hit_quickly 33
kswapd_high_wmark_hit_quickly 133
pageoutrun 209
allocstall 12
pgrotated 830
drop_pagecache 4
drop_slab 4
numa_pte_updates 0
numa_huge_pte_updates 0
numa_hint_faults 0
numa_hint_faults_local 0
numa_pages_migrated 0
pgmigrate_success 0
pgmigrate_fail 0
compact_migrate_scanned 0
compact_free_scanned 0
compact_isolated 0
compact_stall 0
compact_fail 0
compact_success 0
htlb_buddy_alloc_success 0
htlb_buddy_alloc_fail 0
unevictable_pgs_culled 10483
unevictable_pgs_scanned 0
unevictable_pgs_rescued 9596
unevictable_pgs_mlocked 11938
unevictable_pgs_munlocked 11938
unevictable_pgs_cleared 0
unevictable_pgs_stranded 0
thp_fault_alloc 76
thp_fault_fallback 14
thp_collapse_alloc 44
thp_collapse_alloc_failed 4
thp_split 5
thp_zero_page_alloc 0
thp_zero_page_alloc_failed 0

2.32、/proc/zoneinfo

内存区域(zone)的详细信息列表,信息量较大,下面列出的是一个输出片段:

[root@test7 proc]# cat /proc/zoneinfo
Node 0, zone      DMApages free     1186min      197low      246high     295scanned  0spanned  4095present  3997managed  3976nr_free_pages 1186nr_alloc_batch 49nr_inactive_anon 339nr_active_anon 51nr_inactive_file 364nr_active_file 1430nr_unevictable 0nr_mlock     0nr_anon_pages 350nr_mapped    178nr_file_pages 1834nr_dirty     0nr_writeback 0nr_slab_reclaimable 242nr_slab_unreclaimable 102nr_page_table_pages 34nr_kernel_stack 4nr_unstable  0nr_bounce    0nr_vmscan_write 0nr_vmscan_immediate_reclaim 0nr_writeback_temp 0nr_isolated_anon 0nr_isolated_file 0nr_shmem     40nr_dirtied   11191nr_written   11182numa_hit     66196numa_miss    0numa_foreign 0numa_interleave 0numa_local   66196numa_other   0workingset_refault 2466workingset_activate 1260workingset_nodereclaim 0nr_anon_transparent_hugepages 0nr_free_cma  0protection: (0, 447, 447, 447)pagesetscpu: 0count: 0high:  0batch: 1vm stats threshold: 2all_unreclaimable: 0start_pfn:         1inactive_ratio:    1
Node 0, zone    DMA32pages free     40081min      5683low      7103high     8524scanned  0spanned  126976present  126944managed  114675nr_free_pages 40081nr_alloc_batch 55nr_inactive_anon 6956nr_active_anon 601nr_inactive_file 7822nr_active_file 38585nr_unevictable 0nr_mlock     0nr_anon_pages 6972nr_mapped    3023nr_file_pages 47034nr_dirty     0nr_writeback 0nr_slab_reclaimable 7565nr_slab_unreclaimable 5304nr_page_table_pages 784nr_kernel_stack 486nr_unstable  0nr_bounce    0nr_vmscan_write 790nr_vmscan_immediate_reclaim 39nr_writeback_temp 0nr_isolated_anon 0nr_isolated_file 0nr_shmem     519nr_dirtied   402427nr_written   402606numa_hit     2018081numa_miss    0numa_foreign 0numa_interleave 9325numa_local   2018081numa_other   0workingset_refault 91147workingset_activate 56319workingset_nodereclaim 0nr_anon_transparent_hugepages 0nr_free_cma  0protection: (0, 0, 0, 0)pagesetscpu: 0count: 125high:  186batch: 31vm stats threshold: 6all_unreclaimable: 0start_pfn:         4096inactive_ratio:    1

三、/proc/sys目录详解

与/proc下其它文件的“只读”属性不同的是,管理员可对/proc/sys子目录中的许多文件内容进行修改以更改内核的运行特性,事先可以使用“ls -l”命令查看某文件是否“可写入”。写入操作通常使用类似于“echo DATA

/path/to/your/filename”的格式进行。需要注意的是,即使文件可写,其一般也不可以使用编辑器进行编辑。

3.1、/proc/sys/debug 子目录

[root@test7 proc]# cd sys
[root@test7 sys]# ll
total 0
dr-xr-xr-x 1 root root 0 Jun 30 17:24 abi
dr-xr-xr-x 1 root root 0 Jun 30 08:02 crypto
dr-xr-xr-x 1 root root 0 Jun 30 17:24 debug
dr-xr-xr-x 1 root root 0 Jun 30 17:24 dev
dr-xr-xr-x 1 root root 0 Jun 30 08:02 fs
dr-xr-xr-x 1 root root 0 Jun 30 08:02 kernel
dr-xr-xr-x 1 root root 0 Jun 30 18:14 net
dr-xr-xr-x 1 root root 0 Jun 30 08:02 vm
[root@test7 sys]# cd debug/
[root@test7 sys]# ls -l
-rw-r--r-- 1 root root 0 Jun 30 18:14 exception-trace
-rw-r--r-- 1 root root 0 Jun 30 18:14 kprobes-optimization
[root@test7 debug]# cat exception-trace
1
[root@test7 debug]# cat kprobes-optimization
1

3.2、/proc/sys/dev 子目录

为系统上特殊设备提供参数信息文件的目录,其不同设备的信息文件分别存储于不同的子目录中,如大多数系统上都会具有的/proc/sys/dev/cdrom和/proc/sys/dev/raid(如果内核编译时开启了支持raid的功能)
目录,其内存储的通常是系统上cdrom和raid的相关参数信息文件。

上述配置均为虚机配置,非正式环境。

CentOS Linux release 7.0.1406 (Core)

【Linux】proc详解相关推荐

  1. linux /proc 详解

    linux /proc 详解 本文整理了一下 linux /proc下的几个常用的目录和文件,可供查阅,之后在学习工作中有别的用到的话会再补充. /proc 简介 Linux系统上的/proc目录是一 ...

  2. Linux proc详解

    本文转自:http://hi.baidu.com/beyond907/blog/item/250f41249c9fbb7435a80fd2.html Linux procfs详解 1.0 proc文件 ...

  3. Linux系统结构 详解

    Linux系统结构 详解 标签: 产品产品设计googleapple互联网 2011-01-07 14:14 31038人阅读 评论(6) 收藏 举报 分类: Linux(21) 版权声明:本文为博主 ...

  4. Linux: 系统结构详解

    Linux系统一般有4个主要部分: 内核.shell.文件系统和应用程序.内核.shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序.管理文件并使用系统.部分层次结构如图1-1所 ...

  5. linux syslog详解-------未测试

    原文:http://www.cnblogs.com/skyofbitbit/p/3674664.html linux syslog详解 分三部分 一.syslog协议介绍 二.syslog函数 三.l ...

  6. Linux使用详解(进阶篇)

    文章目录 Linux使用详解(进阶篇) 1.Linux目录说明 2.操作防火墙 3.ulimit命令和history命令 4.RPM和Yum的使用 5.设置系统字符集 6.vi & vim编辑 ...

  7. 云计算概念及Linux系统详解

    云计算概念及linux系统详解 先来看一下维基百科上的定义: 云计算是一种按使用量付费的模式,这种模式提供可用的.便捷的.按需的网络访问,进入可配置的网络.服务器.存储.应用软件.服务等能够被快速提供 ...

  8. Linux进程详解 【Linux由基础到进阶】

    Linux进程详解 进程的概念: 虚拟处理器: 虚拟内存: 进程的产生 进程的管理 进程描述符 分配进程描述符 进程描述符的存放 进程的状态 设置进程状态 进程上下文 系统调用与库函数的区别 进程家族 ...

  9. Linux 系统结构详解——新手上路

    Linux 系统结构详解 Linux系统一般有4个主要部分: 内核.shell.文件系统和应用程序.内核.shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序.管理文件并使用系统 ...

最新文章

  1. STM32 KEIL中 负数绝对值处理
  2. python scapy 函数_【python|scapy】sprintf输出时raw_string转string
  3. Node.js 快速了解
  4. 一文讲透 “进程、线程、协程”
  5. python搜索大文件
  6. python123平台作业答案第十二周_【2018年 网鼎杯CTF 第二场】红日安全-网鼎杯WriteUp(24日 更新:web详解)...
  7. Object类Objects类总结
  8. python 经典100例 (61-80)
  9. 国家开放大学2021春1070组织行为学题目
  10. vue 富文本编辑器 —— wangEditor
  11. chrome浏览器Flash Player版本太低,不能使用该上传功能!
  12. SDCC编译器简明使用教程
  13. Ubuntu下mysql-proxy服务器的配置
  14. 在Ubuntu下安装netspeed查看网络速度
  15. 电工结业试卷_修补电工结业论文
  16. linux卸载mysql(完全卸载)
  17. ANSYS|workbench输出梁的剪力图和弯矩图
  18. P2862 [USACO06JAN]Corral the Cows G
  19. 获取了职业资格证书二级/技师
  20. MVVM和MVC模型

热门文章

  1. CI/CD --- 什么才是真正的自动化平台
  2. 计算机毕业设计之java+springboot基于vue的校园疫情防控系统
  3. python partial函数
  4. SLAM论文速递:SLAM—— NICER-SLAM: RGB SLAM的神经隐式场景编码—5.04(1)
  5. Oracle Spacial(空间数据库)使用注意事项
  6. Vs code背景图
  7. android.view.InflateException错误的解决方法
  8. Xamarin 2.0:基于Mono跨平台开发框架
  9. 德语环境下浮点数精度错乱的解决办法
  10. 【吾爱破解第三期】修改版权和资源