硬盘主引导记录详解

合集下载

主引导程序和主引导记录mbr

主引导程序和主引导记录mbr
我知道主引导记录mbr,但主引导程序是怎么回事呢?两者一样吗?
引导文件是不是用来引导启动操作系统的?引导文件是不是就是boot.ini之类的东西呢,一般还包括什么?问得比较杂,也怪我有些概念没搞清楚。大家帮帮忙,帮我把一些基本的概念梳理梳理,谢谢啊。我再出5分。
主引导记录包括硬盘的一系列<<参数>>和一段<<主引导程序>>。主引导主要作用是检查分区表是否正确,并且在系统硬件完成自检以后引导具有激活标志的分区上的操作系统(主引导分区),再将控制权交给启动程序(也就是操作系统引导程序,),启动程序判断本分区跟目录前两个文件是不是操作系统的引导文件(以DOS为丽,既是io.sys和msdos.sys,如果是Windows95,Windows98的DOS,则是io.sys)。如果确定存在,就把它读入内存,并把控制权交给该文件,用于操作系统的启动。如果安装多个操作系统,启动程序位于安装操作系统分区的第一个扇区,而boot.ini文件,通常用来确定计算机在重启(引导)过程中显示的可供选取的操作系统类别,具有指定多操作系统引导扇区位置的作用。
MBR由三部分构成:
1.主引导程序代码,占446字节
2.硬盘分区表DPT,占64字节
3.主引导扇区结束标志AA55H
主引导代码实现下列功能:
1.扫描分区表查找活动分区;
2.寻找活动分区的起始扇区;
3.将活动分区的引导扇区读到内存;
4.执行引导扇区的运行代码。
如果主引导代码未完成这些功能,系统显示下列错误信息:
Invalid partition table
Error loading operating system
Missing operating system

硬盘主引导记录(MBR)及其结构详解

硬盘主引导记录(MBR)及其结构详解

硬盘主引导记录(MBR)及其结构详解硬盘的0柱面、0磁头、1扇区称为主引导扇区,FDISK程序写到该扇区的内容称为主引导记录(MBR)。

该记录占用512个字节,它用语硬盘启动时将系统控制权交给用户指定的,并在分区表中登记了的某个操作系统区。

1.MBR的读取硬盘的引导记录(MBR)是不属于任何一个操作系统,也不能用操作系统提供的磁盘操作命令来读取它。

但我们可以用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 100XXXX: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 13XXXX:XXXX INT 3XXXX:XXXX (按回车键)-G=100 (执行以上程序段)-D 1000 11FF (显示512字节的MBR 内容)2.MBR 的组成一个扇区的硬盘主引导记录MBR 由如图6-15所示的4个部分组成。

·主引导程序(偏移地址0000H--0088H ),它负责从活动分区中装载,并运行系统引导程序。

·出错信息数据区,偏移地址0089H--00E1H 为出错信息,00E2H--01BDH 全为0字节。

主引导记录MBR的结构和作用

主引导记录MBR的结构和作用

主引导记录MBR的结构和作⽤MBR磁盘分区都有⼀个引导扇区,称为主引导记录,英⽂简称为MBR。

1. MBR的结构MBR扇区位于整个硬盘的第⼀个扇区:按照C/H/S地址描述,即0柱⾯〇磁头1扇区:按照LBA地址描述即0扇区。

它是⼀个特殊⽽重要的扇区。

在总共512字节的MBR扇区中,由四部分结构组成:(1) 引导程序引导程序占⽤其中的前440字节,其地址在偏移1B7H处。

(2) Windows磁盘签名Windows磁盘标签占⽤引导程序后的4字节,其地址在偏移1B8H〜偏移1BBH处,是Windows系统对硬盘初始化时写⼊的⼀个磁盘标签。

(3) 分区表偏移1BEH〜偏移1FDH的64字节为DPT (Disk Partition Table,硬盘分区表),这是MBR中⾮常重要的⼀个结构。

(4) 结束标志扇区最后的两个字节“55 AA”(偏移1FEH〜偏移1FFH)是MBR的结束标志。

⽤WinHex查看⼀块硬盘的MBR扇区,其结构如图所⽰。

2. MBR的作⽤MBR扇区在计算机引导过程中起着举⾜轻重的作⽤。

计算机在按下电源键以后,开始执⾏主板的BIOS程序,进⾏完⼀系列检测和配置以后,开始按CMOS中设定的系统引导顺序进⾏引导。

主板BIOS执⾏完⾃⼰的程序后如何把执⾏权交给硬盘呢?交给硬盘后⼜执⾏存储在哪⾥的程序呢?让我们通过了解MBR的作⽤来解开这些疑问吧。

(1) 引导程序的作⽤—计算机主板的BIOS程序在⾃检通过后,会将MBR扇K整个读取到内存中,然后将执⾏权交给内存中MBR扇区的引导程序。

引导程序⾸先会将⾃⼰整个搬到⼀个较为安全的地址中,⽬的是防⽌⾃⼰被随后读⼊的其他程序覆盖,因为引导程序⼀旦被破坏,就会引起计算机死机,从⽽⽆法正常引导系统。

系统下⼀步就会判断读⼊内存的MBR扇R的最后两个字节是否为“55 AA”,如果不是则报错,在屏幕上会列出错误信息。

如果是“55 AA”,接下来引导程序会到分区表中査找是否有活动分区,若有活动分区,则判断活动分区的引导扇区在磁盘中的地址,并将该引导扇区读⼊内存及判断其合法性,如果是⼀个合法的引导扇区,随后的引导权就交给这个引导扇区去引导操作系统了,MBR引导程序的使命也就完成了。

硬盘主引导记录详解

硬盘主引导记录详解

硬盘的数据结构关于一些朋友来讲老是很神密!什么缘故咱们删除的文件用软件能找到?什么缘故咱们格式化了的硬盘数据还能找回来?要回答这一切,你就得对硬盘的数据结构有个清醒的熟悉。

硬盘上的数据由五大部份组成,它们别离是:MBR区、DBR区,FAT区,DIR区和DATA区。

1.MBR(Main Boot Record)区,即主引导记录区,位于整个硬盘的0磁道0柱面1扇区.2.DBR(Dos Boot Record)区,操作系统引导记录区。

位于硬盘的0磁道1柱面1扇区,是操作系统能够直接访问的第一个扇区.3.FAT(File Allocation Table文件分派表)区;4.DIR(Directory)根目录区,记录着根目录下每一个文件(目录)的起始单元,文件的属性等;5.DATA区是真正意义上的数据存储的地址,位于DIR区以后,占据硬盘上的大部份数据空间。

了解了硬盘数据的大体结构,今天咱们把重点放在mbr所在的扇区:主引导扇区。

