2020-04-11 22:04:48 756

[转载]解读分区引导记录PBR

超级版主
2020-04-11 22:04:48
756

(注:本贴转载自无忧启动论坛

 

分区引导扇区知识

一、FAT32的分区引导扇区

分区引导扇区DBR(DOS BOOT RECORD)是由FORMAT高级格式化命令写到该扇区的内容;DBR是由硬盘的MBR装载的程序段。DBR装入内存后,即开始执行该引导程序段,其主要功能是完成操作系统的自举并将控制权交给操作系统。每个分区都有引导扇区,但只有被设为活动分区的DBR才会被MBR装入内存运行。
DBR主要由下列几个部分组成:

 1.跳转指令,占用3个字节的跳转指令将跳转至引导代码。天涯海角1216注:看下图,以FAT32为例,EB 58 指跳转至偏移5A执行,即从图中 FA 33 .. 开始执行引导程序)
 2.厂商标识和DOS版本号,该部分总共占用8个字节。
 3BPBBIOS Parameter Block BIOS 参数块)。       天涯海角1216注:这个包含BIOS操作的参数,很重要,破坏将显示分区错误)
 4.操作系统引导程序。                             天涯海角1216注:该分区若需引导,则由该程序决定引导文件或系统)
 5.结束标志字,结束标志占用2个字节,其值为AA55。     天涯海角1216注:很重要,若为00 00 ,则显示未格式化)
 DBR中的内容除了第5部分结束标志字固定不变之外,其余4个部分都是不确定的,其内容将随格式化所用的操作系统版本及硬盘的逻辑盘参数的变化而变化。

FAT32的BPB参数如下表所示:
天涯海角1216注:FAT32中,BPB即指从偏移0B到偏移59止。其他略有不同,BPB 都是指跳转指令跳转位置之前的一段代码。

分区引导扇区的第2个扇区作为文件系统相关参数存储标识扇区(下图),除了保存扇区的标识信息(RraA(00H)和rrAa(1E4H))外,还可能在偏移地址1E8H处存储了文件系统有关的信息。其中扇区偏移地址1E8H~1EBH的4个字节存储了逻辑磁盘中未使用的簇数,通常用于快速计算逻辑磁盘的剩余空间(典型的操作是在资源管理器状态栏上列出的"可用磁盘空间"参数),而1ECH~1EFH 4个字节给出了逻辑盘中下一个可以分配给文件使用的空闲簇的簇号,这样操作系统可以不访问FAT表就直接获得磁盘剩余空间和可以分配的簇号。

二、NTFS的分区引导扇区
  对于NTFS分区来说,分区引导扇区DBR只占用一个扇区(下图),并且在该分区的最后一个扇区做了备份;NTFS的引导扇区也是完成引导和定义分区参数,NTFS分区的引导扇区不是分区的充分条件,它要求必须MFT中的系统记录如$MFT等正常该分区才能正常访问

NTFS的BPB参数如下表所示:

三、各类分区引导扇区列举

 

类型
 
      占用扇区
                  BPB
            引导文件
    优点
    缺点
     NTFS

16
从偏移00到偏移53止,偏移54开始是分区引导代码,直至该扇区结束标志55AA止。
其后紧随15个扇区,可以随意用。
若是启动分区,则其代码很重要,起到引导系统文件作用,若是非启动分区,则无所谓。
如常见的系统引导代码:NTLDR 、BOOTMGR 、GRLDR 等
 
文件加密、磁盘压缩、安全、产生的磁盘碎片少
 

    FAT32

1
(约32个保留扇区)

从偏移00到偏移59止,偏移5A开始是分区引导代码,直至该扇区结束标志55AA止。
其后隔一个扇区后,有30个扇区可以随意用。
若是启动分区,则其代码很重要,起到引导系统文件作用,若是非启动分区,则无所谓。
如常见的系统引导代码:NTLDR 、BOOTMGR 、GRLDR 、IO.SYS 、SYSLINUX
 
FAT16的增强版本,FAT32使用的簇比FAT16小,有效地节约了硬盘空间。
 
单个文件不能超过4G,产生的磁片碎片很多

    FAT16
1(约8个保留扇区)
从偏移00到偏移49止,偏移4A开始是分区引导代码,直至该扇区结束标志55AA止。
其后紧随7个扇区,可以随意用。

同上
 
 

    FAT12

1
(约8个保留扇区)

从偏移00到偏移4D止,偏移4E开始是分区引导代码,直至该扇区结束标志55AA止。
其后紧随7个扇区,可以随意用。
同上
 
 

 

收藏
分享
我的博客:cboot.org
最新回复 (0)
返回