Windows系统中,对于物理磁盘的管理包括基本磁盘、动态磁盘两种形式,其中基本磁盘又是Windows系统的默认形式。在基本磁盘上,以分区的形式来划分多个连续的空间,即我们通常熟悉的主分区和逻辑分区。而在动态磁盘上,Windows以卷的形式来管理磁盘空间,包括简单卷、镜像卷、带区卷、扩展卷以及RAID5卷,且卷的空间可以不是连续的磁盘区域,甚至位于不同的动态磁盘上。由于动态磁盘的组织构件包括磁盘、组件、分区、卷等多个内容,比较复杂,且Microsoft也没有提供详细的结构分析,因此,我这里所做的磁盘结构分析都是基于基本磁盘的。

在基本磁盘上,磁盘空间的最小管理单元是扇区(Sector),我们通常所说的分区就是磁盘上连续的扇区的集合,而格式化分区时所涉及到的簇,则是文件系统管理磁盘空间的最小逻辑单元,一个簇可以包含多个扇区,通常是2的幂数,如1285124096等。Windows有两种不同的分区管理方式:MBRGPT

MBRMaster Boot Record,即主引导记录,它是磁盘的第一个扇区,MBR中包含了系统引导信息、磁盘签名以及磁盘的分区表,分区表中包含有4个分区项,每个项记录了该分区的在磁盘上的其实位置和大小。由于MBR的分区项数只有4,所以我们在创建分区时,最多只有4个主分区或者3个主分区加一个扩展分区,但是扩展分区可以包含多个逻辑分区。另外,由于在MBR分区表中,分区的偏移、大小都是采用4字节的数据来表示,所以最大能够表示的大小为232次方,即2T,这是MBR分区方式能够管理的最大磁盘大小和最大分区大小。

GPTGUID Partition Table,即全局唯一标示符分区表,这种分区方式突破了MBR分区表的限制,可以创建任意个数的分区,且分区的大小没有2T的限制。为了兼容之前的磁盘管理方式,GPT磁盘还是会使用基本磁盘的第一个扇区MBR,并且将MBR的第一个分区项标示为GPT磁盘,并且占用整个磁盘的大小,称为保护MBR,防止在不识别GPT磁盘的系统上破坏磁盘结构。GPT磁盘上同样包含分区表信息,并且每个分区都有自己的唯一GUID,和MBR不同的是GPT分区表项采用8个字节来表示分区偏移和分区大小,且备份了分区表,加上了CRC检验信息,因此安全性要由于MBR分区方式。在Windows系统上,只为GPT分区表保留了32个扇区,且每个GPT分区项占用128个字节,因此Windows实际上限制了GPT分区的个数为128个,个人觉得这已经足够用户使用了。

在日常生活,大多数Windows系统都是安装在MBR磁盘上的,因此在磁盘管理器中初始化磁盘时,默认的都是MBR分区方式。在最新的计算机上,有很多都是支持EFI的主板,如果选择EFI方式启动系统,则必须要将Windows安装在GPT磁盘上,且必须存在EFI系统分区,在Windows上初始化磁盘时默认的分区方式则改为GPTMBR磁盘的分区包括主分区、扩展分区、逻辑分区,其中逻辑分区是在扩展分区中创建的,当我们在MBR磁盘上创建了3个主分区后,再次创建分区时,系统会自动创建一个扩展分区,并包含所有剩余的磁盘空间,然后在这个扩展分区中创建我们指定大小的逻辑分区。在GPT磁盘上,我们最多可以创建128个分区,且都是主分区,但是这些分区的类型有所不同,它们包括OEM分区、Microsoft保留分区(MSR)EFI系统分区、恢复分区、普通分区,其中EFI系统分区是启动系统的关键。