Linux文件系统类型与Linux VFS

Linux 有着极其丰富的文件系统,大体上可分如下几类:

磁盘文件系统
指本地主机中实际可以访问到的文件系统,包括硬盘,CD-ROM,DVD,USB存储器,磁盘阵列等。如FAT16、FAT32、
Ext3、Ext4等

网络文件系统
可以远程访问的文件系统,这种文件系统在服务器端仍是本地的磁盘文件系统,客户机通过网络进行远程的数据访问。如 nfs、cifs、samba等

特殊文件系统
不驻留在磁盘上的文件系统。如 proc、sysfs、ramfs、tmpfs 等

Linux VFS
实现以上这些文件系统并在 Linux 下共存的基础就是 Linux VFS(Virtual File System 又称 Virtual Filesystem Switch),即虚拟文件系统。VFS 作为一个通用的文件系统,抽象了文件系统的四个基本概念:文件目录项 (dentry)索引节点 (inode)挂载点,其在内核中为用户空间层的文件系统提供了相关的接口(见图所示 VFS 在 Linux 系统的架构)。VFS 实现了 open()、read() 等系统调并使得 cp 等用户空间程序可跨文件系统。VFS 真正实现了上述内容中:在 Linux 中除进程之外一切皆是文件。
在这里插入图片描述
Linux VFS 存在四个基本对象:超级块对象 (superblock object)索引节点对象 (inode object)目录项对象 (dentry object)文件对象 (file object)。超级块对象代表一个已安装的文件系统;索引节点对象代表一个文件;目录项对象代表一个目录项,如设备文件 event5 在路径 /dev/input/event5 中,其存在四个目录项对象:/ 、dev/ 、input/ 及 event5。文件对象代表由进程打开的文件。这四个对象与进程及磁盘文件间的关系如图 4. 所示,其中 d_inode 即为硬链接。为文件路径的快速解析,Linux VFS 设计了目录项缓存(Directory Entry Cache,即 dcache)。
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值