---恢复内容开始---

关于 BIOS/MBR UEFI/GPT他们之间的关系一直比较疑惑,

首先一点前提 BIOS UEFI 是一类,是控制硬件,引导启动的;MBR GPT是硬盘的分区定义.。 后者分别是前者的升级版。

第一个问题:他们死者之间能相互搭配吗?比如GPT MBR能搭配启动吗?

借https://zhidao.baidu.com/question/135127471550798525.html

  1. 1、传统的主板就是传统 BIOS,可在使用 MBR 分区表的硬盘(俗称 MBR磁盘,就是传统常用的模式)上安装3264位操作系统。同时也支持使用 GUID 分区表的硬盘(俗称GPT磁盘),但该硬盘上不能安装操作系统。
    2、新型主板使用 UEFI BIOS,只能在使用 GUID 分区表的硬盘(俗称GPT磁盘)上安装64位操作系统。同时也支持 MBR 磁盘,但该硬盘上不能安装操作系统。
    因此,无论主板是传统 BIOS,还是 UEFI BIOS,都可以同时使用 GPT 磁盘与 MBR 磁盘,但要安装操作系统,就有明确的区别:传统 BIOS 的主板只能使用 MBR 磁盘安装操作系统;UEFI BIOS 的主板只能在 GPT 磁盘上安装64位操作系统。
    另外,XP不能识别 GPT 磁盘,这与主板 BIOS 无关。

第二个问题:GPT 分区是什么?

from:https://zh.wikipedia.org/wiki/GUID%E7%A3%81%E7%A2%9F%E5%88%86%E5%89%B2%E8%A1%A8

