Minix文件系统

7次阅读

共计 794 个字符,预计需要花费 2 分钟才能阅读完成。

一、参考

存储技术原理分析

二、正文

1. 前言

Minix 是 Linux 最早的文件系统,Minux 文件系统的磁盘布局由 6 个部分组成:
引导块,超级块,i 节点位图,逻辑块位图,i 节点,逻辑块

引导块:
在文件系统的开头,通常为一个扇区,其中存放引导程序,用于读入并且启动操作系统;

超级块:
用于存放磁盘设备上文件系统结构的信息,说明各个部分的大小;

i 节点位图:
用于描述磁盘上每个 i 节点的使用情况,除了第一个比特位以外,i 节点位图中的每个
比特位依次代表盘上每个 i 节点区中的一个 i 节点,因此 i 节点位图的比特位 1 代表盘上 i 节点区中的第一个 i 节点
当一个 i 节点被使用时候,则 i 节点位图中对应的比特位被置位,由于当所有磁盘 i 节点都被使用时候,查找空闲 i 节点的函数会返回 0 值,因此 i 节点位图最低比特位(位 0)闲置不用,并且在创建文件系统时候,会预先将其设置为 1,即编号为 0 的 i 节点未被使用,i 节点编号从 1 开始,编号 1 保留给根目录对应的 i 节点。

i 节点:
反映的是文件的元数据

逻辑块位图:
描述磁盘上每个逻辑块的使用情况,
除了第 1 个比特位(位 0)以外,逻辑块位图上每个比特位依次代表盘上逻辑块中的一个逻辑块,因此逻辑块位图的比特位 1 代表盘上逻辑区中第一个逻辑块,当一个逻辑块被使用时候,则逻辑块位图中对应比特位被置位,由于当所有磁盘逻辑块都被使用时候,查找空闲逻辑块的函数会返回 0 值,因此逻辑块位图最低比特位(位 0)闲置不用,并且在创建文件系统时候会预先将其设置为 1,在这样的设计下,编号为 0 的逻辑块未被使用,逻辑块编号从 1 开始

逻辑块:
保存了文件的数据,每个文件有且仅有一个 i 节点,但是可以有 0,1 或者多个逻辑块,i 节点最重要的作用莫过于作为寻址文件数据的出发点,因此 i 节点中需要保存文件数据的逻辑块编号。

2. 文件系统对象

3. 装载文件系统

4. 路径查找

5. 打开文件

6. 读文件

7. 写文件

8. 冲刷文件

9. 块设备文件

10. 文件系统编程模式

正文完
 0