分类: LINUX
2009-08-13 14:01:48
分区表和扩展分区表
正如在主引导记录分析中看到的,分区表是一个64字节的数据块,用来识别和定位硬盘上分区的类型和位置,分区表独立于操作系统。每个分区表项是16字节,最多有四项,每项都在MBR的预定义的位置:
1. 分区一 0x1BE (446)
2. 分区二 0x1CE (462)
3. 分区三 0x1DE (478)
4. 分区四 0x1EE (494)
当分区数小于4时,其余的分区项均为0。下面是一个含有三个分区的分区表例子:
000001B0:
000001C0: 01 00 07 FE BF 09 3F 00 - 00 00 4B F5 7F 00 00 00
......?...K....
000001D0: 81 0A 07 FE FF FF 8A F5 - 7F 00 3D 26 9C 00 00 00
.........=&....
000001E0: C1 FF 05 FE FF FF C7 1B - 1C 01 D6 96 92 00 00 00
................
000001F0: 00 00 00 00 00 00 00 00 -
以这个例子的第一个分区表项来讨论分区表中各项的意义:
字节偏移
0x01BE
0x1BF
0x1C0
0x1C1
0x1C2
0x1C3
0x1C4
0x1C5
0x1C6
0x1CA
系统ID可能的值:
0x01
0x04
0x05
0x06
0x07
0x0B
0x0C
0x0E
0x0F
0x12
0x42
0x86
0x87
0x8B
0x8C