Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1402947
  • 博文数量: 416
  • 博客积分: 13005
  • 博客等级: 上将
  • 技术积分: 3297
  • 用 户 组: 普通用户
  • 注册时间: 2006-04-05 16:26
文章分类

全部博文(416)

文章存档

2014年(1)

2013年(4)

2012年(46)

2011年(64)

2010年(12)

2009年(4)

2008年(40)

2007年(187)

2006年(58)

分类:

2007-10-16 10:35:39

硬盘主引导记录结构

关键词:                                          

硬盘主引导记录结构

硬盘的主引导记录在硬盘的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-01FFH55?AAH主引导记录有效标志

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


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

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


下表是一个例子:
表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结束。

阅读(733) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~