文件系统笔记九、Ext2文件系统布局及核心数据结构
引言:在之前的笔记中,我们依次介绍了磁盘的物理结构、文件系统设计需要考量的因素、文件系统性能及保障机制。这些是对文件系统泛泛的介绍,这篇笔记我们将简单剖析Ext2文件系统,重点介绍其系统布局及核心数据结构。
一、Ext2文件系统布局
我们知道,磁盘是持久性的圆形存储介质,文件系统是操作系统为磁盘做的一层易于使用的抽象,帮助用户管理和组织磁盘中的文件。本文将简单剖析Ext2文件系统,介绍其系统布局和核心数据结构。下图为ext2文件系统的存储布局。
磁盘中最小存储单位是扇区,其大小在(1扇区 = 512byte或4K),参考4K对齐。而文件系统最小管理单元是Block(一般为4K)。扇区大小在磁盘出厂就已经确定了,而Block大小是在格式化时决定的。
为便于解释清楚文件系统的布局,分行对相关概念阐述,解释。
1.1、固定部分
在具体介绍前两行之前,我们回想一下计算机的启动过程:
1)、上电后,处在主板ROM里面的BIOS程序首先启动,BIOS在进行一些基本的系统配置扫描后,对磁盘的扇面0进行读操作,将MBR里面的程序读到内存并运行。
2)、MBR程序接下来找到主分区,将主分区里面的Boot Sector加载并运行。
3)、Boot Record里面的内容是一个小程序,该程序负责找到操作系统的镜像,并加载到内存,从而启动操作系统。
1)、MBR(Master Boot Record, 主引导记录):它位于磁盘的扇面0,作用是检查分区表是否正确及确定哪个分区为基本的引导分区,并在程序结束后,把主分区的启动系统调入内存加以执行。MBR后面的分区文件系统可以是NTFS、Ext2、Ext3等等。
2)、分区Partition1 - 4:各分区包括Boot Sector启动块及具体的文件系统。
那为什么要分区呢?容易想到的理由有
1、分区方便我们使用磁盘,因为不同分区可以建立不同的文件系统
2、分区有安全上的优势,因为一个分区损坏了,另外一个分区依然可以使用
3、分区还有可靠性优势,一个分区不影响另外一个分区运行真正的核心是因素是:计算机内存字长度通常有限ÿ