主引导扇区包括:mbr,dpt和终止标志。

位于硬盘的0磁道0柱面1扇区,用diskman能够读出其中的内容,下面是一次操作的结果:表一:0 1 2 3 4 5 6 7 8 9 A B C D E F00000000 EB48 90D0 BC00 7CFB 5007 501F FCBE 1B7C00000010 BF1B 0650 57B9 E501 F3A4 CBBE BE07 B10400000020 382C 7C09 7515 83C6 10E2 F5CD 188B 148B00000030 EE83 C610 4974 1638 2C74 F6BE 1007 030200000040 8000 0080 68B6 7600 0008 FAEA 507C 000000000050 31C0 8ED8 8ED0 BC00 20FB A040 7C3C FF7400000060 0288 C252 BE81 7DE8 3F01 F6C2 8074 5FB4 00000070 41BB AA55 CD13 7256 81FB 55AA 7550 A041 00000080 7C84 C075 0583 E101 7444 B448 BE00 7FC7 00000090 0442 00CD 1372 3766 8B4C 10BE 057C C644 000000A0 FF01 668B 1E44 7CC7 0410 00C7 4402 0100 000000B0 6689 5C08 C744 0600 7066 31C0 8944 0466 000000C0 8944 0CB4 42CD 1372 05BB 0070 EB7D B408 000000D0 CD13 730A F6C2 800F 84E8 00E9 8D00 BE05 000000E0 7CC6 44FF 0066 31C0 88F0 4066 8944 0431 000000F0 D288 CAC1 E202 88E8 88F4 4089 4408 31C0 00000100 88D0 C0E8 0266 8904 66A1 447C 6631 D266 00000110 F734 8854 0A66 31D2 66F7 7404 8854 0B89 00000120 440C 3B44 087D 3C8A 540D C0E2 068A 4C0A 00000130 FEC1 08D1 8A6C 0C5A 8A74 0BBB 0070 8EC3 00000140 31DB B801 02CD 1372 2A8C C38E 0648 7C60 00000150 1EB9 0001 8EDB 31F6 31FF FCF3 A51F 61FF 00000160 2642 7CBE 877D E840 00EB 0EBE 8C7D E838 00000170 00EB 06BE 967D E830 00BE 9B7D E82A 00EB 00000180 FE47 5255 4220 0047 656F 6D00 4861 726400000190 2044 6973 6B00 5265 6164 0020 4572 726F000001A0 7200 BB01 00B4 0ECD 10AC 3C00 75F4 C300000001B0 0000 0000 0000 0000 4CA6 4CA6 0000 8001000001C0 0100 0BFE 3FD8 3F00 0000 5A31 3500 0000000001D0 01D9 0FFE FFFF 9931 3500 04FF FB00 0000000001E0 0000 0000 0000 0000 0000 0000 0000 0000000001F0 0000 0000 0000 0000 0000 0000 0000 55AA这块10.2G(以下显示为9766MB,误差缘故不用我说明了吧?)的硬盘共分了四个区:分区结构如下:主引导扇区中前446字节--偏移地址从0000H-01BDH为mbr区,寄存着主引导程序,从上面的显示中,读者可能已经看出,那个硬盘以linux系统的grub为引导程序。

mbr的原理

mbr的原理

mbr的原理MBR(Master Boot Record,主引导记录)是位于计算机硬盘的第一个扇区的512字节空间,它存储着引导计算机操作系统的信息。

MBR 的原理是一个相对简单的引导过程,它涉及到硬盘的分区表、引导加载程序以及操作系统的启动。

MBR包含了硬盘的分区表,用于记录硬盘上的分区信息。

分区是指将硬盘划分成不同的逻辑部分,每个分区可以装载一个操作系统。

分区表记录了每个分区的起始位置、大小以及分区的属性信息。

通过分区表,计算机可以识别硬盘上的其他分区,并找到要引导的操作系统所在的分区。

MBR包含了引导加载程序(boot loader),也称为主引导记录指针。

这是一个非常重要的组件,它位于MBR的前446个字节内。

引导加载程序的作用是加载操作系统,并将控制权交给操作系统的内核。

引导加载程序首先执行硬件自检(POST)来检测计算机硬件的状态,然后开始加载操作系统。

它会根据分区表中的信息选择要加载的分区,并读取该分区的引导扇区。

引导扇区由操作系统的引导代码(boot code)组成,它包含了操作系统的核心功能。

MBR的引导加载程序会将控制权交给操作系统的引导代码。

操作系统的引导代码会进一步初始化系统环境并加载操作系统的内核文件。

内核文件是操作系统的核心部分,包含了操作系统的主要功能和驱动程序。

总结起来,MBR的原理就是通过分区表和引导加载程序来引导计算机加载操作系统。

MBR的分区表记录了硬盘上不同分区的信息,引导加载程序负责选择要加载的分区并加载操作系统的引导代码。

最终,操作系统的引导代码会进一步加载操作系统的内核文件,让计算机正常启动并运行。

需要注意的是,MBR仅适用于传统的BIOS(Basic Input/Output System)系统,而现代的计算机普遍采用UEFI(Unified Extensible Firmware Interface)固件,其中引入了新的引导机制。

UEFI使用GPT(GUID Partition Table)分区表取代了MBR的分区表,而引导加载程序也有所不同。

硬盘主引导记录(MBR)及其结构详解

硬盘主引导记录(MBR)及其结构详解

硬盘主引导记录(MBR)及其结构详解hbrqlpf 于 2008-10-01 21:14:00 发布14569 收藏 5 文章标签:扩展磁盘代码分析任务活动basic硬盘的0柱面、0磁头、1扇区称为主引导扇区,FDISK程序写到该扇区的内容称为主引导记录(MBR)。

该记录占用512个字节,它用于硬盘启动时将系统控制权交给用户指定的,并在分区表中登记了的某个操作系统区。

1.MBR的读取硬盘的引导记录(MBR)是不属于任何一个操作系统,也不能用操作系统提供的磁盘操作命令来读取它。

但我们可以用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 100XXXX: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 13XXXX:XXXX INT 3XXXX:XXXX (按回车键)-G=100 (执行以上程序段)-D 1000 11FF (显示512字节的MBR内容)2.MBR的组成一个扇区的硬盘主引导记录MBR由4个部分组成。

主引导程序(偏移地址0000H--0088H),它负责从活动分区中装载,并运行系统引导程序。

硬盘主引导记录(MBR)及其故障处理

硬盘主引导记录(MBR)及其故障处理

硬盘主引导记录(MBR)及其结构详解硬盘的0柱面、0磁头、1扇区称为主引导扇区,FDISK程序写到该扇区的内容称为主引导记录(MBR)。

