BIOS + MBR > UEFI + GPT
硬件接口系统与磁盘分区
UEFI用于取代老旧的BIOS,而GPT则取代老旧的MBR。

名词解释:

  • BIOS (Basic Input/Output System) 基本输入输出系统
  • MBR (Master Boot Record) 主引导记录
  • UEFI (Unified EFI) 统一可扩展固件接口.包括内置命令行界面,读取分区表,浏览文件等特性,GPT分区也是UEFI标准的一部分
  • GPT (GUID Partition Table) GUID分区表,是UEFI 规范的一部分。
  • EFI (Extensible Firmware Interface) 可扩展固件接口
  • GUID (globally unique identifiers) 全局唯一标识符
  • ESP (EFI System Partition) EFI系统分区, GPT的启动分区。包含一个efi目录。每个引导装置程序有自己的标识符和一个对应的子目录,如efi/microsoft, efi/apple, efi/grub. 启动加载文件后缀.efi,
  • PMBR (Protective MBR) 保护性MBR, GPT的PMBR存在的意义就是,当不支持GPT的分区工具试图对硬盘进行操作时(例如MS-DOS和Linux的fdisk程序),它可以根据这份PMBR以传统方式启动,过程和MBR+BIOS完全一致,极大地提高了兼容性。这种MBR会认为GPT驱动器有一个占据了整个磁盘的分区。
  • POST (Power-On Self-Test) BIOS开机自检
  • GRUB (Grand Unified Boot Loader) 大一统引导装载程序
  • MSR (Microsoft Reserved Partition) Microsoft 保留分区, GPT格式磁盘用于安装Win7/8系统都会自动创建该分区。
  1. MBR不支持大于2T的硬盘。GPT支持最大卷为18 EB(1EB=1048576TB)50多万倍。不过MBR是1983年就提出来的,那时候支持2Tb对于当时的人来说,2Tb也是天文数字了。
  2. MBR最多4个主分区,超过4个再分区只能通过逻辑分区。GPT可以支持无限个分区,微软目前的限定是128个。Linux、ubuntu、macos都能支持这种分区格式。
  3. GPT分区磁盘有备份分区表来提高分区数据结构的完整性。MRB没有。
  4. UEFI可以实现启动时原生分辨率,可用鼠标操作图形界面,不再是枯燥的蓝底白字的英文。较新的版本还有截图,联网等功能。
  5. UEFI + GPT 支持Secure Boot。通过保护预启动或预引导进程,抵御bootkit攻击,从而提高安全性。所有在开机时比Windows内核更早加载,实现内核劫持的技术,都可以称之为Bootkit。
  6. BIOS由汇编语言编写,UEFI基本由C语言编写。
  7. BIOS+MBR的系统引导文件可以和系统文件在同一分区的根目录,也可以不与系统文件同一分区,只要系统引导文件所在分区为活动的主分区即可启动操作系统,而UEFI+GPT只能把系统引导文件放置在ESP分区,且操作系统必须在另外的主分区,也就是说,UEFI+GPT强制要求系统启动文件与系统文件必须分离,不在同一分区。

一个计算机是使用BIOS还是使用UEFI,是由这台计算机的主板决定的,UEFI大约在2005年出现,到2010年左右逐渐普及。
大约从2012年的Windows 8操作系统及服务器操作系统Windwos Server 2012开始,主流操作系统及主板厂商全面支持GPT分区。
同时,主板也大约在2010年左右,之前大部分支持BIOS,之后大部分支持UEFI。
在过渡期间,可能同时会有这2种(BIOS, UEFI)主板上市。

只有基于EFI的电脑能从GPT磁盘启动
UEFI主板:UEFI + GPT
GPT分区有PMBR的兼容区,所以UEFI的主板也可以使用传统的MBR方式。

对于老旧机器的BIOS主板:BIOS + MBR
双硬盘:BIOS + MBR系统主硬盘 + MBR/GPT数据硬盘

===================

Windows系统,查看启动模式(UEFI or Legacy BIOS)
https://wiki.archlinux.org/index.php/Dual_boot_with_Windows
https://www.eightforums.com/threads/bios-mode-see-if-windows-boot-in-uefi-or-legacy-mode.29504/

1. DiskManagement 磁盘管理下查看是否有(EFI System Partition)分区;
2. 开始\运行:msinfo32, 在System Summary下找到BIOS Mode项目,内容会是(Lagacy or UEFI);
3. 打开日志:C:\Windows\Panther​\setupact.log, 查找“Detected boot environment”关键字,看其后内容:(EFI or BIOS);
4. 命令提示运行:wpeutil UpdateBootInfo​,查看值
reg query HKLM\System\CurrentControlSet\Control /v PEFirmwareType​
REG_DWORD (returns 0x1 if the PC boots in Legacy BIOS mode or 0x2 if the PC boots in UEFI mode.)

===================
http://www.eassos.cn/jiao-cheng/ying-pan/mbr-vs-gpt.php
https://en.wikipedia.org/wiki/GUID_Partition_Table
https://www.zhihu.com/question/28471913
UEFI+GPT与BIOS+MBR各自有什么优缺点?
https://www.itsk.com/thread-345631-1-1.html
https://zhuanlan.zhihu.com/p/26098509
https://news.mydrivers.com/1/503/503560.htm
https://blog.51cto.com/zhaoshilei/1912606

