【操作系统学习笔记】文件管理2.3

【操作系统学习笔记】文件管理2.3

参考书籍: 王道考研

视频地址: Bilibili

虚拟文件系统

由于不同的硬件需要不用的文件系统,会导致写代码非常复杂

虚拟文件系统 VFS:

  • 向上层用户进程提供统一标准的系统调用接口,屏蔽底层具体文件系统的实现差异
  • VFS 要求下层的文件系统必须实现某些规定的函数功能。一个新的文件系统想要在某操作系统上被支持,就必须要满足该操作系统 VFS 的要求
  • 每打开一个文件,VFS 就在主存中新建一个 vnode,用统一的数据结构表示文件,无论该文件存储在哪个文件系统
    • vnode 只存在于主存之中,而 inode 存在于主存和外村
    • vnode 的函数功能指针指向对应文件系统的函数功能列表

文件系统挂载(安装)

  1. 在 VFS 中注册新挂载的文件系统,内存中的挂载表包含每个文件系统的相关信息,包括文件系统类型、容量大小等
  2. 新挂载的文件系统,要向 VFS 提供一个函数地址列表
  3. 将新文件系统加到挂载点,也就是将新文件系统挂载在某个父目录下
相关推荐
im_AMBER几秒前
Leetcode 57
笔记·学习·算法·leetcode
im_AMBER2 分钟前
Leetcode 58 | 附:滑动窗口题单
笔记·学习·算法·leetcode
伯明翰java19 分钟前
Redis学习笔记-List列表(2)
redis·笔记·学习
云帆小二34 分钟前
从开发语言出发如何选择学习考试系统
开发语言·学习
Elias不吃糖1 小时前
总结我的小项目里现在用到的Redis
c++·redis·学习
BullSmall1 小时前
《道德经》第六十三章
学习
AA陈超2 小时前
使用UnrealEngine引擎,实现鼠标点击移动
c++·笔记·学习·ue5·虚幻引擎
BullSmall2 小时前
《道德经》第六十二章
学习
Knox_Lai2 小时前
数据结构与算法学习(0)-常见数据结构和算法
c语言·数据结构·学习·算法
IMPYLH3 小时前
Lua 的 assert 函数
开发语言·笔记·junit·单元测试·lua