该记录占用512个字节,它用语硬盘启动时将系统控制权交给用户指定的,并在分区表中登记了的某个操作系统区。

1.MBR的读取硬盘的引导记录(MBR)是不属于任何一个操作系统,也不能用操作系统提供的磁盘操作命令来读取它。

但我们可以用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 100XXXX: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 13XXXX:XXXX INT 3XXXX:XXXX (按回车键)-G=100 (执行以上程序段)-D 1000 11FF (显示512字节的MBR内容)2.MBR的组成一个扇区的硬盘主引导记录MBR由如图6-15所示的4个部分组成。

·主引导程序(偏移地址0000H--0088H),它负责从活动分区中装载,并运行系统引导程序。

·出错信息数据区,偏移地址0089H--00E1H为出错信息,00E2H--01BDH全为0字节。

mbr分区表格式

mbr分区表格式

mbr分区表格式MBR(Master Boot Record,主引导记录)是一种用于硬盘的分区表格式,它记录了硬盘上所有分区的相关信息。

在本文中,我们将详细介绍MBR分区表格式的结构和作用。

一、MBR分区表概述MBR分区表是一种用于BIOS系统的分区表格式,它位于硬盘的第一个扇区,并占据了硬盘的前512字节。

MBR分区表主要记录了硬盘上的主引导码和分区表项信息。

它最多可以记录4个主分区,或者3个主分区和1个扩展分区。

二、MBR分区表结构MBR分区表的结构如下所示:1. 主引导码(446字节):MBR的前446个字节是主引导码,它包含了一个小程序,能够在系统启动时被BIOS加载并执行,从而引导操作系统的安装和启动。

2. 分区表项(64字节):MBR的接下来的64个字节被分为4个分区表项,每个表项占据16个字节。

每个分区表项记录了一个分区的信息,包括分区的起始扇区、分区的大小和分区的活动状态(即该分区是否可以被引导)。

3. MBR签名(2字节):MBR的最后两个字节用于存储MBR的签名,一般为0x55AA。

当BIOS加载MBR时,会检查签名是否正确,以确定MBR的有效性。

三、MBR分区表的作用MBR分区表的作用主要有以下几个方面:1. 引导操作系统:MBR中的主引导码能够启动操作系统的安装和启动过程。

当计算机开机时,BIOS会加载MBR的主引导码,进而引导操作系统的加载和运行。

2. 确定分区的位置和大小:MBR中的分区表项记录了每个分区的起始扇区和分区大小。

操作系统通过读取MBR分区表,可以了解硬盘上每个分区的位置和大小信息,从而正确访问和管理分区中的数据。

3. 标识活动分区:MBR中的分区表项中的"活动"标志位用于标识哪个分区可以被引导。

当计算机启动时,BIOS会加载活动分区的引导程序,并从该分区中启动操作系统。

四、MBR分区表的局限性尽管MBR分区表在过去几十年间被广泛使用,但它也存在一些局限性:1. 分区数限制:MBR分区表最多支持记录4个主分区,或者3个主分区和1个扩展分区。

主引导记录

主引导记录
编制汇编程序结合FDISK重建硬盘的MBR
用汇编语言编制一个内存驻留程序,其控制中断为INT13H,目的是实现阻止对硬盘格式化和硬盘主引导区以外 的写操作,该方法既可解决不丢失硬盘原数据文件,又可修复MBR。
作用
主引导记录是非常重要的一个扇区,其中引导代码用来告诉计算机如何处理分区表,如何定位操作系统等; 分区表用来管理硬盘的分区情况;标志表明该扇区是一个有效的引导记录扇区。
软件层面上的MBR数据恢复方法
Fdisk/MBR命 令修复MBR
FIXMBR修复 MBR
用Win98的引导盘或DOS引导盘引导系统到纯DOS命令提示符下执行“Fdisk/MBR”命令进行无条件重写,主引 导记录一般都能成功,且保留原有数据。Fdisk命令行格式语法为:“Fdisk/参数开关”,其中/MBR参数功能:重新 建立主磁盘的主引导记录。其它的一些隐藏参数,其功能对于有病毒感染主引导扇区时,用来清除病毒时用。需要 提醒的是,隐藏参数危险系数比较大,使用时需谨慎。
图3
(1)硬盘主引导程序,位于该扇区的0-1BDH处。
(2)硬盘分区表,位于1BEH-1FDH处,每个分区表占用16个字节, 4个分区表 (共64字节), 16个字节各字节意 义如表2。
图4
分区状态标记为活动状态时,表示当前分区可以引导操作系统,而非活动状态表示不能引导操作系统。分区从 起始到结束地址部分均以 (H/S/C)记录分区边界。分区起始逻辑扇区及占用总扇区数均以LBA方式表示分区范 围。
组成
主引导记录由三个部分组成:引导程序占用其中的前446字节(偏移0~1BDH),随后的64字节(偏移1BEH~ 1FDH)为DPT(Disk Partition Table,硬盘分区表),最后的两个字节“55 AA”(偏移1FEH~1FFH)是结束 标志。

MBR内容解析

MBR内容解析

1C6H
4B
本分区之前的扇区数,该分区开始的偏移量,以扇区数表示
1CAH
4B
分区的总扇区数
红色部分(1FEH-1FFH):结束标志 作用:表示这个分区表是否有效,非"55 AA"表示这个分区表是无效的.
注意: x86构架上存储数据都是由低位到高位的
附录:
cannotreadpropertyencryptionofnull请尝试刷新页面或更换浏览器重试
放弃使用,几篇文章搬运过来 MBR(Master Boot Record)即主引导记录. 使用Winhex打开,磁盘的第一扇区:
MBR内 容 解 析
黄色部分(000H-1B7H):引导分区 作用:在主板BIOS完成自检之后,将整个MBR完全读取到内存当中,然后执行引导程序.然后依次执行:检测最后两个字节是否为"55 AA",检测是否有活动分区,若有,读入 活动分区的引导扇区地址,判断其是否合法,若合法,将控制权交给操作系统. 需要注意的是,每个磁盘的引导程序都不是一样的,它在格式化磁盘的时候有格式化程序自动产生.
绿色部分(1B8H-1BBH):磁盘签名 作用:Windows系统在对磁盘进行初始化的时候写入的标签,不可或缺,Windows依靠它来识别硬盘. 若丢失,Windows认为硬盘没有初始化.
橙色部分(1BEH-1FDH):分区表 作用:管理磁盘分区,丢失或损坏都会导致分区丢失或损坏. 格式: 1. 分成四部分,每一部分都表示一个独立的分区.一部分16B,即:1BEH-1CDH,1CEH-1DDH,1DEH-1EDH,1EEH-1FDH四部分,总共64B. 2.
字节偏移
字段长度 值
字段名和定义
0H代表活动分区,00代表非活动分区,其它的值非法

