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비트에 맞습니다.