在许多类 Unix 计算机系统中, procfs 是 进程文件系统 (file system) 的缩写,包含一个伪文件系统(启动时动态生成的文件系统),用于通过内核访问进程信息。这个文件系统通常被挂载到 /proc 目录。由于 /proc 不是一个真正的文件系统,它也就不占用存储空间,只是占用有限的内存。
个正在运行的进程对应于/proc下的一个目录,目录名就是进程的PID,每个目录包含:
- /proc/PID/cmdline, 启动该进程的命令行.
- /proc/PID/cwd, 当前工作目录的符号链接.
- /proc/PID/environ 影响进程的环境变量的名字和值.
- /proc/PID/exe, 最初的可执行文件的符号链接, 如果它还存在的话。
- /proc/PID/fd, 一个目录,包含每个打开的文件描述符的符号链接.
- /proc/PID/fdinfo, 一个目录,包含每个打开的文件描述符的位置和标记
- /proc/PID/maps, 一个文本文件包含内存映射文件与块的信息。
- /proc/PID/mem, 一个二进制图像(image)表示进程的虚拟内存, 只能通过ptrace化进程访问.
- /proc/PID/root, 该进程所能看到的根路径的符号链接。如果没有chroot监狱,那么进程的根路径是/.
- /proc/PID/status 包含了进程的基本信息,包括运行状态、内存使用。
- /proc/PID/task, 一个目录包含了硬链接到该进程启动的任何任务