linux内此存储模式由5部分组成,自低向上的顺序:
物理卷,内核块设备驱动,内核文件系统驱动,虚拟文件系统,应用程序数据结构;
系统中所有的文件仅按此模式存储,无论是数据还是元数据,均在此模式下统一于内核输入输出系统(kernel I/O system)处理;
在windows中主要以文件后缀名的方式区分文件数据结构,unix中则以文件头部的数据结构区分;
VFS(virtual file system)是linux档案系统对外的接口,任何要使用档案系统的程序,都必须由这一层提供;
VFS是一个异构文件系统之上的软件粘合层,
VFS别称可堆叠文件系统(stackable filesystem),VFS可以无缝的使用多个不同类型的文件系统,相当于把多个文件系统堆叠在一起,通过VFS,可以为访问文件系统的多种提供一个统一的抽象接口;
VFS最早由sun公司提出以实现NFS(Linux,solaris,freebsd都使用VFS);
VFS的作用就是采用标准的unix系统调用读写不同物理介质上的不同文件系统;
VFS是一个可以让open(),write(),read()系统函数调用不用关心底层的存储介质和文件系统类型就可以工作的粘合层,在古老的DOS操作系统中,要想访问本地文件系统之外的文件系统需要使用特殊的工具才能进行,而在linux下,通过VFS,一个抽象的通用访问接口屏蔽了底层文件系统和物理介质的差异,每一种类型文件系统的代码都掩藏了实现细节,因此对于VFS和内核的其他部分,每一种类型的文件系统看起来都是一样的!
文件系统驱动调用底层内核块设备驱动,读取本地硬件设备(IDE,SCSI),逻辑设备(LVM,RAID),远程设备(ISCSI,GNDB-global block driver device);
卷被应用于通过内核块设备驱动读取,是数据存储传输结构最小逻辑定义单元;
http://share.csdn.net/slides/1654