什么是MBR

什么是MBR

什么是MBR
MBR的定义
MBR(Main Boot Record)主引导记录是位于磁盘最前边的⼀段引导代码,由磁盘操作系统(DOS)在对磁盘初始化时产⽣,负责磁盘操作系统(DOS)对磁盘进⾏读写时磁盘分区合法性的检查以及磁盘分区引导信息的定位。

MBR相关介绍
包含MRB主引导记录的扇区称为主引导扇区。

由于这⼀扇区承担有不同于磁盘上其他普通存储空间的特殊管理职能,作为管理整个磁盘存储空间的⼀个特殊存储空间,它不属于磁盘上的任何分区,因⽽分区内的格式化命令不能清除MBR主引导记录的任何信息。

主引导扇区占512个字节。

主引导扇区由三个部分组成:
1.主引导记录(MBR)(占446个字节)
它可在FDISK程序中找到,它⽤于硬盘启动时将系统控制转给⽤户指定的并在分区表中登记了的某个操作系统。

2.磁盘分区表(DPT)(DiskPartitionTable)(占64个字节)
它由四个分区表项组成,它说明磁盘上的分区情况,其内容由磁盘介质及⽤户在使⽤FDISK程序定义分区时决定。

3.结束标志(占2个字节)
它的值为AA55(⼗六进制),存储时低位在前,⾼位在后(⼩端存储),即顺看是55AA(⼗六进制)。

注意
磁盘的主引导记录(MBR)是不属于任何⼀个操作系统的。

磁盘的主引导记录(MBR)不能⽤操作系统提供的磁盘操作命令来读取它。

可以⽤ROM-BIOS中提供的INT13H的2号功能来读取主引导扇区的内容。

可以⽤软件⼯具Norton8.0中的DISKEDIT.EXE来读取主引导扇区中的内容。

参考
百度百科。

mbr的原理

mbr的原理

mbr的原理MBR (Master Boot Record,主引导记录)是计算机硬盘上的一个特殊的引导扇区,它包含了启动计算机所需的重要信息。

MBR的原理是为了引导计算机进入操作系统,它是计算机启动过程中的第一个扇区,位于硬盘的第一个物理磁道上。

MBR的结构由三个主要部分组成:引导代码区、分区表和结束符。

其中引导代码区是MBR的核心部分,它包含了引导加载程序,负责加载操作系统。

分区表记录了硬盘上所有分区的信息,包括分区的起始位置、大小和类型等。

结束符则用于标记MBR的结束。

当计算机启动时,主板的BIOS会首先加载MBR到内存中,并将控制权交给MBR中的引导加载程序。

引导加载程序会读取分区表,根据其中的信息选择一个主活动分区,并加载该分区的引导扇区。

引导扇区中的引导程序会进一步加载操作系统的核心文件,最终将控制权交给操作系统。

MBR的原理是基于计算机硬件的启动过程。

在计算机启动时,BIOS会首先自检硬件,然后加载MBR到内存中。

MBR中的引导加载程序会根据分区表选择合适的分区,并加载该分区的引导扇区。

引导扇区中的引导程序会将控制权交给操作系统。

MBR的设计是为了方便计算机的启动和操作系统的加载。

通过MBR,计算机可以自动加载操作系统,而无需手动输入命令。

MBR的结构简单、易于实现,成为了PC机启动过程的标准。

然而,MBR也存在一些问题。

首先,MBR的引导代码区只有446字节大小,其余的64字节用于存储分区表和结束符。

这限制了MBR中引导加载程序的功能和容量。

其次,MBR的分区表只能记录最多四个主分区,这在现代计算机中已经不够用。

此外,MBR无法支持超过2TB的硬盘容量,这在现代大容量硬盘中也存在问题。

为了克服MBR的限制,出现了新的引导方式,如GPT (GUID Partition Table,全局唯一标识分区表)。

GPT使用更大的引导扇区,可以记录更多的分区信息,支持更大的硬盘容量。

GPT还引入了磁盘分区的唯一标识符,提高了数据的安全性和可靠性。

硬盘主引导记录(MBR)+ 硬盘分区表(DPT) 详解

硬盘主引导记录(MBR)+ 硬盘分区表(DPT) 详解

硬盘主引导记录(MBR)+ 硬盘分区表(DPT)详解硬盘主引导扇区 = 硬盘主引导记录(MBR)+ 硬盘分区表(DPT)--------------------------------------------------------------物理位置:0面0道1扇区(clindyer 0, side 0, sector 1)大小: 512字节其中:MBR 446字节(0000--01BD),DPT 64字节(01BE--01FD),结束标志2字节(55 AA)功能:MBR通过检查DPT分区信息引导系统跳转至DBR;读取: 使用NORTON DISKEDIT, 在OBJECT菜单中选择DRIVE——>PHYSICAL DISK-—HARD DISK,然后, 在OBJECT菜单中选择DISK PARTITION TABLE即可读取, 并使用TOOLS菜单中的WRITE OBJECT TO 选项存入指定文件备份;写入: 使用NORTON DISKEDIT, 在OBJECT菜单中选择DRIVE——>FLOOPY DISK, 选择备份的DPT文件, 然后使用TOOLS菜单中的WRITE OBJECT TO——>PHYSICAL SECTOR 选项写入001(clindyer 0, side 0, sector 1);详解:000H--08AH MBR启动程序(寻找开机分区)08BH--0D9H MBR启动字符串0DAH--1BCH保留("0")1BEH--1FDH 硬盘分区表1FEH--1FFH结束标志(55AA)活动分区主引导扇区(DBR)--------------------------物理位置:1面0道1扇区(clindyer 0, side 1, sector 1)大小: FAT16 1扇区 512字节FAT32 3扇区 1536字节功能:包含机器CMOS等信息(0000--0059), 核对该信息并引导指定的系统文件, 如NTLDR 等;读取: 使用NORTON DISKEDIT, 在OBJECT菜单中选择DRIVE——>LOGICALDISK-—DISK C,然后, 在OBJECT菜单中选择BOOT RECORD即可读取, 并使用TOOLS 菜单中的WRITE OBJECT TO选项存入指定文件备份;写入: 使用NORTON DISKEDIT, 在OBJECT菜单中选择DRIVE——>FLOOPY DISK, 选择备份的DBR文件, 然后使用TOOLS菜单中的WRITE OBJECT TO——>PHYSICAL SECTOR 选项写入011(clindyer 0, side 1, sector 1);详解:000H--002H 3 BYTE的跳转指令(去启动程序, 跳到03EH)003H--03DH BIOS参数区03EH--19DH DOS启动程序19EH--1E5H开机字符串1E6H--1FDH文件名(IO.SYS, MSDOS.SYS)1FEH--1FFH 结束标记(55AA)硬盘分区表(DPT)---------------------偏移地址字节数含义分析01BE 1 分区类型:00表示非活动分区:80表示活动分区;其他为无效分区。