全局唯一标识分区表GUID Partition Table缩写GPT)是一个实体硬盘分区表的结构布局的标准。它是可扩展固件接口EFI)标准(被Intel用于替代个人计算机的BIOS)的一部分,被用于替代BIOS系统中的一32bits来存储逻辑块地址和大小信息的主引导记录(MBR)分区表。对于那些扇区为512字节的磁盘,MBR分区表不支持容量大于2.2TB(2.2×1012字节[1]分区,然而,一些硬盘制造商(诸如希捷和西部数据)注意到这个局限性,并且将他们的容量较大的磁盘升级到4KB的扇区,这意味着MBR的有效容量上限提升到16 TiB。 这个看似“正确的”解决方案,在临时地降低人们对改进磁盘分配表的需求的同时,也给市场带来关于在有较大的块(block)的设备上从BIOS启动时,如何最佳的划分磁盘分区的困惑。GPT分配64bits给逻辑块地址,因而使得最大分区大小在264-1个扇区成为可能。对于每个扇区大小为512字节的磁盘,那意味着可以有9.4ZB(9.4×1021字节)或8 ZiB个512字节(9,444,732,965,739,290,426,880字节或18,446,744,073,709,551,615(264-1)个扇区×512(29)字节每扇区)[1][2]

第三个问题:mbr gpt 分区数量?

mbr:只支持4个主分区或三个主分区和一个扩展分区,扩展分区下可以有多个逻辑分区。扩展分区中逻辑驱动器的引导记录是链式的。每一个逻辑分区都有一个和MBR结构类似的扩展引导记录(EBR),其分区表的第一项指向该逻辑分区本身的引导扇区,第二项指向下一个逻辑驱动器的EBR,分区表第三、第四项没有用到。

gpt:GPT,全局唯一标识分区表(GUID Partition Table),与MBR最大4个分区表项的限制相比,GPT对分区数量没有限制,但
Windows最大仅支持128个GPT分区,GPT可管理硬盘大小达到了18EB。只有基于UEFI平台的主板才支持GPT分区引导启动。下面是windowsgpt分区图:

 
GPT分区表的结构。此例中,每个逻辑块(LBA)为512字节,每个分区的记录为128字节。负数的LBA地址表示从最后的块开始倒数,−1表示最后一个块。

第四个问题:efi msr分区是什么?

ESP分区:EFI system partition,该分区用于采用了EFI BIOS的电脑系统,用来启动操作系统。分区内存放引导管理程序、驱动程序、
系统维护工具等。如果电脑采用了EFI系统,或当前磁盘用于在EFI平台上启动操作系统,则应建议ESP分区。
MSR分区:即微软保留分区,是GPT磁盘上用于保留空间以备用的分区,例如在将磁盘转换为动态磁盘时需要使用这些分区空间。

第五个问题:GPT分区标志

GPT硬盘结构:

GPT硬盘在“保护MBR”450字节偏移处设置“EE”标志标明本硬盘为GPT

第六个问题:gpt分区在硬盘中的格式

分区表头的格式
起始字节 长度 内容
0 8字节 签名("EFI PART", 45 46 49 20 50 41 52 54)
8 4字节 修订(在1.0版中,值是00 00 01 00)
12 4字节 分区表头的大小(单位是字节,通常是92字节,即5C 00 00 00)
16 4字节 分区表头(第0-91字节)的CRC32校验,在计算时,把这个字段作为0处理,需要计算出分区序列的CRC32校验后再计算本字段
20 4字节 保留,必须是0
24 8字节 当前LBA(这个分区表头的位置)
32 8字节 备份LBA(另一个分区表头的位置)
40 8字节 第一个可用于分区的LBA(主分区表的最后一个LBA + 1)
48 8字节 最后一个可用于分区的LBA(备份分区表的第一个LBA − 1)
56 16字节 硬盘GUID(在类UNIX系统中也叫UUID
72 8字节 分区表项的起始LBA(在主分区表中是2)
80 4字节 分区表项的数量
84 4字节 一个分区表项的大小(通常是128)
88 4字节 分区序列的CRC32校验
92 * 保留,剩余的字节必须是0(对于512字节LBA的硬盘即是420个字节)

主分区表和备份分区表的头分别位于硬盘的第二个扇区(LBA 1)以及硬盘的最后一个扇区。备份分区表头中的信息是关于备份分区表的。

分区表项(LBA 2–33)

GPT分区表使用简单而直接的方式表示分区。一个分区表项的前16字节是分区类型GUID。例如,EFI系统分区的GUID类型是{C12A7328-F81F-11D2-BA4B-00A0C93EC93B}。接下来的16字节是该分区唯一的GUID(这个GUID指的是该分区本身,而之前的GUID指的是该分区的类型)。再接下来是分区起始和末尾的64位LBA编号,以及分区的名字和属性。

GPT分区表项的格式
起始字节 长度 内容
0 16字节 分区类型GUID
16 16字节 分区GUID
32 8字节 起始LBA(小端序
40 8字节 末尾LBA
48 8字节 属性标签(如:60表示“只读”)
56 72字节 分区名(可以包括36个UTF-16(小端序)字符)

第七个问题:分区类型GUID

相关操作系统 分区类型 GUID[1]
(None) 未使用 00000000-0000-0000-0000-000000000000
MBR分区表 024DEE41-33E7-11D3-9D69-0008C781F39F
EFI系统分区 C12A7328-F81F-11D2-BA4B-00A0C93EC93B
BIOS引导分区 21686148-6449-6E6F-744E-656564454649
Windows 微软保留分区 E3C9E316-0B5C-4DB8-817D-F92DF00215AE
基本数据分区[2] EBD0A0A2-B9E5-4433-87C0-68B6B72699C7
逻辑软盘管理工具元数据分区 5808C8AA-7E8F-42E0-85D2-E1E90434CFB3
逻辑软盘管理工具数据分区 AF9B60A0-1431-4F62-BC68-3311714A69AD
Windows恢复环境 DE94BBA4-06D1-4D40-A16A-BFD50179D6AC
IBM通用并行文件系统(GPFS)分区 37AFFC90-EF7D-4e96-91C3-2D7AE055B174
HP-UX 数据分区 75894C1E-3AEB-11D3-B7C1-7B03A0000000
服务分区 E2A1E728-32E3-11D6-A682-7B03A0000000
Linux 数据分区[2] EBD0A0A2-B9E5-4433-87C0-68B6B72699C7
RAID分区 A19D880F-05FC-4D3B-A006-743F0F84911E
交换分区 0657FD6D-A4AB-43C4-84E5-0933C84B4F4F
逻辑卷管理员(LVM)分区 E6D6D379-F507-44C2-A23C-238F2A3DF928
保留 8DA63339-0007-60C0-C436-083AC8230908
FreeBSD 启动分区 83BD6B9D-7F41-11DC-BE0B-001560B84F0F
数据分区 516E7CB4-6ECF-11D6-8FF8-00022D09712B
交换分区 516E7CB5-6ECF-11D6-8FF8-00022D09712B
UFS分区 516E7CB6-6ECF-11D6-8FF8-00022D09712B
Vinum volume manager分区 516E7CB8-6ECF-11D6-8FF8-00022D09712B
ZFS分区 516E7CBA-6ECF-11D6-8FF8-00022D09712B
Mac OS X HFS(HFS+)分区 48465300-0000-11AA-AA11-00306543ECAC
苹果公司UFS 55465300-0000-11AA-AA11-00306543ECAC
ZFS[3] 6A898CC3-1DD2-11B2-99A6-080020736631
苹果RAID分区 52414944-0000-11AA-AA11-00306543ECAC
苹果RAID分区,下线 52414944-5F4F-11AA-AA11-00306543ECAC
苹果启动分区 426F6F74-0000-11AA-AA11-00306543ECAC
Apple Label 4C616265-6C00-11AA-AA11-00306543ECAC
Apple TV恢复分区 5265636F-7665-11AA-AA11-00306543ECAC
Solaris 启动分区 6A82CB45-1DD2-11B2-99A6-080020736631
根分区 6A85CF4D-1DD2-11B2-99A6-080020736631
交换分区 6A87C46F-1DD2-11B2-99A6-080020736631
备份分区 6A8B642B-1DD2-11B2-99A6-080020736631
/usr分区[3] 6A898CC3-1DD2-11B2-99A6-080020736631
/var分区 6A8EF2E9-1DD2-11B2-99A6-080020736631
/home分区 6A90BA39-1DD2-11B2-99A6-080020736631
备用扇区 6A9283A5-1DD2-11B2-99A6-080020736631
保留分区 6A945A3B-1DD2-11B2-99A6-080020736631
6A9630D1-1DD2-11B2-99A6-080020736631
6A980767-1DD2-11B2-99A6-080020736631
6A96237F-1DD2-11B2-99A6-080020736631
6A8D2AC7-1DD2-11B2-99A6-080020736631
NetBSD[4] 交换分区 49F48D32-B10E-11DC-B99B-0019D1879648
FFS分区 49F48D5A-B10E-11DC-B99B-0019D1879648
LFS分区 49F48D82-B10E-11DC-B99B-0019D1879648
RAID分区 49F48DAA-B10E-11DC-B99B-0019D1879648
concatenated分区 2DB519C4-B10F-11DC-B99B-0019D1879648
加密分区 2DB519EC-B10F-11DC-B99B-0019D1879648
  1. ^ 本表中的GUID使用小端序表示。例如,EFI系统分区的GUID在这里写成C12A7328-F81F-11D2-BA4B-00A0C93EC93B但实际上它对应的16字节的序列是28 73 2A C1 1F F8 D2 11 BA 4B 00 A0 C9 3E C9 3B——只有前3部分的字节序被交换了。
  2. a b Linux和Windows的数据分区使用相同的GUID。
  3. a b Solaris系统中/usr分区的GUID在Mac OS X上被用作普通的ZFS分区。
  4. ^ 具体定义见src/sys/sys/disklabel_gpt.h。NetBSD的GUID在单独定义之前曾经使用过FreeBSD的GUID。

第八问题:windows gpt定义及格式

Windows 安装程序默认配置包含 Windows®恢复环境 (Windows RE) 工具分区、系统分区、MSR 和 Windows 分区。以下图表显示了该配置。该配置可让 BitLocker Drive Encryption 投入使用,并将 Windows RE 存储在隐藏的系统分区中。

通过使用该配置,可以将系统工具(如 Windows BitLocker 驱动器加密 和 Windows RE)添加到自定义 Windows 安装。

https://msdn.microsoft.com/zh-cn/library/hh824839.aspx

参考:

http://www.btbat.com/119.html

http://www.techug.com/post/mbr-gpt-uefi-bios.html

https://zhidao.baidu.com/question/135127471550798525.html

http://www.cnblogs.com/xiaochina/p/5812085.html

https://zh.wikipedia.org/wiki/GUID%E7%A3%81%E7%A2%9F%E5%88%86%E5%89%B2%E8%A1%A8

---恢复内容结束---
-- -- -- -- -- -- -- -- --
轻灵划译
数据来源:

BIOS/MBR UEFI/GPT关系与区别-资料整理的更多相关文章

  1. BIOS + MBR > UEFI + GPT

    BIOS + MBR > UEFI + GPT硬件接口系统与磁盘分区UEFI用于取代老旧的BIOS,而GPT则取代老旧的MBR. 名词解释: BIOS (Basic Input/Output S ...

  2. UEFI+GPT模式下的Windows系统中分区结构和默认分区大小及硬盘整数分区研究

    内容摘要:本文主要讨论和分析在UEFI+GPT模式下的Windows系统(主要是最新的Win10X64)中默认的分区结构和默认的分区大小,硬盘整数分区.4K对齐.起始扇区.恢复分区.ESP分区.MSR ...

  3. BIOS、MBR、UEFI和GPT关系

    很多用户在新买电脑,或是给已有电脑重装系统时都出现过怎么都无法引导U盘安装的情况.究其原因,还是没能搞清楚BIOS.MBR.UEFI和GPT的复杂关系.所以,今天小编就和大家分享一下它们之间的爱恨情仇 ...

  4. GPT vs MBR 分区 ,,, Legacy BIOS vs UEFI BIOS

    MBR与GPT两种磁盘分区格式的区别 http://itoedr.blog.163.com/blog/static/120284297201378114053240 GPT Partition Tab ...

  5. win7 64 + Ubuntu 14.04.1 64双系统安装,详解UEFI ~ GPT和legacy ~ MBR区别

    win7 64 + Ubuntu 14.04.1 64双系统安装 背景:我的笔记本之前的系统是window 7 64 + Ubuntu 14.04.1,用UEFI引导系统.安装过程是先装的win7,再 ...

  6. BIOS与UEFI、MBR和GPT介绍

    操作步骤: UEFI是取代传统BIOS的,全称“统一的可扩展固件接口”.MBR则是传统的分区表类型,最大的缺点则是不支持容量大于2T的硬盘.GPT则弥补了MBR这个缺点,最大支持18EB的硬盘,是基于 ...

  7. BIOS+MBR模式 VS UEFI+GPT模式

     EFI与MBR启动的区别 大硬盘和WIN8系统,让我们从传统的BIOS+MBR模式升级到UEFI+GPT模式,现在购买的主流电脑,都是预装WIN8系统,为了更好的支持2TB硬盘 ,更快速的启动win ...

  8. EFI、UEFI、MBR、GPT的区别

    UEFI.GPT.MBR是什么?这些专业术语不难理解,UEFI属于主板类名词,其作用类似于BIOS.GPT.MBR则属于硬盘类名词,它们的作用类似一艘航母的骨架,有了这个骨架,我们才可以进行细致到诸如 ...

  9. 【干货】BIOS、UEFI、MBR、GPT、GRUB 到底是什么意思?

    公众号关注 「开源Linux」 回复「学习」,有我为您特别筛选的学习资料~ 01 前言 在学习 Linux 系统启动原理之前,我们先了解下与操作系统启动相关的几个概念. 02 与操作系统启动相关的几个 ...

随机推荐

  1. 【BZOJ3438】小M的作物 最小割

    [BZOJ3438]小M的作物 Description 小M在MC里开辟了两块巨大的耕地A和B(你可以认为容量是无穷),现在,小P有n中作物的种子,每种作物的种子 有1个(就是可以种一棵作物)(用1. ...

  2. 利用MFC实现浏览器的定制与扩展(JavaScript与C++交互)

    原文地址:http://www.vckbase.com/document/viewdoc/?id=1486 浏览器的定制与扩展       作者:李汉鹏 下载源代 码  本文分如下章节: 前 言 在 ...

  3. IE edge是怎么了??

    IE edge 怎么不能通过$.getJSON(url,function(data){ alert(''); });获取数据呢?,其他浏览器和IE的10以下版本都没问题获取到了,这是什么情况!本来是想 ...

  4. Struts2 取消 下载时异常

    Struts2环境下,通过Struts2提供的下载方式进行下载时出现的java.lang.IllegalStateException异常 2011-1-820:34:20 org.apache.cat ...

  5. Microsoft Excel 标题栏或首行锁定

    Microsoft Excel 标题栏或首行锁定 在进行Excel编辑的时候,希望在浏览的时候,第一行或者第一列能够始终显示. 需要做的是:在Excel中选择 "视图"->& ...

  6. java 常用资源

    java高手真经:http://pan.baidu.com/share/link?uk=2100475681&shareid=2381645927#path=%252F%255Bwww.jav ...

  7. Python3中json的encode和decode

    在Python3中,将对象序列化为JSON对象,即对对象进行json encode编码,使用函数 json.dumps(obj, *, skipkeys=False, ensure_ascii=Tru ...

  8. python基础-第十一篇-11.2DOM为文档操作

    文档对象模型(DOM)是一种用于HTML和XML文档的编程接口 节点类型 12种节点类型都有NodeType属性来表明节点类型 节点关系 <div id="t"> &l ...

  9. 【JVM】程序调优

    现实企业级Java开发中,有时候我们会碰到下面这些问题: OutOfMemoryError,内存不足 内存泄露 线程死锁 锁争用(Lock Contention) Java进程消耗CPU过高 .... ...

  10. openresty跑定时任务配置、ngx.timer.every接口使用

    openresty的定时任务是要跟worker绑定的.如果不绑定特定的worker,那么所有启动的woker都会去执行定时任务. 一般情况下默认绑定worker_id=0的,这样在nginx整个进程里 ...