linux 虚拟文件系统的作用以及工作原理~~????

如题所述

虚拟文件系统(VFS)其实也可以翻译成虚拟文件系统转换(virtual filesystem switch)。可以看出来它的作用就是提供一个通用的接口来处理与Unix标准文件系统相关的所有系统调用。它所隐含的思想就是把表示很多不同种类的文件系统的共同信息放入内核;其中有一个字段火函数来支持linux所支持的所有实际文件系统所提供的任何操作。对所调用的每个读写或者其他函数,内核都能把它们替换成支持本地linux文件系统,NTFS文件系统或者文件所在的任何文件系统的实际函数。
至于vfs的工作原理 就不是三言两语可以解释清楚的了、里面包含了很多知识包括文件系统、超级块、i节点等等知识。其实主要就是用户安装了不同的文件系统,每个特定文件系统上都实现了包括open() close(),read(),write()等等的操作,在安装的时候,每个特定的文件系统会在虚拟文件系统上注册,当用户需要对特定文件系统进行操作时 只需调用统一的系统调用,虚拟文件系统能够调用对应文件系统上的函数来对文件进行操作。详细的工作原理和实现 楼主需要花时间去学一学操作系统知识可一参考《深入理解Linux内核》《深入linux内核架构》等书
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-07-17
我的理解,虚拟文件系统其实就是 通用文件操作的统一API接口,因为LINUX支持很多文件系统,他不可能为每个文件系统都设计一个API接口,这样,LINUX累,运行在LINUX上的程序更累,所以LINUX为了简化操作,就设计的通用API接口(专业术语,就是虚拟文件系统),这样程序不必关心,运行在LINUX上的是哪个文件系统,就对程序透明了,而具体的文件系统操作,有LINUXn内核完成就说这么多了,不懂可以再问O(∩_∩)O~
相似回答