MBR详解——精选推荐

MBR详解——精选推荐

MBR详解MBR(Master Boot Record),中⽂意为主引导区记录,位于整个硬盘的0柱⾯0磁道1扇区,共占⽤了63个扇区,但实际只使⽤了1个扇区(512字节)。

在总共512字节的主引导记录中,MBR⼜可分为三部分:第⼀部分为pre-boot区(BOOTLOADER引导程序),占446字节,负责检查硬盘分区表、寻找可引导分区并负责将可引导分区的引导扇区(DBR)装⼊内存,系统由此开始启动;第⼆部分是Partition table区(分区表),占64个字节,每份16字节的4份硬盘分区表(因此,⼀块硬盘最多可以分4个主分区或者3个主分区+1个扩展分区,⼀个扩展分区可以分多个逻辑分区),⾥⾯记载了每个分区的类型、⼤⼩和分区开始、结束的位置等重要内容。

第三部分是magic number(幻数),占2个字节,固定为55AA。

这3部分的⼤⼩加起来正好是512字节=1个扇区(硬盘每扇区固定为512个字节),因此,⼈们⼜形象地把MBR称为“硬盘主引导扇区”。

这个扇区所在硬盘磁道上的其它扇区⼀般均空出,且这个扇区所在硬盘磁道是不属于分区范围内的,紧接着它后⾯的才是分区的内容,操作系统是⽆法读取的。

为了便于理解,⼀般将MBR分为⼴义和狭义两种,⼴义的MBR包含整个扇区(引导程序,分区表,及幻数),也就是上⾯所解释的。

⽽狭义的MBR仅指引导程序(以后不特殊说明指狭义概念),不同的操作系统MBR是不同的,⽤安装盘装系统可以重写硬盘MBR,⽽GHOST恢复C盘却不⾏,因此初次装系统或更换操作系统类型⼀般都⽤安装盘安装。

相关问题:1、区分MBR区、DBR区、FAT区、DIR区和DATA区?(1)0磁道0柱⾯区(也有⼈直接将该区称为MBR),包括⼴义MBR区+剩余未⽤的62个扇区。

0磁道0柱⾯1扇区,⼴义的MBR区,共占⽤512字节,包括狭义MBR( 446字节)+DPT分区表(64字节)+55AA结束标志(2字节),MBR通过检查DPT分区信息引导系统跳转⾄DBR。

什么是主引导记录、分区引导记录、主引导引程序、分区表、结束语、引导文件

什么是主引导记录、分区引导记录、主引导引程序、分区表、结束语、引导文件

3、分区表上有四项,每一项表示一个分区,所以一个分区表最多只能表示4个分区。主分 区表上的4项用来表示主分区和扩展分区的信息。因为扩展分区最多只能有一个,所以硬盘 最多可以有四个主分区或者三个主分区,一个扩展分区。余下的分区表是表示逻辑分区的。 这里有必要阐述一点:逻辑区都是位于扩展分区里面的,并且逻辑分区的个数没有限制。
二.查找D盘分区表 根据上面的信息,第二个分区表,也即D盘分区表在(510柱面,0磁头,1扇区)处。读取该扇区,得到分区表如下:
[00 01 41 FE 0b FE FF 7b 3F 00 00 00 bF A3 5D 00 ] [00 00 C1 7C 05 FE FF FF FE A3 5D 00 21 88 56 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 ] 第一项: (00)(01 41 FE)(0b)(FE FF 7b)(3F 00 00 00 )(bF A3 5D 00) 描述的是D盘的情况。 1.(00):表示D盘不是活动分区。 2.(01 41 FE): (01) 16 = (1) 10 (41) 16 = (0100 0001) 2 (FE) 16 = (1111 1110) 2. 磁头号:(1) 10; 扇区号:(00 0001) 2 = (1) 10. 柱面号:(01 1111 1110) 2 = (510) 10; 故D盘开始扇区为(510柱面,1磁头,1扇区)。 3.(0b):表示D盘的文件系统为FAT32。 4.(FE FF 7b): (FE) 16 = (254) 10 。 (FF) 16 = (1111 1111) 2 (7b) 16 = (0111 1011) 2. 磁头号:(254) 10; 扇区号:(11 1111) 2 = (63) 10. 柱面号:(11 0111 1011) 2 = (891) 10 故D盘结束扇区为(891柱面,254磁头,63扇区)。 5.(3F 00 00 00): 反向,(00 00 00 3F)16 = (63)10,为D盘起始逻辑扇区号(510柱面,1磁头,1扇区)与扩展分区起始逻辑扇区号 (510柱面,0磁头,1扇区)之差。表示D盘前面已有63个扇区,这63个扇区为系统隐藏扇区。 6. (bF A3 5D 00): 反向,(00 5D A3 bF) 16 = (6136767) 10。表明D盘有6136767个扇区。 通过上面得到的起点和分区的大小,可以推导出D盘的结束位置:8193150 + 63 + 6136767 = 14329980号扇区。 即(891柱面,254磁头,63扇区)。与上面的正好吻合。 第二项: (00)(00 C1 7C)(05)(FE FF FF)(FE A3 5D 00)(21 88 56 00) 描述的是E盘的情况。 1. (00): 表示E盘不是活动分区。 2. (00 C1 7C): (00) 16 = (0) 10 (C1) 16 = (1100 0001) 2 (7C) 16 = (0111 1100) 2 磁头号:(0) 10 扇区号:(00 0001) 2 = (1) 10 柱面号:(11 0111 1100) 2 = (892) 10 所以E盘的起始扇区为(892柱面,0磁头,1扇区)。 3. (05): 表示E盘的在扩展分区里面。 4.(FE FF FF): (FE) 16 = (254) 10 (FF) 16 = (1111 1111) 2 (FF) 16 = (1111 1111) 2 磁头号:(254) 10 扇区号:(11 1111) 2 = (63) 10 柱面号:(11 1111 1111) 2 = (1023) 10 但这是不准确的,原因同上。 5.(FE A3 5D 00): 反向,(00 5D A3 FE) 16 = (6136830) 10. 这一项非常重要,它定位了E盘分区表所在扇区。其值为E盘分区表所在扇区号 与扩展分区起始扇区号之差。所以,E盘分区表所在扇区号为: 8193150 + 6136830 = 14329980。即(892柱面,0磁头,1扇区)。 6.(21 88 56 00): 反向,(00 56 88 21) 16 = (5670945) 10.表示E盘共有11807775个扇区。通过上面得到的起点和分区的大小,可以推导出E 盘的结束位置:14329980 + 5670945 = 20000925号扇区,即(1244 柱面,254磁头,63扇区)。

