2023年11月25日发(作者:)

Windows整数分区表

什么是分区表?

在计算机存储中,分区表是一种用于管理硬盘上的分区的数据结构。它记录了硬盘

上的每个分区的起始位置、大小和类型等信息。在Windows操作系统中,使用的是

一种称为MBRMaster Boot Record)的分区表。

MBR分区表结构

MBR分区表位于硬盘的第一个扇区(512字节)中,它由两个部分组成:主引导记

录(Master Boot Record)和分区表。

主引导记录(Master Boot Record

主引导记录是MBR分区表中的第一个扇区,占用了446字节。它包含了启动计算机

所需的代码,这段代码被称为主引导程序(Master Boot Code)。主引导程序会加

载操作系统启动器,如Windows操作系统的NTLDRBOOTMGR

分区表

MBR分区表中包含了四个条目,每个条目占用16字节。每个条目对应一个主要或

扩展分区。其中:

前四个字节表示活动状态(Active Flag),如果该位被设置为1,则表示

接下来四个字节表示该条目对应的起始磁头、扇区和柱面号。

接下来四个字节表示该条目对应的文件系统类型。

最后四个字节表示该条目对应的分区的结束磁头、扇区和柱面号。

该条目对应的分区是可启动的。

Windows操作系统如何读取MBR分区表

当计算机启动时,BIOSBasic Input/Output System)会读取硬盘的第一个扇区,

也就是MBR分区表。BIOS会将主引导记录加载到内存中,并执行其中的主引导程

序。主引导程序会根据分区表中的信息找到活动分区,并将控制权转交给该分区上

的操作系统启动器。

Windows操作系统中,NTLDR(早期版本)或BOOTMGR(较新版本)作为操作系

统启动器。它们会读取注册表和启动配置文件,然后加载操作系统内核和其他必要

的文件。

MBR分区表的限制

尽管MBR分区表在过去几十年中一直被广泛使用,但它也存在一些限制:

1. 最大支持2TB硬盘容量:由于MBR分区表使用32位整数来表示分区大小,

因此最大支持2TB2^32个扇区)的硬盘容量。

2. 最多支持4个主要或扩展分区MBR分区表只能包含四个条目,每个条目对

应一个主要或扩展分区。如果需要更多的分区,则需要将其中一个主要或扩

展分区转换为扩展分区,并在扩展分区内创建逻辑分区。

3. 不支持UEFI引导MBR分区表是BIOS时代的产物,不支持UEFIUnified

Extensible Firmware Interface)引导,而UEFI引导通常需要使用GPT

GUID Partition Table)分区表。

替代方案:GPT分区表

为了克服MBR分区表的限制,近年来逐渐出现了一种新的分区表格式,称为GPT

GUID Partition Table)。GPT采用了更现代的设计理念和数据结构,并解决了

MBR所面临的限制。

MBR相比,GPT具有以下优势:

1. 支持更大的硬盘容量GPT使用64位整数来表示分区大小,因此最大支持

18EB2^64个扇区)的硬盘容量。

2. 支持更多的主要或扩展分区GPT可以包含多达128个主要或扩展分区,大

大增加了灵活性。

3. 支持UEFI引导GPTUEFI标准所采用的默认分区表格式,可以完美兼容

UEFI引导。

尽管GPT有诸多优势,但在某些情况下仍然需要使用MBR。例如,在某些旧版

Windows操作系统中,只能使用MBR作为启动方式。此外,某些硬件设备和软件也

可能对MBR有依赖。

总结

MBR分区表是一种用于管理硬盘上分区的数据结构,在Windows操作系统中被广泛

使用。它由主引导记录和分区表两部分组成,通过主引导程序加载操作系统启动器。

然而,MBR存在诸多限制,如最大支持2TB硬盘容量、最多支持4个主要或扩展分

区以及不支持UEFI引导等。为了克服这些限制,GPT分区表逐渐被引入,并取得

了广泛应用。GPT具有更大的硬盘容量支持、更多的主要或扩展分区支持以及UEFI

引导支持等优势。在选择分区表格式时,需根据具体需求和系统兼容性做出决策。

参考资料: - [Master Boot Record (MBR) vs GUID Partition Table

(GPT)]( - [Understanding the Windows Boot Process](