Linux Virtual File System (VFS) 是 Linux 内核的抽象文件层,为上层用户和程序操作文件提供统一的接口,并使下层各种文件系统对上层调用透明。
我这里,文件系统以 ext2 为例,因为它相对简单且典型。
当磁盘上的一个文件被访问时,磁盘上文件系统中的 inode 的部分信息会被复制到内存中 VFS 对应节点上。
以 VFS 中的这个 inode 为纽带,上层程序通过 VFS 这个统一接口,对磁盘上的文件进行操作。
VFS中的 inode,并不包含什么元素直接指向文件的数据 block(也就是说,VFS不参与定位文件在磁盘上的实际位置)。
文件系统中的 inode 的数据结构里面包含“指向文件数据的指针数列”。换句话说,是文件系统指向了文件在磁盘上的 block 而非 VFS。
.d的文件