MBR分区结构

MBR分区结构

主引导记录(Master Boot Record,缩写:MBR)是开机后必须要读取的首个扇区,在硬盘的(0柱面,0磁头,1扇区)。该扇区开头的446字节内容特指为“主引导记录”(MBR),其后是4个16字节的“磁盘分区表”(DPT),以及2字节的结束标志(55AA)。

在我电脑上使用WinHex查看扇区如下:
这里写图片描述
引导程序代码是自检后启动操作系统的,改变它可以实现多系统。
硬盘分区表存着分区信息,大小为64字节,4项,每一项占16字节,每一项的意义如下:
这里写图片描述
MBR结构的硬盘只支持4个主分区,或者3个主分区加上1个拓展分区,拓展分区为链式结构,可划分多个逻辑分区,MBR分区容量最大为2T。GPT分区结构与MBR不同,理论上支持很多个主分区,但是操作系统会做限制。

当前磁盘情况为
这里写图片描述

磁盘分区表为
这里写图片描述
分区表第一项为

80 20 21 00 07 FE 3F 0C 00 08 00 00 00 20 03 00

80:分区为活动分区,00表示的是非活动分区
20 21 00:开始磁头、起始扇区、起始柱面
07:文件系统标示,07表示文件系统类型为NTFS
    常见的还有:
      05:CHS寻址模式的拓展分区,容量最大为2Gb
      0F:LBA寻址模式的拓展分区,容量最大为2Tb
      0B:CHS寻址模式的FAT32,容量最大为2Gb
      0C:LBA寻址模式的FAT32,容量最大为2Tb
FE 3F 0C:结束磁头、结束扇区、结束柱面
00 08 00 00:分区起始相对扇区号
00 20 03 00:分区总扇区
注:开始扇区开始柱面、结束扇区结束柱面等会限制容量,CHS寻址模式使用,LBA寻址模式似乎不用,而现在应该基本都是LBA模式的了,详细信息自行搜索。

因此第一分区起始扇区为:00 00 08 00,也就是从2048扇区开始,容量为:00 03 20 00扇区,即204800扇区,为100兆;使用diskpart查看第一分区大小为100兆,偏移为1024Kb,也就是2048个扇区。
这里写图片描述
使用WinHex查看分区参数为:
这里写图片描述

同理计算第二个分区起始扇区为:00 03 28 00,容量为04 F1 98 00扇区,计算为:82941952扇区,约为39.55Gb:使用WinHex查看分区表参数为:
这里写图片描述

下一个分区表项的分区类型为0F,表示LBA寻址方式的拓展分区,这时候该项实际上并不储存分区,只是储存逻辑分区的分区入口。
它的起始扇区为:04 F4 C0 00,大小为: 02 8B 38 00,约为20.35Gb,这个大小是拓展分区的大小,也就是两个逻辑分区的总容量,它的起始扇区实际上存着逻辑分区入口。
使用WinHex查看分区参数为:
这里写图片描述

接下来我们需要进入到逻辑分区,扩展分区中的每个逻辑驱动器都存在一个类似于MBR的扩展引导记录(Extended Boot Record,EBR)。进入相对扇区:04 F4 C0 00或者绝对地址:09 E9 80 00 00查看拓展引导记录:
这里写图片描述

可以看到第一项偏移为:00 00 08 00,大小为:01 38 80 00扇区,约为:9.77Gb,这里为什么有一个:00 00 08 00的偏移呢?
WinHex中看到的是这样,表示这里有一个1Mb的Partition gap,不知道这个分区间隙怎么出现的。
这里写图片描述

接下来第二项是偏移在:01 38 88 00处,大小为:01 52 B0 00扇区,约为:10.58Gb;
第三项第四项都应当是空的,第一项是当前分区信息,第二项连接到下一个分区,最后一个分区的EBR第二项应当以全0填充。

我们到下一个分区,偏移:01 38 88 00处(计算得到绝对地址为:0C 5A 90 00 00)可以看到:这里写图片描述

可以看到和预料的一样,EBR只有第一项,其他项全为0。

可以用下图粗略描述MBR分区结构:
这里写图片描述

