Ext2 文件系统仿真
该项目模仿早期 Linux 版本所采用的的 Ext2 文件系统,通过 8.1M 的文件模拟磁盘空间,实现文件系统 对磁盘管理、内存管理的仿真。
磁盘管理中将每一个物理块定义为 1K 大小,逻辑块定义为 1K 大小。按照 Ext2 文件系统的格式,将系 统划分为 8 个组,每个组大小为 1024K,又包含超级块、组描述符、块位图、逻辑位图、内存索引节点和 数据块。按照创建文件、创建目录、删除文件、删除目录、打开文件、读文件、写文件的算法分别实现相关 函数。
内存管理中建立内存索引节点、系统打开文件表、用户打开文件表、进程数据结构。模拟进程操作文件时, 通过内存索引节点信息,调用底层文件操作函数,依次填充系统打开文件表,用户打开文件表来实现进程 对文件的操作。