Linux编程学习笔记--proc文件系统
2012-6-23
linux中的/proc文件系统是一个虚拟的文件系统,由内核在运行时动态生成。它提供了内核运行时的配置和状态信息。用户可以通过这些文件来获取、或修改内核的信息。
关于proc,可以通过 man proc 获取详细的说明。
运行 mount 命令,可以看到 proc 文件系统的挂载信息。
下面列举一些proc文件系统中可能对用户有用的信息。
## 线程信息
在 /proc 目录下,以线程ID命名的文件目录包含了这个线程的运行信息。常用的有:
cmdline -- 线程参数列表
cwd -- 到线程运行目录的符号链接
exe -- 到可执行镜像的符号链接,可以获取运行程序的路径信息
fd -- 是一个目录,包含了这个线程打开的文件描述符
maps -- 映射到线程地址的文件信息
stat -- 线程的状态、统计信息,使用原始格式
statm -- 线程使用内存的信息
status -- 线程状态、统计信息,使用可读格式
environ -- 线程环境变量
/proc/self -- 到当前进程/proc目录的符号链接,通过这个目录可以获取当前运行进程的信息。
## 硬件信息
/proc/cpuinfo -- CPU信息
/proc/devices -- 字符、块设备的主驱动号
/proc/pci -- 挂接在PCI总线上的设备
/proc/tty/driver/serial --串口配置、统计信息
## 内核信息
/proc/version -- 系统版本信息
/proc/sys/kernel/ostype
/proc/sys/kernel/osrelease
/proc/sys/kernel/version
/proc/sys/kernel/hostname -- 主机名
/proc/sys/kernel/domainname -- 域名
/proc/meminfo -- 内存使用信息
## 文件系统
/proc/filesystems -- 内存可以识别的文件系统类型
/proc/ide
/proc/scsi
/proc/partitions -- 硬盘设备分区信息
/proc/sys/dev/cdrom/info -- CDROM信息
/proc/mounts -- 挂接文件系统的汇总
/proc/locks -- 当前系统中所有的文件锁
## 系统统计
/proc/loadavg -- 系统负荷信息
/proc/uptime -- 系统启动后的运行时间
## 学习材料
http://www.advancedlinuxprogramming.com/
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 现代计算机视觉入门之:什么是图片特征编码
· .NET 9 new features-C#13新的锁类型和语义
· Linux系统下SQL Server数据库镜像配置全流程详解
· 现代计算机视觉入门之:什么是视频
· Sdcb Chats 技术博客:数据库 ID 选型的曲折之路 - 从 Guid 到自增 ID,再到
· .NET Core GC压缩(compact_phase)底层原理浅谈
· Winform-耗时操作导致界面渲染滞后
· Phi小模型开发教程:C#使用本地模型Phi视觉模型分析图像,实现图片分类、搜索等功能
· 语音处理 开源项目 EchoSharp