Ext2 / 3: разъяснение типа блока: IND против DIND против TIND - PullRequest
0 голосов
/ 12 сентября 2018

Я вижу ссылки на "IND" против "DIND" против "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.

посмотрел лихорадочно, но никаких очевидных обсуждений или комментариев на эту тему нет, и мне понадобится немного больше времени, чтобы разобраться с этим из кода.

1 Ответ

0 голосов
/ 12 января 2019
#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 - общее количество блоков.
...