31.创建文件系统 file system
在 MBR、EBR、OBR的区别和联系 博文中,介绍了硬盘是如何分区的。再次把硬盘的分区图贴到下面。
每一个分区可以有一个文件系统,不同的分区可以有不同的文件系统。
仿照Linux中的ext2文件系统来创建文件系统。
在一个分区中,先是引导块,然后是超级块,超级块是操作系统元信息的元信息。
操作系统的元信息包括:inode 位图,inode 数组,空闲块位图,根目录等。
空闲块就是用来创建文件和目录用的。
创建文件的本质就是创建目录项和 inode 。
创建文件系统就是,把超级块,空闲块位图, inode 位图, inode 数组, 根目录,在内存中创建出来,然后写到磁盘对应的分区。
步骤:
- 根据分区 part 大小, 计算分区文件系统各元信息需要的扇区数及位置 。
- 在内存中 创建超级块,将以上步骤计算的元信息写入超级块。
- 将超级块写入磁盘。
- 将元信息写入磁盘上各自的位置。
- 将根目录写入磁盘 。