如何从ext2块组中读取inode表?

时间:2011-09-28 21:41:47

标签: c filesystems driver ext2

在为我的业余爱好操作系统编写ext2驱动程序时,我遇到了从块组描述符中读取inode表的问题。

块组描述符的第三个字段是该组的inode表的块ID。在我的情况下,对于我的文件系统的根目录,它返回64.超级块位于块1,它是超过卷开头的1024字节。块大小为1024字节,但我的磁盘扇区大小为512.因此,为了访问超级块,我从lba 2读取。

问题是当我尝试读取inode表时。如果它的块id是64,并且我的块大小是1024并且磁盘扇区大小是512,那么我不会从磁盘扇区130读取inode表吗?我这样做,但没有任何东西......

给定有效的块组描述符,读取inode表的正确方法是什么?

1 个答案:

答案 0 :(得分:1)

块组描述符表中的块ID都是绝对的,因此在您的情况下,块ID 64将存储在LBA 128和129中。

相关问题