Windows存储管理之磁盘结构详解

Windows磁盘结构:

 

     Windows的主流磁盘结构分为MBR和GPT两种。MBR是早期Windows的唯一选择,但是随着物理磁盘的容量不断增大。GPT结构成为目前的主流,最大支持超过2TB的容量,提供容错,多分区支持,比MBR来的更加强大。

 

MBR (Master Boot Record )磁盘结构:

 

     在Basic MBR Disk中的MBR中包含了几种信息。

 

  • Bootstrap Code – 也叫Master boot code,它是一段可执行的代码,主要作用是,扫描活动分区的分区表,寻找活动分区的开始扇区,加载启动扇区到内存等功能。
  • Disk Signature - Windows的所有物理磁盘都有一个磁盘签名的机制,如果没有签名windows则不能访问该磁盘的数据。当Windows新扫描到一个物理磁盘,尝试写入一些磁盘签名,用来标识这个磁盘。签名的长度为8个字节。然后会写入到第一个扇区,位置为0x01B8 -  0x01BB。签名存储在注册表的HKLM\SYSTEM\MountedDevices位置。
  • Partition Table – 分区表,一个64字节的数据结构用来定义每个分区的起始位置。每个分区定义去大小为16个字节。因为这个设计,所以MBR的的扩展主分区最多只能支持4个。

 

 

DS-1.jpg

 

     一个简单的Basic (MBR)的磁盘结构如下图所示,我可以看到最外层的是物理磁盘(Disk),在物理磁盘的最前端包含MBR(Master Boot Record),这个例子中,定义了一个分区和NTFS逻辑卷。

 

DS-2.jpg

     MBR Disk支持最大四个主分区(Primary Patition),如果创建多个主分区的,则结构如下。一个物理磁盘中包含四个主分区,每个主分区包含一个文件卷。

DS-3.jpg

     如果启用了扩展分区,则在扩展分区中可以包含多个逻辑卷。

DS-4.jpg

 

GPT (GUID - Globally Unique Identifer)磁盘结构:

 

     截止201年,大多数操作系统都支持GPT GPT Disk在主的MBR中包含几个内容,GPT Disk的分区表包括以下几个内容。在MBR硬盘中,分区信息直接存储于主引导记录(MBR)中(主引导记录中还存储着系统的引导程序)。但在GPT硬盘中,分区表的位置信息储存在GPT头中。但出于兼容性考虑,硬盘的第一个扇区仍然用作MBR,之后才是GPT头。

 

  • Protective MBR - 和MBR在Partition Table中包含主分区信息不同的是,GPT Disk在磁盘的第一个扇区(Sector)为“Protective MBR”,它位于LBA0(通用的存储寻址方式大小为512每单位)这个位置上。它包含的内容为磁盘的分区信息和初始的BIO启动器。这是为了兼容性的考虑,保证一些遗留的MBR磁盘工具可以识别到GPT Disk。
  • Partition Table Header – 分区表头定义了一些磁盘上可使用的块,同时还定义了组成分区表的Partition Entries数目和大小(大小通常为128个字节)。GPT支持的64位版本的Windows Server 2003以上版本,支持创建最大128个分区,每个分区记录大小为128个字节。在分区表头中还记录了磁盘的GUID,用来记录自身的大小与位置以及备用GPT表头的位置(位于磁盘的最后一个扇区)。同时还包括CRC32的校验值。
  • Partition entries – GPT Disk用简单直接的条目来描述分区。最初的16个字节用来标识分区类型。第二个16直接用来记录改分区唯一的GUID。接下来三个8字节的记录分别描述的初始LBA地址,结束LBA地址和分区属性。最后72个字节为分区名。单个分区记录大小为128个字节。通常Partition entries会从LBA2地址开始。
  • 最后,为了为了减少分区表损坏的风险,GPT在硬盘最后保存了一份分区表的副本。

 

 

 

 

DS-5.jpg


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值