理解proc目录与linux进程、ps命令、netstat命令的关系

零、proc目录简介


proc目录是虚拟文件系统(VFS)的一种实现,保存了进程信息(pid目录)和一些系统信息。

一、系统的信息



1、cpuinfo和meminfo两个文件


查看CPU和内存相关信息

2、kmsg文件、mounts文件、modules文件


分别记录内核输出日志,挂载目录情况和内核模块(lsmod的原理)情况


3、uptime文件、version文件


存启动时间信息,和内核版本信息

4、net目录

存储协议连接情况,netstat的原理就是查看这里,当然输出是格式化了的,与进程号的关联是遍历了pid路径的net路径下的各个协议文件关联上的

二、进程pid目录



这些pid目录其实是动态生成的,每次readdir,getdents时动态生成。ps的原理就是遍历这些文件夹,所以进程隐藏主要对抗点在这里。

1、cmdline文件


相当于记录进程命令行以及参数,可以查看到进程对应的文件及其路径

2、syscall文件


记录系统调用的位置

3、net路径


与proc路径下的一致,记录相关协议及其连接情况

原文地址:https://www.cnblogs.com/KevinGeorge/p/10162803.html