上周回家给岳父买了个台式机,然后在家里组装了一下,发现操作系统默认安装的是win8,怕他们不会使用,所以就打算重装一个win7的系统。本来觉得是小菜一碟的事情,安装的时候提示磁盘是GPT格式的,晚上搜索了一下需要将GPT格式的磁盘转换成MBR的格式就好了。在没有弄清状况的情况下,就直接下载了一个磁盘分区工具,对磁盘进行转换,结果整块磁盘被格式化了。然后一直弄到了凌晨4点,才把系统搞好,本文就结合自己的实战。讲解一下GPT VS MBR 以及 UEFI VS BIOS

UEFI VS BIOS

BIOS(Basic Input Output System)基本输入输出系统,他的实质是固化在计算机ROM芯片上的不可重写的程序,主要用于承载计算机最基本的输入输出程序,开机自检程序,以及系统自启动程序。可以认为它是系统的初始点,没有BIOS就无法启动计算机。在win7以及win7以前的时代主要使用BIOS启动系统,目前正在被更加合理的UEFI所代替。BIOS启动流程:

  • 系统开机 - 上电自检(Power On Self Test 或 POST)。
  • POST过后初始化用于启动的硬件(磁盘、键盘控制器等)。
  • BIOS会运行BIOS磁盘启动顺序中第一个磁盘的首440bytes(MBR启动代码区域)内的代码。
  • 启动引导代码从BIOS获得控制权,然后引导启动下一阶段的代码(如果有的话)(般是系统的启动引导代码)。
  • 再次被启动的代码(二阶段代码)(即启动引导)会查阅支持和配置文件。
  • 根据配置文件中的信息,启动引导程序会将内核和initramfs文件载入系统的RAM中,然后开始启动内核。

UEFI (Unfied Extensible Firmware Interface)统一可扩展接口,是 Intel 为 PC 固件的体系结构、接口和服务提出的建议标准。其主要目的是为了提供一组在 OS 加载之前(启动前)在所有平台上一致的、正确指定的启动服务,被看做是有近20多年历史的 BIOS 的继任者。UEFI启动流程:

  • 系统开机 - 上电自检(Power On Self Test 或 POST)。
  • UEFI 固件被加载,并由它初始化启动要用的硬件。
  • 固件读取其引导管理器以确定从何处(比如,从哪个硬盘及分区)加载哪个 UEFI 应用。
  • 固件按照引导管理器中的启动项目,加载UEFI 应用。
  • 已启动的 UEFI 应用还可以启动其他应用(对应于 UEFI shell 或 rEFInd 之类的引导管理器的情况)或者启动内核及initramfs(对应于GRUB之类引导器的情况),这取决于 UEFI 应用的配置。

BIOS与UEFI的区别:

  • UEFI编码99%都是由C语言完成,而BIOS是用汇编语言编写的
  • UEFI 一改之前的中断、硬件端口操作的方法,而采用了Driver/protocol的新方式
  • UEFI 不支持X86实模式,而直接采用Flat mode(也就是不能用DOS了,现在有些 EFI 或 UEFI 能用是因为做了兼容,但实际上这部分不属于UEFI的定义了);
  • 输出也不再是单纯的二进制code,改为Removable Binary Drivers;
  • OS启动不再是调用Int19,而是直接利用protocol/device Path;
  • 对于第三方的开发,前者基本上做不到,除非参与BIOS的设计,但是还要受到ROM的大小限制,而后者就便利多了。
  • 弥补BIOS对新硬件的支持不足的问题。

GPT VS MBR

GPT(GUID Partition Table)GUID意为全局唯一标识符,这是一个正逐渐取代MBR的新标准。它和UEFI相辅相成——UEFI用于取代老旧的BIOS,而GPT则取代老旧的MBR。之所以叫作“GUID分区表”,是因为你的驱动器上的每个分区都有一个全局唯一的标识符(globally unique identifier,GUID)——这是一个随机生成的字符串,可以保证为地球上的每一个GPT分区都分配完全唯一的标识符。这个标准没有MBR的那些限制。磁盘驱动器容量可以大得多,大到操作系统和文件系统都没法支持。它同时还支持几乎无限个分区数量,限制只在于操作系统——Windows支持最多128个GPT分区,而且你还不需要创建扩展分区。

MBR 的意思是“主引导记录”,最早在1983年在IBM提出的。之所以叫“主引导记录”,是因为它是存在于驱动器开始部分的一个特殊的启动扇区。这个扇区包含了已安装的操作系统的启动加载器和驱动器的逻辑分区信息。所谓启动加载器,是一小段代码,用于加载驱动器上其他分区上更大的加载器。如果你安装了Windows,Windows启动加载器的初始信息就放在这个区域里——如果MBR的信息被覆盖导致Windows不能启动,你就需要使用Windows的MBR修复功能来使其恢复正常。

GPT MBR 的区别

  • MBR支持最大2TB磁盘,它无法处理大于2TB容量的磁盘。MBR还只支持最多4个主分区,如果你想要更多分区,你需要创建所谓“扩展分区”,并在其中创建逻辑分区。
    MBR已经成为磁盘分区和启动的工业标准。
  • GPT 没有磁盘大小的限制,也没有分区个数的限制
  • 在MBR磁盘上,分区和启动信息是保存在一起的。如果这部分数据被覆盖或破坏,事情就麻烦了,而MBR则对这些问题无能为力——只有在问题出现后,你才会发现计算机无法启动,或者磁盘分区都不翼而飞了。
  • GPT在整个磁盘上保存多个这部分信息的副本,因此它更为健壮,并可以恢复被破坏的这部分信息。GPT还为这些信息保存了循环冗余校验码(CRC)以保证其完整和正确——如果数据被破坏,GPT会发觉这些破坏,并从磁盘上的其他地方进行恢复。
  • MBR的兼容性比较好,win7时代之前的系统最好使用MBR分区

GPT MBR 如何选择
win7包括win7时代之前的机器建议选择MBR,win7之后磁盘容量在2TB之内的机器也建议选择MBR。

预装WIN8系统如何安装WIN7

根据上面的分析需要明白 UEFI是和GPT配合使用的,BIOS是和MBR配合使用的。现在win8的系统都是使用UEFI加GPT的组合,而WIN7建议是BIOS加GPT组合,所以在默认win8系统的电脑安装win7的时候,需要进行两部分转换 :

  • UEFI转换成BIOS
  • GPT转换成MBR

UEFI转换成BIOS

这个需要在BIOS中设置,不同的电脑有不同的设置方法,一般在 Security选项下面

GPT转换成MBR

这个一般需要制作一个U盘系统,下载一个磁盘转换工具,进行磁盘格式转换

以上这两部都完成之后,就可以采用正常的步骤安装操作系统了。