欢迎来到我的地盘:今天是

若得山花插满头,莫问奴归处!

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

硬盘上的数据由五大部分组成,它们分别是:MBR区、DBR区,FAT区,DIR区和DATA区。MBR(Main Boot Record)区,即主引导记录区,位于整个硬盘的0磁道0柱面1扇区。主引导记录(Master Boot Record,简称MBR)是硬盘的“命根子”,它处在硬盘最最关键的位置,记录着硬盘中各个分区的大小及位置信息,是我们数据信息的重要入口。如果它受到破坏,硬盘上的所有数据将会荡然无存! 硬盘主引导记录(MBR)及其结构硬盘的0柱面、0磁头、1扇区称为主引导扇区,FDISK程序写到该扇区的内容称为主引导记录(MBR)。该记录占用512个字节,它用语硬盘启动时将系统控制权交给用户指定的,并在分区表中登记了的某个操作系统区。

MBR的读取硬盘的引导记录(MBR)是不属于任何一个操作系统,也不能用操作系统提供的磁盘操作命令来读取它。但我们可以用ROM-BIOS中提供的INT13H的2号功能来读出该扇区的内容,也可用软件工具Norton8.0中的DISKEDIT.EXE来读取。)

MBR的组成一个扇区的硬盘主引导记录MBR由如图6-15所示的4个部分组成。 ·主引导程序(偏移地址0000H--0088H),它负责从活动分区中装载,并运行系统引导程序。 ·出错信息数据区,偏移地址0089H--00E1H为出错信息,00E2H--01BDH全为0字节。 ·分区表(DPT,Disk Partition Table)含4个分区项,偏移地址01BEH--01FDH,每个分区表项长16个字节,共64字节为分区项1、分区项2、分区项3、分区项4。 ·结束标志字,偏移地址01FE--01FF的2个字节值为结束标志55AA,如果该标志错误系统就不能启动。

MBR中的分区信息结构占用512个字节的MBR中,偏移地址01BEH--01FDH的64个字节,为4个分区项内容(分区信息表)。它是由磁盘介质类型及用户在使用FDISK定义分区说确定的。在实际应用中,FDISK对一个磁盘划分的主分区可少于4个,但最多不超过4个。每个分区表的项目是16个字节。

MBR的主要功能及工作流程启动PC机时,系统首先对硬件设备进行测试,测试成功后进入自举程序INT 19H,然后读系统磁盘0柱面、0磁头、1扇区的主引导记录(MBR)内容到内存指定单元0:7C00地址开始的区域,并执行MBR程序段。

硬盘的主引导记录(MBR)是不属于任何一个操作系统的,它先于所有的操作系统而被调入内存,并发挥作用,然后才将控制权交给主分区(活动分区)内的操作系统,并用主分区信息表来管理硬盘。 MBR程序段的主要功能如下: ·检查硬盘分区表是否完好。 ·在分区表中寻找可引导的“活动”分区。 ·将活动分区的第一逻辑扇区内容装入内存。在DOS分区中,此扇区内容称为DOS引导记录(DBR)。

 

硬盘主引导记录结构


硬盘的主引导记录在硬盘的0磁头0柱面1扇区。主引导记录由三部分组成:(1)主引导程序;(2)四个分区表;(3)主引导记录有效标志字。详见表1。


表1:主引导记录结构位置内容

0000H-00D9H 主引导记录代码区00DAH-01BDH 空闲区
01BEH-01CDH 分区1结构信息01CEH-01DDH 分区2结构信息
01DEH-01EDH 分区3结构信息01EEH-01FDH 分区4结构信息
01FEH-01FFH 55AAH主引导记录有效标志

分区表自偏移1BEH处开始,分区表共64个字节,表中可填入四个分区信息,每十六个字节为一个分区说明项,这16个字节含义详见表2。必须注意:扇区号的高二位占用柱面号所在字节的最高二位,即柱面号为10位,扇区号6位。


表2:分区结构信息偏移长度含义

偏移 长度 含义
00H 1 活动分区指示符,该值为80H表示为可自举分区(仅有一个),该值为00H表示其余分区
01H 1 分区起始磁头号
02H 1 低6位是分区开始的扇区,高2位是分区开始的柱面的头两位
03H 1 分区开始的起始柱面号的低8位
04H 1 系统标志,该值为01H表示采用12位FAT格式的DOS分区,该值04H表示采用16位FAT格式的DOS分区,该值为05H表示为扩展DOS分区,为06H表示为DOS系统
05H 1 分区终止头号
06H 1 低6位为分区结束的扇区号,头2位为结束柱面号的前2位
07H 1 分区结束柱面号的低8位。  
08H 4 本分区前的扇区数,低位字节在前
0CH 4 本分区总的扇区数,低位字节在前


下表是一个例子:
表3:一个分区表实例:

80 01 01 00 06 1F 3F 98 3F 00 00 00 A1 B4 04 00
00 00 01 99 05 1F BF 0E E0 B1 04 00 40 81 0B 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

此例中,每行十六个字节,为一个分区说明,数据为十六进制。

第一个分区(第一行):活动分区指示符为80H,表示该分区为可自举分区。系统标志为06H表示是DOS系统,即C:盘。
第二个分区(第二行):系统标志为05H,说明该分区是扩展Dos分区。
第三、四个分区数据均为00H,没有定义。


从扩展DOS分区说明项(即第二个分区)知下一个分区表位于:起始磁头为0头,起始柱面为99H=153D,起始扇区为1扇区。


表4:第二个分区表


00 01 01 99 06 1F 7F C9 3F 00 00 00 A1 61 09 00
00 00 01 CA 05 1F BF 0E E0 61 09 00 60 1F 02 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00


该分区表的格式和含义同第一个分区表。
第一个分区(第一行):该分区指示符为00H,说明为不可引导分区。系统标志字节为06H说明为DOS分区,即逻辑D盘。
第二个分区(第二行):系统标志字节为05H,说明是扩展DOS分区
第三,四个分区说明项数据均为00H没有定义。
由第一个分区说明项知D盘开始于153簇0为1扇区。
由扩展分区说明项知,扩展分区表起始簇号为01CAH=458D,起始磁头为0头,1扇区。

表5:第三个分区表
00 01 41 CA 06 1F BF 0E 3F 00 00 00 21 1F 02 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

第一个分区(第一行)表明,本分区是DOS分区,不可引导。
自第二个分区说明项开始,全为00H说明后面不再有分区表。

综上所述:
1、每一个分区表中扩展分区说明项实际上指示下一个分区表的位置(簇,磁头号,扇区号)。最后一个分区表没有扩展分区说明项。
2、每一个分区表都会有一个实际分区说明项,也就是对逻辑盘的实际起始、终止位置进行说明。
3、除逻辑盘C主引导记录及分区表共占用一个扇区,其它分区表则各占一个扇区,自该扇区01BEH处开始,以55AAH结束。

 

 

 

posted on 2008-10-10 09:41  莫问奴归处  阅读(1728)  评论(0编辑  收藏  举报
轩轩娃