proc目录是虚拟文件系统(VFS)的一种实现,保存了进程信息(pid目录)和一些系统信息。
1、cpuinfo和meminfo两个文件
查看CPU和内存相关信息
2、kmsg文件、mounts文件、modules文件
分别记录内核输出日志,挂载目录情况和内核模块(lsmod的原理)情况
3、uptime文件、version文件
存启动时间信息,和内核版本信息
4、net目录
存储协议连接情况,netstat的原理就是查看这里,当然输出是格式化了的,与进程号的关联是遍历了pid路径的net路径下的各个协议文件关联上的
这些pid目录其实是动态生成的,每次readdir,getdents时动态生成。ps的原理就是遍历这些文件夹,所以进程隐藏主要对抗点在这里。
1、cmdline文件
相当于记录进程命令行以及参数,可以查看到进程对应的文件及其路径
2、syscall文件
记录系统调用的位置
3、net路径
与proc路径下的一致,记录相关协议及其连接情况