linux /proc 文件系统

/proc系统是一个伪文件系统,它只存在内存当中,而不占用外存空间,以文件系统的方式为内核与进程提供通信的接口。

/proc目录下有很多以数字命名的目录,每个数字代表进程号PID它们是进程目录。系统中当前运行的每一个进程在/proc下都对应一个以进程号为目录名的目录/proc/pid,

它们是读取进程信息的接口,我们可以进到这个文件里面,了解进程的运行时信息和统计信息。

1、/proc/pid/environ 包含了进程的可用环境变量的列表 。如果程序出问题了,想确定环境变量是否设置生效,可以cat这个文件出来查看确认一下。但要注意,只有在进程还在的时候才有用。

2、/proc/pid/comm 包含进程的命令名。

3、/proc/pid/exe 为实际运行程序的符号链接。

4、/proc/pid/fd/ 这个目录包含了进程打开的每一个文件的链接。从这里可以查看进程打开的文件描述符信息,包括标准输入、输出、错误流,进程打开的socket连接文件描述符也能看到,lsof命令也有类似的作用。目录中的每一项都是一个符号链接,指向打开的文件,数字则代表文件描述符。

可以用ls -l /proc/pid/fd | wc -l来计数

5、/proc/pid/stack 示当前进程的内核调用栈信息,只有内核编译时打开了 CONFIG_STACKTRACE 编译选项,才会生成这个文件。

相关推荐
陈布衣8 分钟前
MySQL(1)_MySQL 5.7.21 Linux 安装笔记
linux·笔记·mysql
分布式存储与RustFS1 小时前
给 RustFS 桶加一层内存缓存:用 Alluxio 让热数据少跑一遍网络
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
Oiiouui2 小时前
linux服务器部署Logto后端与对应前端的实现
linux·服务器·前端·后端
ITKEY_2 小时前
用 Emacs Dired 实现 em:退出文件管理器后,让终端自动切换目录
linux·服务器·emacs
wt95272 小时前
VMware 虚拟机磁盘扩容实战文档(Ubuntu 22.04 + LVM)
linux·后端
就像楞次定律3 小时前
【Linux 学习记之二】C++ 构建体系与底层链接机制的深度透视(2)
linux·后端
Decay__3 小时前
22_MySQL 运维自动化平台 —— 部署编排 + 监控 + 巡检 + 告警 + 工单闭环一体化
运维·数据库·sql·mysql·架构
无足鸟ICT3 小时前
【RHCA+】slabtop命令(查看slab缓存)
linux
且从容.3 小时前
Ubuntu 安装 Docker
linux·ubuntu·docker
青梅味猪大肠4 小时前
【操作系统-60】临近适应算法
java·linux·开发语言·嵌入式硬件·算法·操作系统