参考:http://www.blogfshare.com/mbr-dpt-ebr.html

  • 11
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
DiskGenius是一款硬盘分区据恢复软件。它是在最初的DOS版的基础上开发而成的。Windows版本的DiskGenius软件,除了继承并增强了DOS版的大部分功能外(少部分没有实现的功能将会陆续加入),还增加了许多新的功能。如:已删除文件恢复、分区复制、分区备份、硬盘复制等功能。另外还增加了对VMWare虚拟硬盘的支持。更多功能正在制作并在不断完善中。另外,应广大用户的要求,新的DOS版本也在制作当中,不久即将发布。 DiskGenius软件的要功能及特点如下:   1、支持传统的MBR分区表格式及较新的GUID分区表格式。   2、支持基本的分区建立、删除、隐藏等操作。可指定详细的分区;   3、支持IDE、SCSI、SATA等各种类型的硬盘。支持U盘、USB硬盘、存储卡(闪存卡);   4、支持FAT12、FAT16、FAT32、NTFS文件系统;   5、支持EXT2/EXT3文件系统的文件读取操作。支持Linux LVM2磁盘管理方式;   6、可以快速格式化FAT12、FAT16、FAT32、NTFS分区。格式化时可设定簇大小、支持NTFS文件系统的压缩属性;   7、可浏览包括隐藏分区在内的任意分区内的任意文件,包括通过正常方法不能访问的文件。可通过直接读写磁盘扇区的方式读写文件、强制删除文件;   8、支持盘符的分配及删除;   9、支持FAT12、FAT16、FAT32、NTFS分区的已删除文件恢复、分区误格式化后的文件恢复。成功率较高;   10、增强的已丢失分区恢复(重建分区表)功能,恢复过程中,可即时显示搜索到的分区分区内的文件。搜索完成后,可在不保存分区表的情况下恢复分区内的文件;   11、提供分区表的备份与恢复功能;   12、可将整个分区备份到一个镜像文件中,可在必要时(如分区损坏)恢复。支持在Windows运行状态下备份系统盘;   13、支持分区复制操作。并提供“全部复制”、“按结构复制”、“按文件复制”等三种复制方式,以满足不同需求;   14、支持硬盘复制功能。同样提供与分区复制相同的三种复制方式;   15、支持VMWare虚拟硬盘文件(“.vmdk”文件)。打开虚拟硬盘文件后,即可像操作普通硬盘一样操作虚拟硬盘;   16、可在不启动VMWare虚拟机的情况下从虚拟硬盘复制文件、恢复虚拟硬盘内的已删除文件(包括格式化后的文件恢复)、向虚拟硬盘复制文件等;   17、支持 ".img" ".ima" 磁盘分区映像文件的制作及读写操作;   18、支持USB-FDD、USB-ZIP模式启动盘的制作及其文件操作功能;   19、支持磁盘坏道检测与修复功能。
一般要将硬盘分成引导扇区、操作系统引导扇区、FAT表、DIR目录区和Data据区等五部分,这里分别进行了介绍!硬盘的文件系统结构 • 新买的硬盘,是没有直接办法使用的,需要将它分区、格式化,然后再安装上操作系统才可以使用。就拿一直沿用到现在的Win9x/Me/2000/XP系列来说,一般要将硬盘分成引导扇区、操作系统引导扇区、FAT表、DIR目录区和Data据区等五部分。通常所说的引导扇区MBR一个硬盘中是是唯一的,MBR区的内容只有在硬盘启动时才读取其内容,然后驻留内存。其它几项内容随你的硬盘分区的多少而异。 • 引导扇区MBR)。引导扇区位于整个硬盘的0磁道0柱面1扇区,包括硬盘引导记录MBR(Main Boot Record)和分区表DPT(Disk Partition Table)。其中引导记录的作用就是检查分区表是否正确以及判别哪个分区为可引导分区,并在程序结束时把该分区的启动程序(也就是操作系统引导扇区)调入内存加以执行。 • 分区表(DPT)。在引导区中,从地址BE开始,到FD结束为止的64个字节中的内容就是通常所说的分区表。分区表以80H或00H为开始标志,以55AAH为结束标志,每个分区占用16个字节,一个硬盘最多只能分成四个分区,其中扩展分区也是一个分区。随着硬盘容量的迅速扩大,引入的扩展分区可以不受四个分区的限制,把硬盘分区扩展到“Z”。值得一提的是,MBR是由分区程序(例如DOS的Fdisk.exe)产生的,不同的操作系统可能这个扇区的内容代码是不相同,但是实现的功能只有一个,使其中的一个活动分区获得控制区,正常启动系统。 • 引导扇区MBR)。引导扇区位于整个硬盘的0磁道0柱面1扇区,包括硬盘引导记录MBR(Main Boot Record)和分区表DPT(Disk Partition Table)。其中引导记录的作用就是检查分区表是否正确以及判别哪个分区为可引导分区,并在程序结束时把该分区的启动程序(也就是操作系统引导扇区)调入内存加以执行。 • 分区和扩展分区分区一个比较单纯的分区,通常位于硬盘的最前面一块区域中,构成逻辑C磁盘。在分区中,不允许再建立其它逻辑磁盘。也可以通过分区软件,在分区的最后建立分区,或在磁盘的中部建立分区。扩展分区的概念则比较复杂,也是造成分区逻辑磁盘混淆的要原因。由于硬盘仅仅为分区表保留了64个字节的存储空间,而每个分区的参占据16个字节,故引导扇区中总计可以存储4个分区据。操作系统只允许存储4个分区据,如果说逻辑磁盘就是分区,则系统最多只允许4个逻辑磁盘。对于具体的应用,4个逻辑磁盘往往不能满足实际需求。为了建立更多的逻辑磁盘供操作系统使用,系统引入了扩展分区的概念。 所谓扩展分区,严格地讲它不是一个实际意义的分区,它仅仅是一个指向下一个分区的指针,这种指针结构将形成一个单向链表。这样在引导扇区中除了分区外,仅需要存储一个被称为扩展分区分区据,通过这个扩展分区据可以找到下一个分区(实际上也就是下一个逻辑磁盘)的起始位置,以此起始位置类推可以找到所有的分区。无论系统中建立多少个逻辑磁盘,在引导扇区中通过一个扩展分区的参就可以逐个找到每一个逻辑磁盘。 • 操作系统引导扇区(OBR)。OBR(OS Boot Record)即操作系统引导扇区,通常位于硬盘的0磁道1柱面1扇区(这是对于DOS来说的,对于那些以多重引导方式启动的系统则位于相应的分区/扩展分区的第一个扇区),是操作系统可直接访问的第一个扇区,它也包括一个引导程序和一个被称为BPB(BIOS Parameter Block)的本分区记录表。其实每个逻辑分区都有一个OBR,其参分区的大小、操作系统的类别而有所不同。引导程序的要任务在当根目录中寻找系统文件IO.SYS,MSDOS.SYS和WINBOOT.SYS三个文件,如果存在,就把IO.SYS文件读入内存,并移交控制权予该文件。在WIN98的系统中,没有MSDOS.sys文件,系统能够正常启动,但是无法进入桌面;如果没有COMMAND.COM文件,能够正常启动到桌面,但是无法进入DOS字符方式。 BPB参块:记录着本分区起始扇区、结束扇区、文件存储格式、硬盘介质描述符、根目录大小、FAT个、分配单元(Allocation Unit,以前也称之为簇)的大小等重要参。OBR由高级格式化程序产生(例如DOS 的Format.com)。 • 文件分配表(FAT)。FAT(File Allocation Table)即文件分配表,是DOS/Win9x系统的文件寻址系统。为了防止意外损坏,FAT一般做两个(也可以设置为一个),第二FAT为第一FAT的备份, FAT区紧接在OBR之后(对于FAT32格式,位置是从引导扇区开始的第32个扇区就是第一个FAT表的位置),其大小由这个分区的空间大小及文件分配单元的大小决定。随着硬盘容量的迅速发展,Microsoft 的DOS及Windows也先后采用我们所熟悉的FAT12、FAT16和FAT32格式。不过Windows NT、OS/2、UNIX/Linux、Novell等都有自己的文件管理方式,不同于FAT文件格式。FAT12是使用12BIT来表示簇的位置,最大容量32M,FAT16是使用两个字节16BIT位来表示簇的位置,分区最大容量2G,而FAT32采用4个字节来表示簇的位置,分区最大容量65G。 • 目录区(DIR)。DIR是Directory即根目录区的简写,在FAT12和FAT16格式中,DIR紧接在第二FAT表之后,而在FAT32格式中,根目录区的位置可以在分区中的任意位置,其起始位置是由引导扇区给出的。单有FAT表还不能确定文件在磁盘中的具体位置,只有FAT表和DIR区配合使用,才能准确定位文件的确切位置。DIR记录着每个文件(目录)的文件名,扩展名,是否支持长文件各,起始单元(这是最重要的)、文件的属性,大小,创建日期,修改日期等住处内容。操作系统在读写文件时,根据DIR中的起始单元,结合FAT表就可以知道文件在磁盘的具体位置,然后顺序读取每个簇的内容就可以了。 • 据区(DATA) 。在DIR区之后,才是真正意义上的据存储区,即DATA区。DATA虽然占据了硬盘的绝大部分空间,但没有了前面的各部分,它对于我们来说,也只能是一些枯燥的二进制代码,没有任何意义。注意:我们通常所说的格式化程序(指高级格式化,例如DOS下的Format程序),并没有把DATA区的据清除,只是重写了FAT表而已,除非你使用了“Format X: /U”命令,强制对每一扇区写“F6”。 至于硬盘分区,也只是修改了MBR和OBR,绝大部分的DATA区的据并没有被改变,这也是许多硬盘据能够得以修复的原因。但即便如此,MBR,OBR,FAT,DIR之一被破坏的话,我们的据也无法正常读取。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值