1. 简介
在本篇文章中,我们将解释 BIOS、CMOS 和 UEFI 之间的区别。
很多人容易混淆这几个概念。简单来说:
- BIOS 是主板上的固件程序,用于在开机时启动计算机;
- CMOS 是一块用于存储系统设置的芯片,比如日期、时间、启动顺序等;
- UEFI 是新一代固件接口,提供比传统 BIOS 更多的功能和更强的安全性。
在早期 Windows 系统中,需要通过 DOS 命令 WIN
启动操作系统。而 UEFI 正是这一思想的延续,它不仅提供了图形化界面,还增强了安全性,比如支持安全启动(Secure Boot)。
2. BIOS 与 UEFI 的对比
下表总结了 UEFI 相比 BIOS 的主要优势:
功能 | BIOS | UEFI |
---|---|---|
用户界面 | 蓝底白字的命令行界面 | 支持彩色、动画的图形界面 |
网络支持 | 不支持以太网、Wi-Fi 和蓝牙 | 支持网络连接 |
远程诊断 | 不支持 | 支持远程诊断和修复 |
输入设备支持 | 仅支持键盘 | 支持键盘和鼠标 |
安全启动 | 不支持 | 支持 Secure Boot,防止恶意软件加载 |
固件语言 | 16 位汇编语言 | 64 位 C 语言 |
硬盘支持上限 | 最大支持 2.2TB 硬盘 | 支持高达 9 ZB(Zettabytes) |
下图展示了 BIOS 和 UEFI 在启动时的界面差异:
UEFI 的一个核心优势是其安全启动机制。它通过验证启动加载器的数字签名,防止非法软件在启动阶段加载,从而提升了系统的安全性。
3. BIOS 的工作原理
当我们打开计算机时,BIOS 首先运行 POST(Power On Self Test),检测硬件是否正常工作。
成功通过 POST 后,BIOS 会从硬盘等存储设备加载 Bootloader,最终启动操作系统。
以下是 BIOS 启动流程图:
BIOS 程序是非易失性的,即使断电也不会丢失。传统的 BIOS 有以下三种工作模式:
- 启动模式(Boot):用于启动操作系统;
- 设置模式(Setup):用于配置固件参数;
- 更新模式(Update):用于升级 BIOS 固件。
4. CMOS 的作用
CMOS 是一块用于存储系统配置信息的芯片,例如:
- 当前日期和时间
- 风扇转速
- 启动顺序
- 外设自定义设置
CMOS 是易失性存储器,因此需要主板上的 CMOS 电池 提供电源以保持数据不丢失。
如果 CMOS 电池没电或被移除,设置将恢复为 BIOS 中的默认值。
以下是 CMOS 设置界面示意图:
CMOS 芯片也常被称为 RTC(实时时钟)、NVRAM(非易失性 RAM)或 CMOS RAM。
CMOS 电池电量不足的常见症状:
- 日期和时间显示错误
- 键盘或鼠标响应异常
- 驱动程序丢失
- 无法连接网络
5. UEFI 的特性与优势
随着 Intel 宣布从 2020 年起不再支持传统 BIOS,UEFI 成为了主流。
UEFI 提供了一个轻量级的操作系统环境,能够更好地与硬件交互。它不仅仅是一个启动程序,更像是一个运行固件的虚拟平台。
以下是 UEFI 启动过程的简化流程图:
UEFI 支持以下功能:
- 图形化界面(GUI)
- EFI Shell(预操作系统命令行界面)
- 网络功能(可用于远程诊断)
- 安全启动(Secure Boot)
- 支持 64 位驱动和程序
一些主板厂商(如 ASUS)已经提供了非常人性化的 UEFI 设置界面:
安全启动(Secure Boot)
Secure Boot 是 UEFI 的核心安全特性之一。它通过验证启动加载器的数字签名,防止恶意软件在启动阶段加载。
- 平台厂商(OEM / 企业)拥有一个数字签名密钥对;
- 私钥用于签名固件文件;
- 公钥用于验证签名;
- 只有签名合法的驱动和程序才能被加载。
UEFI 安全启动对 Windows 的限制:
- 必须使用 UEFI v2.3.1 或以上版本;
- 仅支持 64 位 Windows 8 及更高版本。
6. 总结
本文介绍了 BIOS、CMOS 和 UEFI 的基本概念与区别:
- BIOS 是主板上的固件程序,负责启动操作系统;
- CMOS 是存储 BIOS 设置的芯片,依赖电池供电;
- UEFI 是新一代固件接口,提供了更丰富的功能和更高的安全性。
虽然 UEFI 已成为主流,但它仍然保留了“传统模式(Legacy Mode)”,支持文本界面,方便用户安装 Linux 等操作系统。
✅ 优点:
- UEFI 提供了图形界面和网络支持;
- 支持 Secure Boot,提升安全性;
- 更大的硬盘支持上限;
❌ 缺点:
- 对老系统兼容性较差;
- 安全机制复杂,调试困难;
⚠️ 踩坑提示:安装 Linux 系统时,务必确认是否启用了 UEFI 模式,否则可能导致无法启动。建议查阅主板手册,了解如何切换 UEFI/传统模式。