Oct 13

MBR:为计算机启动后从可启动介质上首先装入内存并且执行的代码,通常用来解释分区结构。以硬盘为例,通常为LBA的0扇区。

EBR:自Microsoft推出扩展分区的概念后,扩展分区就沿用了基本分区所采用的DPT结构,为了加以区别,们通常把扩展分区的分区表所在扇区称为EBR、EMBR、扩展MBR或虚拟MBR。

DBR:为操作系统进入文件系统以后可以访问的第一个扇区,通常用来解释文件系统,在UNIX类文件系统中,等同于SUPERBLOCK。

详请参阅:http://www.raid-recovery.org/Article/sjhfdoc/200404/1.html

Oct 13

MBR(Master Boot Recored),中文意为主引导记录。

硬盘的0磁道的第一个扇区称为MBR,它的大小是512字节,而这个区域可以分为两个部分。第一部分为pre-boot区(预启动区),占446字节;第二部分是Partition table 区(分区表),占66字节,该区相当于一个小程序,作用是判断哪个分区被标记为活动分区,然后去读取那分区的启动区,并运行该区中的代码。

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

用INT13H的读磁盘扇区功能的调用参数如下:

入口参数:AH=2(指定功能号)

AL=要读取的扇区数

DL=磁盘号(0、1-软盘;80、81-硬盘)

DH=磁头号

CL高2位+CH=柱面号

CL低6位=扇区号

CS:BX=存放读取数据的内存缓冲地址

出口参数:CS:BX=读取数据存放地址

错误信息:如果出错CF=1 AH=错误代码

用DEBUG读取位于硬盘0柱面、0磁头、1扇区的操作职下:

A>DEBUG

-A 100

XXXX:XXXX MOV AX,0201(用功能号2读1个扇区)

XXXX:XXXX MOV BX,1000(把读出的数据放入缓冲区的地址为CS:1000)

XXXX:XXXX MOV CX,0001(读0柱面,1扇区)

XXXX:XXXX MOV DX,0080(指定第一物理秀的0磁头)

XXXX:XXXX INT 13

XXXX:XXXX INT 3

XXXX:XXXX  (按回车键)

-G=100(执行以上程序段)

-D 1000 11FF(显示512字节的MBR内容)