编程要点:
1.分区信息通过扩展中断INT 13调用从分区表(MBR)中读取。
2.如果有多个分区,则根据分区表链结构,依次读出每个分
区表参数,必须把全部分区都显示出来。
3.每次读引导扇区时,都要检验扇区标志(55AAH)有效性。
三、 程序开发说明::
(一)、硬盘分区表简介
硬盘分区表包含在硬盘的启动扇区(Boot Sector)中。
1.Boot Sector 结构简介
Boot Sector 也就是硬盘的第一个扇区(0头0道1扇区),它由 MBR (Master Boot Record),DPT (Disk Partition Table) 和 Boot Record ID 三部分组成。
MBR 又称作主引导记录占用 Boot Sector 的前 446 个字节 ( 0 to 0x1BD ),存放系统主引导程序 (它负责从活动分区中装载并运行系统引导程序)。
DPT 即主分区表占用 64 个字节 (0x1BE to 0x1FD), 记录了磁盘的基本分区信息. 主分区表分为四个分区项, 每项 16 字节, 分别记录了每个主分区的信息(因此最多可以有四个主分区).
Boot Record ID 即引导区标记占用两个字节 (0x1FE and 0x1FF), 对于合法引导区, 它等于 0xAA55, 这是判别引导区是否合法的标志.
2.分区表结构简介
分区表由四个分区项构成, 以第一个分区项信息(1BEH-1CDH)为例如下:
用debug编程读出0头0道1扇区四个分区项信息内容如下:
C:\WINDOWS>debug
-a100
1282:0100 int 13
1282:0102 int 3
1282:0103
-rax
AX 0000
:201
www.751com.cn
:1000
-rcx
CX 0000
:1
-rdx
DX 0000
:80
-g=100
-d11b0
1282:11B0 00 00 00 00 00 00 00 00-01 00 34 12 00 00 80 01;80
上一页 [1] [2] [3] [4] [5] [6] 下一页