(笔记)Linux内核学习(十)之虚拟文件系统概念

时间:2024-01-21 13:10:27

虚拟文件系统

虚拟文件系统:内核子系统VFS,VFS是内核中文件系统的抽象层,为用户空间提供文件系统相关接口;

通过虚拟文件系统,程序可以利用标准Linux文件系统调用在不同的文件系统中进行交互和操作。

VFS作为抽象层:

    (笔记)Linux内核学习(十)之虚拟文件系统概念

文件系统被安装在一个特定的安装点上,该安装点在全局层次结构中被称作命名空间,

所有的已安装文件系统都作为根文件系统树的枝叶出现在系统中。

  

     (笔记)Linux内核学习(十)之虚拟文件系统概念

文件系统主要的对象:

超级块对象:代表一个已安装文件系统;struct super_block {}

索引节点对象:代表一个文件;struct inode {}

目录项对象:代表一个目录项,路径的一个组成部分;struct dentry {}

文件对象:进程打开的文件;struct file {}

特定文件系统类型:struct file_system_type {}

安装文件系统的实例:struct vfsmount {}

对象之间的结构关系如下:

    (笔记)Linux内核学习(十)之虚拟文件系统概念

Linux 中的 VFS 文件系统机制:

https://www.ibm.com/developerworks/cn/linux/l-vfs/