常见的磁盘分区表

常见的磁盘分区表

常见的磁盘分区表
在计算机存储中,磁盘分区表是一种用于管理硬盘驱动器上存储空间的数据结构。

常见的磁盘分区表包括 MBR(主引导记录)和 GPT (GUID 分区表)。

1. MBR(Master Boot Record):
•定义: MBR 是一种早期的磁盘分区表格式,广泛用于BIOS系统。

•容量: MBR 最多支持4个主分区或3个主分区和一个扩展分区。

•限制: MBR 的主要限制是每个分区最大支持2TB的容量。

•适用范围: MBR 分区表主要用于传统的 BIOS 引导系统。

2. GPT(GUID Partition Table):
•定义: GPT 是一种现代化的磁盘分区表格式,设计用于替代MBR,并提供更多的功能和灵活性。

•容量: GPT 支持最多128个分区(GPT分区表中的表项),不受主分区和扩展分区的限制。

•限制:GPT 支持极大容量的磁盘,远远超过MBR 的2TB限制。

•特征: GPT 提供了更多的元数据,包括分区类型、唯一标识符(GUID)、分区名称等。

•适用范围: GPT 分区表通常用于UEFI引导系统,支持较大的硬盘容量。

这两种分区表格式有各自的优势和适用场景。

在现代计算机系统中,特别是采用UEFI引导的系统,更倾向于使用GPT。

而在某些老旧的系统或特殊需求下,MBR仍然可能被使用。

需要根据系统要求和硬件特性来选择适当的磁盘分区表格式。

主引导记录——精选推荐

主引导记录——精选推荐

主引导记录主引导记录(Master Boot Record,缩写:MBR),⼜叫做主引导扇区,是开机后访问时所必须要读取的⾸个扇区,它在硬盘上的三维地址为(柱⾯,磁头,扇区)=(0,0,1)。

在深⼊讨论主引导扇区内部结构的时候,有时也将其开头的446字节内容特指为“主引导记录”(MBR),其后是4个16字节的“磁盘分区表”(DPT),以及2字节的结束标志(55AA)。

因此,在使⽤“主引导记录”(MBR)这个术语的时候,需要根据具体情况判断其到底是指整个主引导扇区,还是主引导扇区的前446字节。

主引导扇区记录着硬盘本⾝的相关信息以及硬盘各个分区的⼤⼩及位置信息,是数据信息的重要⼊⼝。

如果它受到破坏,硬盘上的基本数据结构信息将会丢失,需要⽤繁琐的⽅式试探性的重建数据结构信息后才可能重新访问原先的数据。

主引导扇区内的信息可以通过任何⼀种基于某种操作系统的分区⼯具软件写⼊,但和某种操作系统没有特定的关系,即只要创建了有效的主引导记录就可以引导任意⼀种操作系统(操作系统是创建在的硬盘分区之上,是和⼀定的⽂件系统相联系的)。

对于硬盘⽽⾔,⼀个扇区可能的字节数为128×2n(n=0,1,2,3)。

⼤多情况下,取n=2,即⼀个扇区(sector)的⼤⼩为512字节。

主引导记录的组成启动代码主引导记录最开头是第⼀阶段引导代码。

其中的硬盘引导程序的主要作⽤是检查分区表是否正确并且在系统硬件完成⾃检以后将控制权交给硬盘上的(如)。

它不依赖任何操作系统,⽽且启动代码也是可以改变的,从⽽能够实现。

硬盘分区表硬盘分区结构信息偏移长度(字节)意义00H1分区状态:00-->⾮活动分区;80-->活动分区;其它数值没有意义01H1分区起始磁头号(HEAD),⽤到全部8位02H2分区起始扇区号(SECTOR),占据02H的位0-5;该分区的起始磁柱号(CYLINDER),占据02H的位6-7和03H的全部8位04H1标志位05H1分区结束磁头号(HEAD),⽤到全部8位06H2分区结束扇区号(SECTOR),占据06H的位0-5;该分区的结束磁柱号(CYLINDER),占据06H的位6-7和07H的全部8位08H4分区起始相对扇区号0CH4分区总的扇区数硬盘分区表占据主引导扇区的64个字节(偏移01BEH--偏移01FDH),可以对四个分区的信息进⾏描述,其中每个分区的信息占据16个字节。

主引导记录分区方案

主引导记录分区方案

以我给的标题写文档,最低1503字,要求以Markdown 文本格式输出,不要带图片,标题为:主引导记录分区方案# 主引导记录分区方案## 引言在计算机系统中,主引导记录(Master Boot Record, MBR)是位于硬盘的第一个扇区的特殊区域。

主引导记录包含引导程序代码和分区表,用于引导操作系统并确定硬盘上的分区情况。

本文将介绍主引导记录分区方案以及相关的概念和流程。

## MBR 分区方案MBR 分区方案是一种被广泛使用的硬盘分区方案。

它使用 32 位表示分区表中的每个分区。

MBR 分区方案允许将硬盘划分为最多四个主分区或者三个主分区和一个扩展分区。

每个主分区或扩展分区可以包含一个逻辑分区。

## 分区表主引导记录包含了一个 64 字节的分区表。

分区表将硬盘上的空间划分为若干个分区,每个分区由起始扇区号、长度和标识符组成。

### 分区类型分区标识符指定了分区类型。

常见的分区类型包括:- 0x00:未使用分区,这个分区没有被分配给任何文件系统。

- 0x01:FAT12 文件系统分区,用于存储小容量的文件系统。

- 0x04:FAT16 文件系统分区,用于存储中等容量的文件系统。

- 0x05:扩展分区,用于创建逻辑分区。

- 0x06:FAT16 文件系统分区。

- 0x07:NTFS 文件系统分区,用于存储较大容量的文件系统。

### 分区表项MBR 分区表可以容纳最多四个分区表项,每个分区表项占据 16 个字节。

每个分区表项包含以下信息:1. 引导标志位:指示该分区是否是启动分区。

2. 起始磁头号、扇区号和柱面号:指示分区的起始位置。

3. 分区类型:指示分区的文件系统类型。

4. 结束磁头号、扇区号和柱面号:指示分区的结束位置。

5. 逻辑起始扇区号:用于逻辑分区。

## 主引导记录主引导记录是位于 MBR 的第一个扇区,它的大小为 512 字节。

主引导记录包含两个主要部分:1. 引导代码:由机器语言编写的引导程序代码,负责加载并运行操作系统。

剖析主引导记录

剖析主引导记录

