文章是从网络寻找的,只是为了记忆
/proc目录下常用文件介绍:
/proc/loadavg 前三列分别保存最近1分钟,5分钟,及15分钟的平均负载。
/proc/meminfo 当前内存使用信息
/proc/diskstats 磁盘I/O统计信息列表
/proc/net/dev 网络流入流出统计信息
/proc/filesystems 支持的文件系统
/proc/cpuinfo CPU的详细信息
/proc/cmdline 启动时传递至内核的启动参数,通常由grub进行传递
/proc/mounts 系统当前挂在的文件系统
/proc/uptime 系统运行时间
/poc/version 当前运行的内核版本号等信息
cmdline
/proc/[pid]/cmdline是一个只读文件,包含进程的完整命令行信息。如果这个进程是zombie进程,则这个文件没有任何内容
cat /proc/2948/cmdline
comm
/proc/[pid]/comm包含进程的命令名。举例如下:
cat /proc/2948/comm
cwd
/proc/[pid]/cwd是进程当前工作目录的符号链接。举例如下:
ls -lt /proc/2948/cwd
environ
/proc/[pid]/environ显示进程的环境变量。举例如下:
strings /proc/2948/environ
exe
/proc/[pid]/exe为实际运行程序的符号链接。举例如下:
ls -lt /proc/2948/exe
fd
/proc/[pid]/fd是一个目录,包含进程打开文件的情况。举例如下:
ls -lt /proc/3801/fd
limits
/proc/[pid]/limits显示当前进程的资源限制。举例如下:
cat /proc/2948/limits
maps
/proc/[pid]/maps显示进程的内存区域映射信息。举例如下:
cat /proc/2948/maps
root
/proc/[pid]/root是进程根目录的符号链接。举例如下:
ls -lt /proc/2948/root
stack
/proc/[pid]/stack显示当前进程的内核调用栈信息,只有内核编译时打开了CONFIG_STACKTRACE编译选项,才会生成这个文件。举例如下:
cat /proc/2948/stack
statm
/proc/[pid]/statm显示进程所占用内存大小的统计信息,包含七个值,度量单位是page(page大小可通过getconf PAGESIZE得到)。举例如下:
cat /proc/2948/statm
syscall
/proc/[pid]/syscall显示当前进程正在执行的系统调用。举例如下:
cat /proc/2948/syscall
wchan
/proc/[pid]/wchan显示当进程sleep时,kernel当前运行的函数。举例如下:
cat /proc/2948/wchan