Ext2/3:块类型说明:IND vs DIND vs TIND
Ext2/3: Block Type Clarification: IND vs DIND vs TIND
我在一些地方看到了对 "IND" vs "DIND" vs "TIND" 块类型的引用,而代码中的定义非常简洁:
(https://github.com/torvalds/linux/blob/master/fs/ext4/ext4.h#L362)
#define EXT4_NDIR_BLOCKS 12
#define EXT4_IND_BLOCK EXT4_NDIR_BLOCKS
#define EXT4_DIND_BLOCK (EXT4_IND_BLOCK + 1)
#define EXT4_TIND_BLOCK (EXT4_DIND_BLOCK + 1)
#define EXT4_N_BLOCKS (EXT4_TIND_BLOCK + 1)
有人可以阐明它们是什么,以及为什么这些定义暗示 TIND 块包含 DIND,而 DIND 块包含 IND 块。
我狂热地看过了,但是没有关于这个主题的任何明显的讨论或评论,我需要更多时间才能从代码中弄清楚。
#define EXT4_NDIR_BLOCKS /* number of direct blocks */
#define EXT4_IND_BLOCK /* single indirect block */
#define EXT4_DIND_BLOCK /* double indirect block */
#define EXT4_TIND_BLOCK /* trible indirect block */
#define EXT4_N_BLOCKS /* total number of blocks */
- NDIR为直接块数
- IND 是单个间接块。
- DIND是双重间接块。
- TIND是三重间接块
- N是区块总数
我在一些地方看到了对 "IND" vs "DIND" vs "TIND" 块类型的引用,而代码中的定义非常简洁:
(https://github.com/torvalds/linux/blob/master/fs/ext4/ext4.h#L362)
#define EXT4_NDIR_BLOCKS 12
#define EXT4_IND_BLOCK EXT4_NDIR_BLOCKS
#define EXT4_DIND_BLOCK (EXT4_IND_BLOCK + 1)
#define EXT4_TIND_BLOCK (EXT4_DIND_BLOCK + 1)
#define EXT4_N_BLOCKS (EXT4_TIND_BLOCK + 1)
有人可以阐明它们是什么,以及为什么这些定义暗示 TIND 块包含 DIND,而 DIND 块包含 IND 块。
我狂热地看过了,但是没有关于这个主题的任何明显的讨论或评论,我需要更多时间才能从代码中弄清楚。
#define EXT4_NDIR_BLOCKS /* number of direct blocks */
#define EXT4_IND_BLOCK /* single indirect block */
#define EXT4_DIND_BLOCK /* double indirect block */
#define EXT4_TIND_BLOCK /* trible indirect block */
#define EXT4_N_BLOCKS /* total number of blocks */
- NDIR为直接块数
- IND 是单个间接块。
- DIND是双重间接块。
- TIND是三重间接块
- N是区块总数