"UEFI spec2.0 是统一可扩展固件接口的标准文档,发布于2006年1月31日,旨在提供一个现代化的、操作系统与硬件之间交互的平台,取代传统的BIOS系统。"
UEFI(Unified Extensible Firmware Interface)是一个开放的、标准化的固件接口,用于替代传统的基本输入输出系统(BIOS)。UEFI spec2.0 是该接口的第二个主要版本,它定义了一系列规范和协议,以改善系统的启动过程、提高安全性、增强性能,并为操作系统开发者提供更加一致的底层环境。
在UEFI spec2.0中,主要包含了以下关键知识点:
1. **启动流程**:UEFI引入了预操作系统环境(Pre-OS Environment),在这个环境中,系统可以执行复杂的初始化任务,如加载驱动程序和服务,而不仅仅是简单的硬件检测。这使得启动过程更为高效且可定制化。
2. **图形用户界面**:UEFI支持图形化的设置界面,即所谓的“UEFI Shell”,用户可以通过鼠标或键盘进行操作,相比BIOS的字符界面,提供了更好的用户体验。
3. **模块化设计**:UEFI将固件分解为独立的、可更新的模块,每个模块都有自己的安全认证,便于维护和升级。
4. **EFI应用程序**:UEFI支持可执行的EFI二进制文件,这些应用程序可以在启动阶段运行,比如引导管理器,它可以用来选择不同的操作系统或恢复系统。
5. **安全特性**:UEFI提供了安全启动(Secure Boot)功能,确保只有经过验证的固件和操作系统才能启动,有助于防止恶意软件感染。
6. **扩展性**:UEFI定义了一套标准的API(应用程序编程接口),允许第三方开发者创建固件驱动和工具,扩展固件的功能。
7. **固定内存映射**:UEFI规定了内存的固定映射,使得操作系统加载时可以更快地访问内存资源。
8. **事件日志**:UEFI提供了一种日志记录机制,用于记录启动过程中遇到的问题,方便故障排查。
9. **设备路径**:UEFI使用设备路径来唯一标识系统中的硬件设备,简化了设备识别和配置。
UEFI spec2.0的发布,标志着计算机固件领域的一次重大进步,它为现代操作系统提供了更加稳定和安全的入口,同时降低了硬件和软件之间的兼容性问题。然而,设计者必须注意,对于任何标记为“保留”或“未定义”的特性,不应依赖其缺失或特征,因为这可能导致不兼容或不可预测的行为。UEFI Forum, Inc. 是负责UEFI标准维护和发展的组织,他们持续推动着固件接口的改进和发展。