EFI

义项:可扩展固件接口的缩写
EFI

EFI是英文“可扩展固件接口”(Extensible Firmware Interface)的缩写,指由英特尔提出的、用于规范操作系统与平台固件之间交互的接口标准,被视为传统BIOS的替代方案[1][2]。该规范源于英特尔1998年启动的“英特尔启动倡议”(Intel Boot Initiative),以EFI 1.10版作为英特尔独立发布的最后版本[1]。2005年统一EFI论坛(Unified EFI Forum)成立后,规范以其为基础继续演进,改称统一可扩展固件接口(UEFI)[1]。

目录
  1. 定义
  2. 原理
  3. 发展历程
  4. 应用
  5. 局限
  6. 参见

定义

EFI是一套描述操作系统与平台固件之间软件接口的规范。按该规范,这一接口由数据表、启动服务调用和运行时服务调用组成,平台相关信息与可调用的服务都在其中定义,操作系统及其加载器可以据此启动系统并运行启动前程序[1]。

从功能上看,EFI取代的是传统BIOS承担的加电自检、硬件初始化与引导交接等职责,但两者实现方式不同:传统BIOS依赖固定的中断调用与约定,EFI则以模块化的驱动与协议构建启动环境[2]。EFI本身是接口规范而非某款固件产品,具体实现由各固件厂商完成[1]。

原理

EFI固件的启动过程按阶段推进。较早的阶段负责处理器、芯片组与主板的初始配置,并在结束前完成加电自检与资源发现,把内存布局等信息以数据结构的形式交给下一个阶段[3]。随后进入驱动执行环境阶段,核心组件生成启动服务与运行时服务,调度器按次序发现并运行各类驱动,完成平台初始化并建立控制台和引导设备[3]。

在接口组织上,EFI以“协议”为基本单位描述服务集合。句柄数据库中,一个句柄对应若干全局唯一标识符,每个标识符映射到一个协议,协议则封装一组服务接口,某些协议抽象输入输出设备,另一些提供通用系统服务[3]。这种设计使驱动核心不依赖具体处理器或平台,从而具备可移植性[3]。

$\text{平台初始化} \rightarrow \text{驱动执行环境} \rightarrow \text{引导设备选择} \rightarrow \text{操作系统加载}$

EFI 1.0规范还定义了通用图形适配器协议以支持图形功能,后续的UEFI规范不再保留该协议,改以图形输出协议替代[4]。UEFI 2.1引入人机接口基础设施,用于管理用户输入、本地化字符串、字体与表单,便于厂商设计启动前的图形配置界面[4]。

发展历程

EFI的技术源头是英特尔1998年启动的英特尔启动倡议项目,该规范主要面向下一代基于英特尔架构的计算机[1]。其直接动因与安腾处理器平台有关:该平台采用全新的64位架构,固件与操作系统之间的接口可以重新定义,不必沿用传统BIOS的做法[2]。

英特尔公开发布的EFI规范以1.10版为终点[1]。2005年,统一EFI论坛作为行业组织成立,以EFI 1.10为基础接续开发,并把后续规范更名为统一EFI[1]。该论坛由多家硬件、软件与固件厂商共同参与,后来成员规模扩展到数百家企业[2][5]。

更名之后,规范版本继续按序迭代,2007年1月发布2.1版,2009年5月发布2.3版[2]。伴随规范推进,面向EFI与UEFI的开源开发套件EDK及EDK II陆续公开,成为模块开发者的参考实现[6]。

应用

EFI与UEFI规范主要落地在个人电脑与服务器的固件中。相关开发套件提供标准的构建与运行环境,供主板厂商与独立固件厂商在其中实现芯片组、存储与网络等驱动[6]。行业材料显示,基于UEFI的固件部署在2010年前后已覆盖相当比例的新出厂计算机[7]。

在能力层面,EFI环境提供了启动前程序的标准运行环境,可用于系统诊断、固件更新、数据备份恢复与系统还原等工具[8]。网络协议栈也被纳入其中,网络启动、IPv6 支持与基于 TCP 的存储引导等功能可在操作系统加载之前使用[9]。EFI还支持在进入操作系统之前访问USB设备,便于外设与维护工具的使用[8]。

局限

EFI及其后续规范并未把全部平台相关细节纳入统一抽象。与平台初始化相关的架构细节由平台初始化(PI)规范另行定义,处理器抽象层、系统抽象层等分层内容在部分体系结构中单独存在,例如安腾平台就分为处理器抽象层、系统抽象层与EFI 3个层次[10][5]。

兼容性方面存在实际约束。为兼容传统启动方式而设的兼容支持模块依赖x86处理器与PC/AT硬件环境,并继承了主引导记录分区表约2.2 TB的磁盘容量限制[6]。许多早期平台只在启动前阶段使用UEFI,操作系统实际仍由兼容模块引导,使外界容易低估该规范的普及程度[7]。

安全是另一项被反复提及的制约。有文献指出,EFI在弥补传统BIOS 局限的同时,自身的安全问题成为其进一步推广的障碍[8]。此外,在EFI平台的应用开发中,本地文件系统难以直接支持多种文件系统格式,需要额外设计驱动加以解决[10]。

参见

  • UEFI —— 在EFI 1.10基础上发展而来的接续规范,现由统一EFI论坛维护

  • BIOS —— EFI所替代的传统基本输入输出系统

  • 固件 —— 存放于主板芯片中、负责硬件初始化的底层软件

  • 安腾 —— 推动EFI规范诞生的64位处理器平台

  • GPT —— 常与EFI启动方式配合使用的磁盘分区表格式

参考资料

  1. Unified Extensible Firmware Interface [引用日期2026-10-29]
  2. [科普中国]-统一可扩展固件接口 - 版权归原作者所有,如有侵权,请联系我们 [引用日期2026-10-29]
  3. google.com 上的网页 [引用日期2026-10-29]
  4. UEFI [引用日期2026-10-29]
  5. VIII JORNADAS [引用日期2026-10-29]
  6. 2011-vol15-iss-1-intel-technology-journal(PDF) [引用日期2026-10-29]
  7. SF 2009 [引用日期2026-10-29]
  8. EFI驱动 [引用日期2026-10-29]
  9. IDF2010 [引用日期2026-10-29]
  10. 可扩展固件接口 [引用日期2026-10-29]
词条评价
词条统计

浏览次数:0 次

阅读量:0 次 · 阅读完成量:0 次

最近更新:2026-10-28T18:49:34Z

历史版本

本条目引用的词条
BIOS USB UEFI 固件 安腾 GPT