剖析主引导记录——主引导记录的修复与应用贾立莎摘要:硬盘的0柱面、0磁头、1扇区为主引导扇区,FDISK程序写到该扇区的内容为主引导记录(MBR),该记录占用446个字节,它用于硬盘启动时将系统控制权转移给用户指定的并在分区表中登记了的某个操作系统区,所以要进行主引导记录的备份,恢复,重写等。

用来修复由于主引导记录而引起的系统故障。

关键词:硬盘主引导修复1.主引导记录概述1.1什么是主引导记录MBR就是我们经常说的<硬盘主引导记录>,简单地说,它是由FDISK等磁盘分区命令写在硬盘绝对0扇区的一段数据,它由主引导程序、硬盘分区表及扇区结束标志字(55AA)这3个部分组成。

1.2主引导记录的组成主引导记录由三个部分组成(共占用512个字节):主引导程序区 446 负责检查硬盘分区表、寻找可引导分区并负责将可引导分区的引导扇区(DBR)装入内存;硬盘分区表区 16*4=64 每份16字节的4份硬盘分区表,里面记载了每个分区的类型、大小和分区开始、结束的位置等重要内容;结束标志字区 2 内容总为”55AA”。

这3部分的大小加起来正好是512字节=1个扇区(硬盘每扇区固定为512个字节),因此,人们又形象地把MBR称为“硬盘主引导扇区”。

这个扇区所在硬盘磁道上的其它扇区一般均空出,且这个扇区所在硬盘磁道是不属于分区范围内的,紧接着它后面的才是分区的内容(也就是说假如该盘每磁道扇区数为63,那么从绝对63扇区开始才是分区的内容)。

1.3写主引导记录程序-F 100 FFFF 0-E 7DBE 80 01 01 00 06 0F 66 F9 26 0000 00 9A B1 04 00-E7DCE 00 00 00 00 00 00 00 00 00 00 0000 00 00 01 00-D 7D80-E 7DFE 55 AA-E 7DB5 8B FC 1E 57 8B F5 CB-A 100-E102 03C:\FDISK/MBR-U 100-A 103Mov CX ,41FA-G=100-D7C00-A 106Mov DX ,0180-G=100-Q1.4主引导记录的作用检测分区表链是否正确,如果正确将引导具有激活标志的分区上的操作系统,也就是DBR。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

硬盘主引导记录详解硬盘的数据结构对于一些朋友来说总是很神密!为什么我们删除了的文件用软件能找到?为什么我们格式化了的硬盘数据还能找回来?要回答这一切,你就得对硬盘的数据结构有个清醒的认识。

硬盘上的数据由五大部分组成,它们分别是:MBR区、DBR区,FAT区,DIR区和DATA区。

1.MBR(Main Boot Record)区,即主引导记录区,位于整个硬盘的0磁道0柱面1扇区.2.DBR(Dos Boot Record)区,操作系统引导记录区。

位于硬盘的0磁道1柱面1扇区,是操作系统可以直接访问的第一个扇区.3.FAT(File Allocation Table文件分配表)区;4.DIR(Directory)根目录区,记录着根目录下每个文件(目录)的起始单元,文件的属性等;5.DATA区是真正意义上的数据存储的地方,位于DIR区之后,占据硬盘上的大部分数据空间。

了解了硬盘数据的基本结构,今天我们把重点放在mbr所在的扇区:主引导扇区。

主引导扇区包括:mbr,dpt和结束标志。

位于硬盘的0磁道0柱面1扇区,用diskman可以读出其中的内容,下面是一次操作的结果:表一:这块10.2G(以下显示为9766MB,误差原因不用我解释了吧?)的硬盘共分了四个区:分区结构如下:主引导扇区中前446字节--偏移地址从0000H-01BDH为mbr区,存放着主引导程序,从上面的显示中,读者可能已经看出,这个硬盘以linux系统的grub为引导程序。

接下来的64字节为硬盘分区表--dpt,偏移地址从01BEH-01FDH,共分为四个分区表项,每个分区表项占16字节,表示一个分区,从这里大家就可以知道为什么硬盘只能分四个主分区了吧?但有时我们需要更多的分区来规划我们的硬盘,为解决这个问题,就把这四个分区表项中的一个定义为扩展分区(与主分区是并列关系),扩展分区中又可以定义逻辑分区(与扩展分区是包含与被包含的关系)。

但读者不要以为这些信息都在这一个16字节的分区表项中。

事实上是:被定义为扩展分区的这一个分区表项只包含了指向逻辑分区的信息。

而逻辑分区的分区表在其它的扇区中存放!本文重点介绍dpt中的内容,上面已经提到,dpt分为四个分区表项,每个分区表项占16个字节,下面着重讲述这16个字节是怎么分配的。

表三:第1字节引导标志,该值为80H表示为可自举分区(活动分区,仅有一个),该值为00H表示其余分区第2字节分区起始磁头第3字节低6位是分区起始扇区,高2位是分区起始的柱面的头两位第4字节分区起始柱面的低8位第5字节系统标志第6字节分区终止磁头第7字节低6位为分区终止扇区,高2位为终止柱面的前2位第8字节分区终止柱面的低8位。

第9-12字节本分区前的扇区数,低位字节在前(注:不是低位在前)第13-16字节本分区总的扇区数,低位字节在前现在根据上面的列表详细解释一下:我们提取出下面四个分区表项:表四:分区 | 字节序号表项 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 161: | 80 01 01 00 0B FE 3F D8 3F 00 00 00 5A 31 35 002: | 00 00 01 D9 0F FE FF FF 99 31 35 00 04 FF FB 003: | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 004: | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00由于数据以16进制显示,每个数字占一个字节的四位,所以两个数字占一个字节。

对于第一个分区表项:第1字节为80,表示活动分区;第2字节为01,十进制为1,表示起始磁头号;第3字节为01,二进制为00000001,低6位000001,对应的十进制为1,表示起始扇区;第4字节为00,二进制为00000000,与第三字节的高2位00组成0000000000,十进制为0,表示起始柱面;第5字节为0B,为系统标志;第6字节为FE,十进制为254,表示终止磁头;第7字节为3F,二进制为00111111,低6位为111111,转换为十进制为63,表示终止扇区;第8字节为D8,二进制为11011000,与第7字节的高2位00组成0011011000,十进制为216,表示终止柱面;第9-12字节为3F 00 00 00,按低位字节在前的原则排列为:00 00 00 3F,转换为十进制为63,表示该分区前的扇区数目;第13-16字节为5A 31 35 00,按低位字节在前的原则排列为:00 35 31 5A,转换为十进制为3486042,表示该分区占用的扇区数目。

我们可以与表2对照,发现两者完全统一!同理,我们还可以分析第2个分区表项,这就交给感兴趣的读者自己完成吧。

