一哥MBR是一个硬盘主引导记录分析器,支持读入、转储、还原MBR。
MBR是什么:
MBR,全称为MasterBootRecord,即硬盘的主引导记录。
为了便于理解,一般将MBR分为广义和狭义两种:广义的MBR包含整个扇区(引导程序、分区表及分隔标识),也就是上面所说的主引导记录;而狭义的MBR仅指引导程序而言。
硬盘的0柱面、0磁头、1扇区称为主引导扇区(也叫主引导记录MBR)。它由三个部分组成,主引导程序、硬盘分区表DPT(DiskPartitiontable)和硬盘有效标志(55AA)。在总共512字节的主引导扇区里主引导程序(bootloader)占446个字节,第二部分是Partitiontable区(分区表),即DPT,占64个字节,硬盘中分区有多少以及每一分区的大小都记在其中。第三部分是magicnumber,占2个字节,固定为55AA。
MBR是不属于任何一个操作系统,也不能用操作系统提供的磁盘操作命令来读取它,但可以通过命令来修改和重写,如在minix3里面,可以用命令:installboot-m/dev/c0d0/usr/mdec/masterboot来把masterboot这个小程序写到mbr里面,masterboot通常用汇编语言来编写。我们也可以用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=1AH=错误代码用DEBUG读取位于硬盘0柱面、0磁头、1扇区的操作如下:ADEBUG-A100XXXX:XXXXMOVAX,0201(用功能号2读1个扇区)XXXX:XXXXMOVBX,1000(把读出的数据放入缓冲区的地址为CS:1000)XXXX:XXXXMOVCX,0001(读0柱面,1扇区)XXXX:XXXXMOVDX,0080(指定第一物理盘的0磁头)XXXX:XXXXINT13XXXX:XXXXINT3XXXX:XXXX(按回车键)-G=100(执行以上程序段)-D100011FF(显示512字节的MBR内容)在windows操作系统下,例如xp,2003,Vista,windows7,有微软提供的接口直接读写mbr;FILE*fd=fopen("\\\\.\\PHYSICALDRIVE0","rb+");charbuffer;fread(buffer,512,1,fd);//thenyoucaneditbufferasyourwish......fseek(fd,0,SEEK_SET);//很重要fwrite(buffer,512,1,fd);//把修改后的MBR写入到你的机器fclose(fd);//大功告成
MBR组成:
一个扇区的硬盘主引导记录MBR由4个部分组成。硬盘MBR扇区·主引导程序(偏移地址0000H--0088H),它负责从活动分区中装载,并运行系统引导程序。·出错信息数据区,偏移地址0089H--00E1H为出错信息,00E2H--01BDH全为0字节。·分区表(DPT,DiskPartitionTable)含4个分区项,偏移地址01BEH--01FDH,每个分区表项长16个字节,共64字节为分区项1、分区项2、分区项3、分区项4。·结束标志字,偏移地址01FE--01FF的2个字节值为结束标志55AA,称为“魔数”(magicnumber)。如果该标志错误系统就不能启动。MBR的结构如下表所示字节偏移(16进制)字节数描述00~1BD446引导代码1BE~1CD16分区表项11CE~1DD16分区表项21DE~1ED16分区表项31EE~1FD16分区表项41FE~1FF2
签名值“55AA”
具体含义如下:
(1)0x00~0x1BD:446个字节,包含一段指令,用以通知计算机如何访问分区表并定位操作系统的位置
这部分的代码会因为操作系统不同而不同,利用引导代码可以实现多重系统引导。多系统引导有两种方法可以实现:一种方法是用Windows操作系统在引导分区中设置一段代码,先加载进入用户选择系统的界面,允许用户选择要进入的系统,再进入指定的系统;第二种方法是改变MBR中的引导代码,该代码直接呈现给用户一个选择系统的界面。
(2)0x1BE~0x1FD:64个字节,4个分区表项,每个表项占用16个字节,描述一个分区,最多可以描述4个分区(这就是为什么MBR分区体系只能分成4个区【我们平时看到的分区一般可以从26个字母中选取任意多个当做分区标识(多于4个),这是因为那些分区是逻辑分区,这里的4个分区指的是主分区和扩展分区的数目,而逻辑分区是在扩展分区中划分出来的,也叫做二级、三级扩展分区。】)。
分区表项并没有顺序要求,即不要求第一个分区表项在第二个分区表项前。
分区表也不要求从第一个分区表项开始
(3)0x1FE~0x1FF:2个字节,有效结束标志“55AA”。如果没有这个标志,操作系统会认为磁盘没有初始化,无法正确加载磁盘的分区。
分区表参数含义(字节)1活动(80)或非活动分区(00)234起始的磁头01柱面01扇区00值5分区类型符NTFS(07)FAT32(0B)扩展(0F)678结束的磁头FE柱面FF扇区FF值9101112本分区之前已用扇区数13141516本分区大小虚拟MBR即EBR(extentbootrecord)扩展引导记录其记录表项与MBR相同,用于管理扩展还能分区上的逻辑驱动器。
Tags:MBR.
小编点评:作为专为数码照片浏览而定制的工具软.
下载小编点评: 专门用于更改序列号破解硬盘注册等
下载小编点评:软件介绍这个绘画软件有众多自然及超自然.
下载小编点评:软件介绍动态磁盘转换器(动态磁盘转换为.
下载小编点评:软件介绍网易云歌单匹配工具是一款非常简单且.
下载小编点评:九炼成仙手游是一款仙侠类角色扮演手游,
下载小编点评:越天奇谭安卓版是一款玄幻战斗动作手.
下载小编点评:御兽少年手游是玄幻题材的仙侠手游,游戏画.
下载小编点评:精灵q传手游是一款制作非常精美的宠物战斗游戏,
下载小编点评:神奇的青蛙手机版这是一款冒险的动作闯.
下载小编点评:圣斗士星矢小宇宙幻想传游戏单机版是.
下载小编点评:创世纪元手游百度版客户端是一款非常好玩.
下载小编点评:彩色之路官方最新版是一款二次元异世界冒.
下载巨龙城堡最新版下载-巨龙城堡手游官方版下载v7.1.0 安卓官方版
运动斗士官方下载-运动斗士手游下载v1.0.3 安卓版
权力的守护者手游下载-权力的守护者游戏下载v1.4 安卓版
归乡破解版手游下载-归乡无限金币版下载v1.00.76 安卓版
水浒乱斗手游百度版下载-水浒乱斗百度游戏下载v1.3.5 安卓最新版
梦幻奇缘挂机下载-梦幻奇缘挂机手游下载v1.1.1 安卓最新版
倾世情缘手游下载-倾世情缘手机版下载v1.0.0 安卓版
烈火屠神游戏下载-烈火屠神官方版下载v1.0 安卓版
裂色奇迹官网-裂色奇迹最新手游(暂未上线)v1.1 安卓版
万古仙缘手游免费下载-万古仙缘游戏下载v7.4.0 官方安卓最新版
小白不言弃百度客户端下载-小白不言弃百度版下载v2.3 安卓版
新千姬大乱斗手机版安装-新千姬大乱斗手游(暂未上线)v1.4.3 安卓版
天中三风手游下载-天中三风官方正版下载v3.0.0 安卓最新版