ext4 inode構造の32ビットブロックアドレス

ext4 inode構造の32ビットブロックアドレス

Linuxカーネルのソースコードから、ディスクinode構造のブロック番号は32ビットです。なぜ? Linuxは確かに2^32より大きいブロックをサポートできます。

ベストアンサー1

配列の説明inode.i_block Ext4では異なります。以前のディスクファイルシステム形式との比較。 Ext4では、inodeがこの配列EXT4_EXTENT_FLにコレクションを持っている場合、i_flags配列は範囲ツリーのルートと最大4つの範囲記述子(struct ext4_extentまたはstruct ext4_extent_idx)を格納します。範囲記述子では、48ビットがブロックアドレスとして使用されることがわかります。 Ext3などの古いディスクフォーマットの場合、最大ブロック数は32ビットに収まります。

バラよりExt4データ構造とアルゴリズム、部分4.2 inode.i_blockの内容

おすすめ記事