时间:2025-11-12 11:42
人气:
作者:admin
BIOS 的工作流程简单介绍如下。首先电脑通电之后会进行开机自检,检查 CPU、内存、硬盘等关键硬件是否正常。随后开始初始化硬件,加载显卡,硬盘等设备的驱动。最后按照设定的启动顺序读取硬盘的第一个扇区(MBR,512 字节),将控制权交给 MBR 里的引导程序(如GRUB、Windows Boot Manager),由引导程序去加载操作系统。
BIOS 具有的主要局限性包括,MBR 分区表对分区数(4个)和磁盘容量(2.2 TB)的限制;工作在16位实模式下,无法使用64位保护模式,性能上会落后;由于 BIOS 启动是顺序执行的,不能充分利用多核 CPU 的优势,启动速度会慢;UI 界面简陋无法使用鼠标;安全性差,如果磁盘 MBR 头部代码被病毒修改,直接导致无法启动。
相比之下 UEFI 支持 GPT 分区,打破了 MBR 2.2 TB 的容量限制,几乎支持无限大小的硬盘和几乎无限数量的分区(Windows 128个)。UEFI 可以并行初始化硬件,并且跳过了 BIOS 中一些不必要的自检步骤,实现了快速启动。UEFI 可以只加载被数字证书签名的操作系统引导程序,从而有效防止恶意软件在系统启动前感染电脑。这是 Windows 8 及以上版本系统的默认要求。UEFI的驱动和程序不存放在狭小的 ROM 中,而是放在一个独立的EFI系统分区里。这允许它拥有华丽的图形界面、鼠标支持,甚至可以在不进入操作系统的情况下运行一些小程序(如诊断工具、浏览器)。
核心区别对比表格
| 特性 | BIOS | UEFI |
|---|---|---|
| 全称 | 基本输入输出系统 | 统一可扩展固件接口 |
| 诞生年代 | 1975年(非常古老) | 2005年左右(现代) |
| 程序模式 | 16位实模式 | 32位/64位保护模式 |
| 用户界面 | 通常是蓝底白字的纯文本界面,只能用键盘操作 | 图形化界面,支持鼠标操作,更友好 |
| 磁盘分区 | 使用 MBR 主引导记录 | 使用 GPT GUID 分区表 |
| 最大磁盘容量 | 2.2 TB | 近乎无限(理论 9.4 ZB) |
| 启动过程 | 从 MBR 读取代码,启动引导程序 | 直接从 EFI 分区中的文件启动 |
| 启动速度 | 较慢(需要自检所有硬件) | 更快(支持并行初始化、跳过自检) |
| 安全性 | 几乎无安全启动机制 | 支持 安全启动,防止恶意软件在启动前加载 |
| 扩展性 | 差,固件容量有限 | 好,驱动和程序可存储在EFI系统分区中 |
| 网络功能 | 无或非常基础 | 在预启动环境中有较好的网络支持 |
怎么查看自己的电脑是不是 UEFI 呢?Win + R 搜索 msinfo32,在打开的窗口中,查看 BIOS模式 一项,如果显示 UEFI 就说明使用的是 UEFI 模式。
什么是分区呢?相信大家都很熟悉,我们新买的硬盘在装机之后通常都至少会分为C盘、D盘两个盘,分别用于存放系统数据和软件安装数据或者再分个E盘用于存放个人数据等。这个将物理上一整块硬盘分为逻辑上的几个区块的操作就是分区。MBR 或者 GPT 就是记录了我们磁盘是如何分区的一种规则,比如我们的磁盘分了几个盘,每个盘的起始扇区和结束扇区是什么。
MBR/GPT 本质上是一种规范,模式或者规则。在新磁盘到手之后,我们在使用磁盘管理工具进行磁盘初始化的时候通常就要选择分区模式和文件系统。MBR和GPT是一套规则,是藏在硬盘最前端的“数据结构”。而你在图形界面上看到的操作(新建简单卷、压缩卷、格式化),都是根据这套规则在“填写表格”和“执行命令”。它们就是让一块物理硬盘能够被操作系统识别、管理和使用的“灵魂”。
MBR(主引导记录)是一种在硬盘驱动器第一个扇区得数据结构,它告诉计算机硬盘是如何分区的,以及如何引导操作系统。一个标准的 MBR 包含三个部分:
MBR 的分区表只有一份,且存放在磁盘的最开头。如果这个区域损坏,整个磁盘的分区信息都会丢失。并且 MBR 不内置任何安全功能,无法防止MBR被恶意软件篡改(如MBR病毒)。
GPT(全局唯一标识分区表)用于取代传统 MBR 分区方案的新一代磁盘分区标准,源自 UEFI。相比于 MBR,GPT 主要有如下特性:
GPT 磁盘结构:
0xEE),用来告诉不支持 GPT 的旧系统或工具:这块磁盘已经被占用(是 GPT 磁盘),从而防止它们错误地将其识别为未分区磁盘并进行格式化等破坏性操作。| 方面 | MBR(旧) | GPT(新) |
|---|---|---|
| 最大磁盘容量 | ~2.2 TB | 近乎无限(理论 9.4 ZB) |
| 分区数量 | 4个主分区(或3主+1扩展) | 理论上无限制(Windows限制为128个) |
| 安全性 | 无 | 支持 CRC32校验 和利用UEFI的安全启动,防止篡改 |
| 数据冗余 | 分区表只有一份,易丢失 | 在磁盘开头和末尾都存有分区表副本,更健壮 |
| 依赖的固件 | BIOS | UEFI |
查看我们的电脑磁盘使用的是什么分区:右键开始图标(或者win + x),打开磁盘管理,右键点击窗口底部磁盘左侧的标签(如“磁盘0”),选择“属性”。切换到“卷”标签页,在“分区样式”一项中即可看到是 “主引导记录” 还是 “GUID 分区表”。
BIOS 的寻找方法。电脑启动之后,BIOS 会无条件地直接去读取硬盘的第一个扇区(512字节),随后查看这个扇区的最后两个字节,看是否是目标的魔数,如果是,就会执行这个扇区前 440 字节的引导程序,去查找活动分区,并加载分区里面更复杂的引导程序,如果不是就认为这个设备不可引导。
UEFI 的寻找方法。UEFI 会直接读取磁盘的第二个扇区,因为 GPT 规则中第一个扇区存放的是保护性 MBR。第二个扇区才是 GPT 主头。GPT主头包含了分区表的位置、大小以及一个非常重要的 CRC32校验和,UEFI会自己根据分区表的数据重新计算一遍校验和。如果计算出的结果和GPT头里记录的值匹配:UEFI就认为这个GPT分区表是完整、有效的。如果不匹配说明分区表可能已损坏。这时,UEFI会去读取硬盘末尾的GPT备份头,尝试用副本来修复主头。这体现了GPT的健壮性。
在确认GPT分区表有效后,UEFI不会去执行什么扇区里的代码。而是:在GPT分区表中查找一个具有特定 GUID类型 的分区:EFI系统分区。进入这个分区(它是一个使用 FAT32 文件系统的独立分区),在里面找到并直接运行位于 \EFI\Boot\bootx64.efi 或其他厂商指定路径的 .efi可执行文件,从而启动操作系统。
如果大家之前有学过操作系统,会对物理地址和虚拟地址的概念很熟悉。前面我们说过 BIOS / UEFI 分别工作在16位实模式和保护模式下。x86 的实模式和保护模式有一个核心区别就是寻址方式。
Steady progress!