浅谈Linux中的proc文件系统

嵌入式技术

1368人已加入

描述

       大家好,我是ST,今天主要和大家聊一聊,Linux中的proc文件系统。

  第一:基本介绍

  Linux系统上的/proc目录是一种文件系统,即proc文件系统(procfs),它以文件系统的方式为用户提供访问系统内核数据的操作接口。proc文件系统是一种内核和内核模块用来向进程(process)发送信息的机制,因此被称为proc。

  与其它常见的文件系统不同的是,proc是一种伪文件系统(也即虚拟文件系统),它只存在于内存当中,因此它会在系统启动时创建并挂载到/proc目录,在系统关闭时卸载并释放。

  下面是设备上/proc的挂载信息。

 

$ mount | grep proc
proc on /proc type proc (rw,relatime)

 

      proc文件系统存储的是当前内核运行状态的一系列特殊文件,用户可以通过这些文件查看系统和进程的信息,或者改变内核的运行状态,因此可以把它视为Linux内核开放给用户的控制和信息中心。实际上,proc文件系统是内核空间和用户空间之间的一种通信媒介。

Proc

  第二:/proc目录里面的进程目录

  在Linux系统中,每一个运行的进程在/proc下都有一个以该进程PID命名的专属目录,包括内核进程。

Proc

  除了通过/proc/ 来获取指定进程的信息,Linux 还提供了一个有趣的/proc/self 目录。

  这个目录的特别之处在于,不同的进程访问该目录时获得的信息是不同的,进程通过访问/proc/self目录可以获取该进程自己的信息,而不用每次都获取PID,内容等价于/proc/。在fork、daemon 等PID可能发生变化的情形下很实用。

Proc

  总结:Linux系统中根目录下的proc文件夹是和文件系统密切先关的。

  审核编辑:汤梓红

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分