接下来的64字节为硬盘分区表--dpt,偏移地址从01BEH-01FDH,共分为四个分区表项,每个分区表项占16字节,表示一个分区,从这里大家就可以知道为什么硬盘只能分四个主分区了吧?但有时我们需要更多的分区来规划我们的硬盘,为解决这个问题,就把这四个分区表项中的一个定义为扩展分区(与主分区是并列关系),扩展分区中又可以定义逻辑分区(与扩展分区是包含与被包含的关系)。但读者不要以为这些信息都在这一个16字节的分区表项中。事实上是:被定义为扩展分区的这一个分区表项只包含了指向逻辑分区的信息。而逻辑分区的分区表在其它的扇区中存放!
本文重点介绍dpt中的内容,上面已经提到,dpt分为四个分区表项,每个分区表项占16个字节,下面着重讲述这16个字节是怎么分配的。
表三:
第1字节 引导标志,该值为80H表示为可自举分区(活动分区,仅有一个),该值为00H表示其余分区
第2字节 分区起始磁头
第3字节 低6位是分区起始扇区,高2位是分区起始的柱面的头两位
第4字节 分区起始柱面的低8位
第5字节 系统标志
第6字节 分区终止磁头
第7字节 低6位为分区终止扇区,高2位为终止柱面的前2位
第8字节 分区终止柱面的低8位。
第9-12字节 本分区前的扇区数,低位字节在前(注:不是低位在前)
第13-16字节 本分区总的扇区数,低位字节在前
现在根据上面的列表详细解释一下:我们提取出下面四个分区表项:
表四:
分区 | 字节序号
表项 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1: | 80 01 01 00 0B FE 3F D8 3F 00 00 00 5A 31 35 00
2: | 00 00 01 D9 0F FE FF FF 99 31 35 00 04 FF FB 00
3: | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
4: | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
由于数据以16进制显示,每个数字占一个字节的四位,所以两个数字占一个字节。
对于第一个分区表项:
第1字节为80,表示活动分区;
第2字节为01,十进制为1,表示起始磁头号;
第3字节为01,二进制为00000001,低6位000001,对应的十进制为1,表示起始扇区;
第4字节为00,二进制为00000000,与第三字节的高2位00组成0000000000,十进制为0,表示起始柱面;
第5字节为0B,为系统标志;
第6字节为FE,十进制为254,表示终止磁头;
第7字节为3F,二进制为00111111,低6位为111111,转换为十进制为63,表示终止扇区;
第8字节为D8,二进制为11011000,与第7字节的高2位00组成0011011000,十进制为216,表示终止柱面;
第9-12字节为3F 00 00 00,按低位字节在前的原则排列为:00 00 00 3F,转换为十进制为63,表示该分区前的扇区数目;
第13-16字节为5A 31 35 00,按低位字节在前的原则排列为:00 35 31 5A,转换为十进制为3486042,表示该分区占用的扇区数目。
我们可以与表2对照,发现两者完全统一!同理,我们还可以分析第2个分区表项,这就交给感兴趣的读者自己完成吧。
在第3和第4个分区表项中,所以数据都为0,表示这两个分区表项没有分配。
最后两个字节--偏移地址从01FEH-01FFH,为结束标志,通常为55 AA,如果改为其它值,则硬盘可能不被引导。
本文来源:网管之家 作者:佚名