深入理解Linux内核个人小结12---虚拟文件系统

一.  综述:

      虚拟文件系统(VFS):是一个内核软件层,用来处理与Unix文件系统相关的所有系统调用;可看作是一个通用的文件系统,必要时可以依赖某种具体的文件系统调用其底层函数。

     高速缓存的种类:

      1.  硬件高速缓存: 一个快速的静态RAM,其加快了直接对慢速RAM的请求。

      2. 内存高速缓存:一种软件机制,引入它是为了绕过内核内存分配器(slab分配器)。

      3. 磁盘高速缓存:一种软件机制,其允许原先在磁盘上的某些信息保存在RAM上,以加快磁盘的访问速度。主要有:索引节点高速缓存,目录项高速缓存,页高速缓存等。


     VFS的主要结构:

        超级块对象:存放已安装文件系统的相关信息,对应存放于磁盘上的文件系统控制块。

       索引节点对象:存放具体文件的一般信息,对应于存放在磁盘上的文件控制块。每个索引节点都有一个索引节点号来唯一地标识此文件。

       文件对象:存放打开文件与进程之间进行交互相关的信息。仅当进程访问文件期间存在内核内存中,磁盘上无映像。

       目录项对象:存放目录项与对应文件进行链接的有关信息,目录项在磁盘上无对应的映像,目录项对象存放在对应的slab高速缓存中。


二.  文件系统类型

      特殊文件系统提供一种方式来操作内核数据结构,并实现操作系统的特殊特征。

     文件系统类型注册: file_system_type对象 加入到对应的链表。

     文件系统的操作及其实现:命名空间,安装(层层覆盖的方式),卸载。

     路径名查找:充分利用目录项高速缓存,考虑以下因素: 权限/符号链接/文件系统切换/进程命名空间等四种情况。


三.  文件加锁机制:



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值