目录
一、虚拟文件系统图
二、虚拟文件系统的特点
三、存在的问题
四、文件系统挂载
一、虚拟文件系统图
二、虚拟文件系统的特点
1、向上层用户进程提供统一标准的系统调用接口,屏蔽底层具体文件系统的实现差异。
2、VFS要求下层的文件系统必须实现某些规定的函数功能,如: open/read/write。一个新的文件系统想要在某操作系统上被使用,就必须满足该操作系统VFS的要求
3、每打开一个文件,VFS就在主存中新建一个vnode,用统一的数据结构表示文件,无论该文件存储在哪个文件系统。
注意:
- vnodd只存在于主存中,而 inode既会被调入主存,也会在外存中存储。
- 打开文件后,创建vnode,并将文件信息复制到vnode中,vnode的功能指针指向具体文件系统的函数功能。
三、存在的问题
不同的文件系统,表示文件数据结构各不相同。打开文件后,其在内存中的表示就不同。
四、文件系统挂载
- 在VFS中注册新挂载的文件系统。内存中的挂载表( mount table)包含每个文件系统的相关信息,包括文件系统类型、容量大小等。
- 新挂载的文件系统,要向vFS提供一个函数地址列表V
- 将新文件系统加到挂载点( mountpoint) ,也就是将新文件系统挂载在某个父目录下