Ext3块组描述符

时间:2014-07-01 13:39:42

标签: filesystems block ext3 superblock

我在理解如何查找块组描述符表时遇到问题。在文献中(D.Poirier:" 第二扩展文件系统")表示块组描述符位于超级块之后的块中。

现在,当我查看第一个磁盘时,块大小为1024字节,结构如下:

  • MBR,0-512字节
  • Superblock,1536-2560 bytes
  • BG Descriptor,2560 - ... bytes

这种结构很好,因为超级块从第3扇区开始,BGD紧随其后。但是,当我查看块大小为4096字节的第二个磁盘时,结构如下:

  • MBR,0-512字节
  • Superblock,1536-2560 bytes
  • BG Descriptor,4608 - ... bytes

在这种情况下,BGD位于距超级块3072(?)字节的位置。有人能够让我高兴并告诉我BGD的位置究竟是如何确定的,因为我正在编写一个读取和分析ext结构的程序,而且我无法编写一个知道如何找到BGD的通用程序。

1 个答案:

答案 0 :(得分:1)

BGD起始偏移量可能因块大小(1k,2k,4k)而异。 在分区中,保留前1024个字节,然后是1024字节的SUPER BLOCK。根据块大小,BGD从以下开始:

BLK = 1K,BGD从分区偏移2048(1024保留+ 1024超级块)开始。

BLK = 2K,BGD从分区偏移2048(1024保留+ 1024超级块)开始。

BLK = 4K,BGD从分区偏移4096开始,距离开始是1个块,这是你看到超级块3072个字节的结果。