图解linux VFS(虚拟文件系统)
linux 内核中包含了一个虚拟文件系统(Virtual File System,VFS)的内核功能,用户(用户进程)通过虚拟件系统提供的接口去访问物理的文件系统。VFS 定义了一组独立的操作,通过重定向(在执行运用程序中的访问文件系统的指令的时候,产生一个中断(陷入),CPU暂停正在执行的程序,保留现场后自动的转去执行该事件的中断处理程序,然后返回原运用程序断点处继续执行)用户进程的调用来驱动实际访问物理文件系统的代码(文件系统驱动程序),文件系统驱动程序实际的处理与文件系统结构
相关的操作。通过利用内存缓冲,与磁盘驱动程序协作通过磁盘设备控制器完成对相应文件系统(设备,文件)的访问。以上就是VFS文件系统大概的运行过程。
VFS 定义了一组适用于每一个文件系统的功能(一个访问文件系统的统一接口,提供了文件系统无关性)。这样linux 系统就可以同时支持多个文件系统,而对上层的运用进程保持透明,因为实际访问文件系统的指令是运行在系统态的VFS中.
通过/lib/modules/$(uname -r)/kernel/fs 确定系统支持的文件系统的种类量。其实
这个目录中存放的是相应的文件系统的驱动程序。有多少种启动程序就意味着系统
支持几种文件系统。
[root@zeng ~]# ll /lib/modules/$(uname -r)/kernel/fs|wc -l
29
另外可以通过虚拟文件/proc/systems 来确定以及加载的文件系统类型.
捕获.JPG
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/26110315/viewspace-719438/
,如需转载,请注明出处,否则将追究法律责任。