linux 虚拟系统里文件系统,Linux文件系统之虚拟文件系统(VFS)

Linux系统的成功关键在于其虚拟文件系统(VFS)。VFS作为内核的一部分,提供了一个抽象层,允许用户程序使用标准接口访问各种具体文件系统,如EXT2和FAT32,同时隐藏底层实现细节。VFS不仅抽象数据结构,处理系统调用,还支持跨文件系统的互访和内核其他子系统的操作请求。要查看系统支持的文件系统,可以运行`cat /proc/filesystems`。
摘要由CSDN通过智能技术生成

Linux系统成功的关键因素之一就是具有与其他操作系统和谐共存的能力。Linux的文件系统由两层结构构建:第一层是虚拟文件系统(VFS),第二层是各种不同的具体的文件系统。

VFS就是把各种具体的文件系统的公共部分抽取出来,形成一个抽象层,是系统内核的一部分,它位于用户程序和具体的文件系统之间。它对用户程序提供了标准的文件系统调用接口,对具体的文件系统(如EXT2、FAT32等),它通过一系列的对不同文件系统公用的函数指针来实际调用具体的文件系统函数,完成实际的各有差异的操作。任何使用文件系统的程序必须经过这层接口来使用它。通过这样的方式,VFS就对用户屏蔽了底层文件系统的实现细节和差异。

VFS不仅可以对具体文件系统的数据结构进行抽象,以一种统一的数据结构进行管理,并且还可以接受用户层的系统调用,如open()、read()、write()、stat()、link()等。此外,它还支持多种具体文件系统之间的相互访问,接受内核其他子系统的操作请求,例如,内存管理和进程调度。VFS在Linux系统中的位置如图2.2所示。

05917468f6defbc098d5fdfc0857fb38.png

图2.2 VFS在Linux系统中的位置

通过以下命令可以查看系统中支持哪些文件系统:

$ cat /proc/filesystems

nodev sysfs

nodev rootfs

nodev tmpfs

nodev pipefs

ext2

nodev ramfs

nodev hugetlbfs

iso9660

nodev mqueue

nodev selinuxfs

ext3

nodev rpc_pipefs

热点链接:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值