目录
一、引言
二、虚拟文件系统
三、dentry介绍
------>3.1、虚拟文件系统结构
四、文件系统挂载
五、打开/创建文件操作
六、读写文件操作
一、引言
基于上文介绍的文件系统的基本结构,本文将继续深入Linux文件系统的精髓所在:虚拟文件系统及其底层实现。
二、虚拟文件系统
操作文件的本质是将磁盘文件数据映射到进程中,上文的文件系统是如何存储文件数据,而从进程如何映射到该文件系统,中间还有一系列的过程,主要包括
- 进程发出文件操作命令,通过系统调用如sys_open、sys_read、sys_write调用相应内核函数
- 在内核中为进程打开的文件和系统文件创建数据结构进行维护
- 通过虚拟文件系统对各种不同的文件系统操作,如I/O设备、管道、进程间通信、网络等进行抽象并统一接口
- 实现虚拟文件系统和实际文件系统如ext4的挂载
- 提供文件系统和I/O设备层的设备驱动接口及加快读写效率的缓存