extX 파일시스템 블록사이즈에 따른 그룹 디스크립터 테이블의 시작위치
Ext(ext2, ext3, ext4) Filesystem 에서 Group Descriptor Table의 시작위치 First address of Group Descriptor Table on ExtX Filesystem ext 파일시스템의 모든 블록의 크기는 동일하다. ext 파일시스템의 처음 1024 블록은 0x00로 채워져 있는 예약영역이다. Block Size가 얼마이든 Superblock은 1024바이트 다음에 나타난다. ext 파일시스템을 마운트할때 블록의 크기를 알 수 없기에 1024로 가정하고 1024바이트의 예약영역다음 1024바이트를 읽어 슈퍼블록으로 해석한다. 그렇다면, 슈퍼블록다음에 나타날 그룹 디스크립터 테이블(Group Descriptor Table)은 어디서 나타날까? block size가 1KB, 2KB 일때 맨 처음부터 2048바이트 다음 위치부터 나타난다. block size가 4KB 일때 맨 처음부터 4096 바이트 다음 위치부터 나타난다. 즉 block size가 1KB, 2KB일때는 슈퍼블록이 나타난다음 바로 그룹 디스크립터 테이블이 나타나고, 4KB 일때는 2KB의 공간이 비어있고 나타나게 된다. 아래는 슈퍼블록의 구조체이다. /* * Structure of the super block */ struct ext4_super_block { /*00*/ __le32 s_inodes_count; /* Inodes count */ __le32 s_blocks_count_lo; /* Blocks count */ __le32 s_r_blocks_count_lo; /* Reserved blocks count */ __le32 s_free_blocks_count_lo; /* Free blocks count */ /*10*/ __le32 s_free_inodes_count; /* F...