在第3和第4个分区表项中,所以数据都为0,表示这两个分区表项没有分配。

最后两个字节--偏移地址从01FEH-01FFH,为结束标志,通常为55 AA,如果改为其它值,则硬盘可能不被引导。

通过以上的讲解,你是不是对硬盘的数据结构又有了更深的认识?对于使用windows和lin ux双系统的用户,经常要与mbr打交道,有很多网友问:装了linux和windows双系统,现在又不想使用linux了,于是把linux的分区格式化为fat32回收,但当初装在mbr的引导信息老是去不掉。

这里我可以告诉你一个方法,就是用windows98启动盘启动电脑,然后运行fdisk/mbr命令就可以了,这条命令是重建mbr(前446字节),但并不破坏dpt中的数据,也就是并不破坏硬盘的分区表,可以安全使用。

你可以在使用这条命令前后各查看一下主引导扇区,就会发现从447字节开始以后的数据都没有改变。

如果你没有diskman这个软件,下面的C程序一样可以帮你搞掂!以下是程序的源码:#include <bios.h>#include <stdio.h>int main(){register int i;unsigned char buffer[512] = {0}; biosdisk(2, 0x80, 0, 0, 1, 1, buffer); for (i=0; i<512; i++){if (!(i%8)){printf(" ");if (!(i%16)){printf("\n");printf("%04x:", i);}}printf("%02x ", buffer);}}在turboc2.0中可编译通过。

运行biosdisk()函数,你还可进一步编写备份mbr,恢复mbr的程序或把mbr清0的程序,是不是很想试试。

主引导扇区释疑、引导扇区在每个分区里都存在,但是我们常说的*主引导扇区*是硬盘的第一物理扇区。

它由两个部分组成:即主引导记录MBR(Master Boot Record)和硬盘分区表DPT(Disk Partition Table)。

在总共512字节的主引导分区里其中MBR占446个字节(偏移0--偏移1BDH),DPT占64个字节(偏移1BEH--偏移1FDH),最后两个字节“55,AA”(偏移1FEH偏移1FFH)是分区的结束标志。

大致的结构如下图:0000 |------------------------------------------------|| || || Main Boot Record || || |主引导记录(446字节) ||| || || |01BD | |01BE |------------------------------------------------|| |分区信息1(16字节) |01CD |01CE |------------------------------------------------|| |01DD | 分区信息2(16字节) |01DE |------------------------------------------------|| |01ED | 分区信息3(16字节) |01EE |------------------------------------------------|| |01FD | 分区信息4(16字节) ||------------------------------------------------|| 01FE | 01FF ||| 55 | AA|------------------------------------------------|图一:主引导扇区结构图主引导记录中包含了硬盘的一系列参数和一段引导程序。

引导程序主要是用来在系统硬件自检完后引导具有激活标志的分区上的操作系统。

它执行到最后的是一条JMP指令跳到操作系统的引导程序去。

这里往往是引导型病毒的注入点,也是各种多系统引导程序的注入点。

但是由于引导程序本身完成的功能比较简单,所以我们可以完全地判断该引导程序的合法性(看JMP指令的合法性),因而也易于修复。

象命令fdisk/mbr可以修复MBR和KV300这类软件可以查杀任意类型的引导型病毒,就是这个原因。

往下来是硬盘的分区表,由4个16字节的分区信息表组成。

每个信息表的结构如下:偏移 长度 所表达的意义0 字节 分区状态:如0-->非活动分区--> 活动分区801 字节 该分区起始头(HEAD)2 字 该分区起始扇区和起始柱面4 字节 该分区类型:如82--> Linux Native分区--> Linux Swap 分区835 字节 该分区终止头(HEAD)6 字 该分区终止扇区和终止柱面8 双字 该分区起始绝对分区C 双字 该分区扇区数最后的两个标志“55 AA”是分区表的结束标志,如果这两个标志被修改(有些病毒就会修改这两个标志),则系统引导时将报告找不到有效的分区表。

硬盘分区表详解硬盘主引导扇区 = 硬盘主引导记录(MBR)+ 硬盘分区表(DPT)--------------------------------------------------------------物理位置:0面0道1扇区(clindyer 0, side 0, sector 1)大小: 512字节其中:MBR 446字节(0000--01BD),DPT 64字节(01BE--01FD),结束标志2字节(55 AA)功能:MBR通过检查DPT分区信息引导系统跳转至DBR;读取: 使用NORTON DISKEDIT, 在OBJECT菜单中选择DRIVE——>PHYSICAL DISK-—HARD DISK,然后, 在OBJECT菜单中选择DISK PARTITION TABLE即可读取, 并使用TOOLS菜单中的WRITE OBJECT TO 选项存入指定文件备份;写入: 使用NORTON DISKEDIT, 在OBJECT菜单中选择DRIVE——>FLOOPY DISK, 选择备份的DPT文件, 然后使用TOOLS菜单中的WRITE OBJECT TO——>PHYSICAL SECTOR 选项写入001(clindyer 0, side 0, sector 1);详解:000H--08AH MBR启动程序(寻找开机分区)08BH--0D9H MBR启动字符串0DAH--1BCH 保留("0")1BEH--1FDH 硬盘分区表1FEH--1FFH 结束标志(55AA)活动分区主引导扇区(DBR)--------------------------物理位置:1面0道1扇区(clindyer 0, side 1, sector 1)大小: FAT16 1扇区 512字节FAT32 3扇区 1536字节功能:包含机器CMOS等信息(0000--0059), 核对该信息并引导指定的系统文件, 如NTLDR等;读取: 使用NORTON DISKEDIT, 在OBJECT菜单中选择DRIVE——>LOGICAL DISK-—DISK C,然后, 在OBJECT菜单中选择BOOT RECORD即可读取, 并使用TOOLS菜单中的WRITE OBJECT TO 选项存入指定文件备份;写入: 使用NORTON DISKEDIT, 在OBJECT菜单中选择DRIVE——>FLOOPY DISK, 选择备份的DBR文件, 然后使用TOOLS菜单中的WRITE OBJECT TO——>PHYSICAL SECTOR 选项写入011(clindyer 0, side 1, sector 1);详解:000H--002H 3 BYTE的跳转指令(去启动程序, 跳到03EH)003H--03DH BIOS参数区03EH--19DH DOS启动程序19EH--1E5H 开机字符串1E6H--1FDH 文件名(IO.SYS, MSDOS.SYS)1FEH--1FFH 结束标记(55AA)硬盘分区表(DPT)---------------------偏移地址字节数含义分析01BE 1 分区类型:00表示非活动分区:80表示活动分区;其他为无效分区。

相关文档
最新文档