码迷,mamicode.com
首页 > 其他好文 > 详细

proc文件系统在内核中的表现

时间:2016-11-19 15:23:47      阅读:200      评论:0      收藏:0      [点我收藏+]

标签:opera   虚拟文件系统   关系   create   alt   /proc   调用   ges   str   

当Linux内核启动起来之后,我们可以通过proc虚拟文件系统来查看内的中的一些动态信息。

例如:可以 cat  /proc/misc  来查看系统中装载的所有misc类设备

cat  /proc/devices  来查看系统中装载的字符设备和块设备

 

但是需要注意的是:proc文件系统现在用到比较少了,主要原因我之前也说过,proc中的文件目录关系混乱,不好管理,现在一般都是用sys文件系统,

所以在内核配置的时候是可以将proc文件系统给去掉的。

 

今天也来说说proc文件系统内部的实现:

1、在proc文件系统下创建文件:proc_create(以 /proc/misc 文件为例子)

proc_create("misc", 0, NULL, &misc_proc_fops);      // misc_proc_fops是一个struct  file_operations结构体的变量,这个跟字符设备注册中的结构体是一样的

 

 

 

技术分享

 

 

2、misc_seq_open函数分析:

技术分享

 

从上面可以看出来,misc_seq_open函数中调用的seq_open函数,向proc系统注册了一个struct  seq_operations类型的结构体变量misc_seq_ops。

变量中就挂接了各种操作函数,其中就包括  cat  /proc/misc  时执行的函数 misc_seq_show。

所以一定要搞清楚几个数据结构: struct  file_operations、 struct seq_operations

 

proc文件系统在内核中的表现

标签:opera   虚拟文件系统   关系   create   alt   /proc   调用   ges   str   

原文地址:http://www.cnblogs.com/deng-tao/p/6080316.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!