=============
http://www.wnavy.com/archives/1254
http://drops.xmd5.com/static/drops/tips-12043.html
https://wiki.archlinux.org/index.php/Partitioning#GUID_Partition_Table
https://en.wikipedia.org/wiki/Master_boot_record
https://en.wikipedia.org/wiki/Disk_partitioning
https://en.wikipedia.org/wiki/Booting#Boot-loader
https://en.wikipedia.org/wiki/GUID_Partition_Table
https://en.wikipedia.org/wiki/Logical_block_addressing
https://en.wikipedia.org/wiki/Cylinder-head-sector
https://en.wikipedia.org/wiki/Chain_loading
https://en.wikipedia.org/wiki/GNU_GRUB
http://wiki.rosalab.ru/en/index.php/Grub2_theme_tutorial
https://wiki.gentoo.org/wiki/GRUB2
https://wiki.archlinux.org/index.php/GRUB
https://www.gnu.org/software/grub/manual/grub/

https://en.wikipedia.org/wiki/BIOS
https://en.wikipedia.org/wiki/BIOS_boot_partition
https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface
https://en.wikipedia.org/wiki/Booting#Boot-loader
Comparison of boot loaders
https://en.wikipedia.org/wiki/Comparison_of_boot_loaders

============

用dd if=/dev/sdc of=/tmp/mbr.bin bs=446 count=1 提取出。
用hexdump -C /tmp/mbr.bin 查看

BIOS + MBR > UEFI + GPT的更多相关文章

  1. BIOS/MBR UEFI/GPT关系与区别-资料整理

    ---恢复内容开始--- 关于 BIOS/MBR UEFI/GPT他们之间的关系一直比较疑惑, 首先一点前提 BIOS UEFI 是一类,是控制硬件,引导启动的:MBR GPT是硬盘的分区定义.. 后 ...

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

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

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

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

  4. BIOS与UEFI、MBR和GPT介绍

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

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

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

  6. UEFI+GPT与BIOS+MBR各自有什么优缺点?

    1.分区数量上,gpt好像可以支持无限个分区,不过window上只认128个,而且gpt分区不分主分区,逻辑分区,可以理解为全部都是主分区,就相当于可以允许你一个分区一个系统,128个系统了.而这是m ...

  7. 操作系统的启动与引导问题 BIOS、UEFI、MBR、GPT

    关于ISO.WIM.GHO三者的正确理解. ISO(Isolation)文件一般以ISO为扩展名,是复制光盘上全部信息而形成的镜像文件. WIM是英文Microsoft Windows Imaging ...

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

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

  9. 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,再 ...

随机推荐

  1. jquery easyui的应用-1

    下载地址是: www.jeasyui.com/download 当前版本是1.6.7 是由 jquery ui 扩展而来的. 像jquery ui, bootstrap, jquery easyui三 ...

  2. Learning-Python【23】:面向对象三大特性

    继承 封装 多态

  3. Linux之文件目录

    一.Linux的目录结构 1.概览 2.树状目录结构 说明: /root:该目录为系统管理员用户主目录 /bin:即Binary,存放着系统必备执行命令 /boot:这里存放的是启动Linux时使用的 ...

  4. Rancher2.0中邮件通知的设置

    1-邮件通知的设置-中国电信189邮箱 2-2-邮件通知的设置-腾讯免费企业邮箱 **说明:网易163邮箱.QQ邮箱没有设置成功,可能是因为邮箱设置得太安全的缘故.   参考链接: 中国电信189邮箱 ...

  5. vue的技巧代码

    转载:https://segmentfault.com/a/1190000014085613 第一招:化繁为简的Watchers 场景还原: created(){ this.fetchPostList ...

  6. try与except处理异常语句

    ji 简介 与其他语言相同,在python中,try/except语句主要是用于处理程序正常执行过程中出现的一些异常情况,如语法错(python作为脚本语言没有编译的环节,在执行过程中对语法进行检测, ...

  7. Bilinear CNN与 Randomly Wired Neural Network

    最近主要学习了两篇论文以及相关的代码. 1.Bilinear CNN 这篇论文主要是在细粒度分类上应用的,在全连接层之前,在所有的卷积计算完成之后,进行的Bilinear计算,关键的代码如下: def ...

  8. 『Python CoolBook』C扩展库_其五_C语言层面Python库之间调用API

    点击进入项目 一.C层面模块添加API 我们仍然操作如下结构体, #include <math.h> typedef struct Point { double x,y; } Point; ...

  9. systemctl用法及其语法

    1.确定是否安装systemd及其版本 # systemctl –version 2.确定systemd和systemctl的二进制文件和库文件的安装位置 # whereis systemd # wh ...

  10. python之模块定义、导入、优化详解

    一.模块 1.模块的定义 模块是一组包含了一组功能的python文件,比如test.py,模块名为test,可以通过import test进行调用.模块可以分为以下四个通用类别 1 使用python编 ...