본문 바로가기

Linux

EXT File System Block 계산법

Group Block 구성요소
1. SuperBlock = 1 Block
2. Group Descriptor Table = n Block (Group Descriptor의 개수 : Block Group의 개수)
3. Block Bitmap = 1 Block
4. Inode Bitmap = 1 Block
5. Inode Table = n Block
6. Data Block = n Block

용량 1GB -> 1024MB -> 1048576KB
block size : 4k
inode size : 128Byte
Group Descriptor : 32Byte
 
1 Group block 안에 block 수 : 4k -> 4096B * 8 = 32768개
1 Group block size : 32768 * 4k = 131072kb / 1024 = 128MB
1 Group block 안에 inode 수 : 4k -> 4096B * 8 = 32768개
1 Group block 안에 inode size : 32768 * 128Byte = 4194304Byte / 1024 = 4096kb -> 4MB
Inode Table의 block 개수 : 4096kb/4kb = 1024개
1GB의 파티션의 block group의 개수 : 1024MB/128MB = 8개
Group Descriptor의 개수 : 8개
Group Descriptor Table Size : 8*32Byte = 256Byte

고로 Group Block 내의 block별 현황은
----------------------------------------------------------------------
|        |         |         |         |         |           |
|   SB 1 |  GDT 1 |    BB 1 |    IB 1 | IT 1024 |      DB 31740 |
|         |         |         |         |         |          |
----------------------------------------------------------------------

p.s : Boot Sector는 1Block이니.. 어떤 block 하나가 빠지는거지..?
이대로 계산하면 1GB + 4096Byte(1block_BootSector) 오버되는건데.. 

'Linux' 카테고리의 다른 글

Ubuntu IP 설정, DNS 설정과 default route 설정  (0) 2012.03.09
fget() fget_light() fput() fput_light()  (0) 2011.12.23
kzalloc 과 GFP_KERNEL, GFP_USER Option  (0) 2011.12.22
리눅스 공부 url  (0) 2011.11.07
gcc version update  (0) 2011.10.26