块和inode位图¶
数据块位图跟踪块组内数据块的使用情况。
inode位图记录了inode表中哪些条目正在使用。
与大多数位图一样,一个位代表一个数据块或inode表条目的使用状态。这意味着块组大小为 8 * logical_block_中的字节数。
注意:如果给定块组设置了 BLOCK_UNINIT
,内核和 e2fsprogs 代码的各个部分会假定块位图包含零(即组中所有块都是空闲的)。然而,并非所有块都一定没有被使用——如果设置了 meta_bg
,位图和组描述符将存在于组内。不幸的是,ext2fs_test_block_bitmap2() 将为这些位置返回“0”,这会产生令人困惑的 debugfs 输出。
Inode表¶
inode表在mkfs时静态分配。每个块组描述符指向表的起始位置,并且超级块记录了每个组的inode数量。更多信息请参见inode相关章节。