proc文件系统是一种伪文件系统,只存在于内存中,只有内核运行时才会动态生成里面的内容。
1、proc文件系统挂载位置:/proc目录
内核开发者向用户导出信息的常用方式 比如/proc/devices文件,有的文件可写,这可以在不重新编译内核以及不重启系统的情况下改变内核行为。现在sysfs文件系统逐步取代proc文件系统。
2、创建proc文件的流程:
(1)、struct proc_dir_entry 指向proc文件目录或文件;
(2)、proc_mkdir("vser",NUll);
创建proc目录:"vser"表示目录名字,第二个参数NUll表示在/proc目录下创建
(3)、proc_create_data("info",0,vsdev.pdir,&proc_ops,&vsdev);
创建文件:"info"表示文件名字,0表示权限,vsdev.pdir目录的指针,&proc_ops为操作方法集合,&vsdev私有数据。
&proc_ops为操作方法集合——>struct file_operations ——>和驱动一样实现函数——>调用内核已有函数。
(4)、remove_proc_entry("info",vsdev.pdir);
移除proc文件:"info"表示文件名字,vsdev.pdir目录的指针
(5)、cat /proc/vser/info 查看文件内容——>调用proc的open函数。