Interfase Extensible de Firmware Unificado


La interfaz de firmware extensible unificada ( UEFI ) [1] es una especificación disponible públicamente que define una interfaz de software entre un sistema operativo y el firmware de la plataforma . UEFI reemplaza la interfaz de firmware del sistema básico de entrada/salida ( BIOS ) heredado originalmente presente en todas las computadoras personales compatibles con PC de IBM , [2] [3] y la mayoría de las implementaciones de firmware de UEFI brindan soporte para los servicios de BIOS heredados. UEFI puede admitir diagnósticos remotos y reparación de computadoras, incluso sin un sistema operativo instalado. [4]

Intel desarrolló las especificaciones originales de la interfaz de firmware extensible ( EFI ). Algunas de las prácticas y formatos de datos de EFI son similares a los de Microsoft Windows . [5] [6] En 2005, UEFI desaprobó EFI 1.10 (la versión final de EFI). El Unified EFI Forum es el organismo de la industria que gestiona las especificaciones UEFI en todo momento.

La motivación original para EFI surgió durante el desarrollo inicial de los primeros sistemas Intel-HP Itanium a mediados de la década de 1990. Las limitaciones de la BIOS (como el modo real de 16 bits , 1 MB de espacio de memoria direccionable, [7] programación en lenguaje ensamblador y hardware PC AT ) se habían vuelto demasiado restrictivas para las plataformas de servidor más grandes a las que se dirigía Itanium. [8] El esfuerzo por abordar estas inquietudes comenzó en 1998 e inicialmente se llamó Intel Boot Initiative . [9] Más tarde se le cambió el nombre a Interfaz de firmware extensible (EFI). [10] [11]

En julio de 2005, Intel cesó el desarrollo de la especificación EFI en la versión 1.10 y la contribuyó al Unified EFI Forum , que desarrolló la especificación como Interfaz de firmware extensible unificada (UEFI). La especificación EFI original sigue siendo propiedad de Intel, que proporciona licencias exclusivamente para productos basados ​​en EFI, pero la especificación UEFI es propiedad del Foro UEFI. [8] [12]

La versión 2.0 de la especificación UEFI se lanzó el 31 de enero de 2006. Agregó criptografía y seguridad. La versión 2.1 de la especificación UEFI se lanzó el 7 de enero de 2007. Agregó autenticación de red y arquitectura de interfaz de usuario ("Infraestructura de interfaz humana" en UEFI).

Intel lanzó la primera implementación UEFI de código abierto , Tiano, en 2004. Desde entonces, Tiano ha sido reemplazado por EDK [14] y EDK2 [15] y ahora es mantenido por la comunidad TianoCore. [dieciséis]


Posición de EFI en la pila de software
Ejemplo de variables UEFI
Interacción entre el administrador de arranque EFI y los controladores EFI
Proceso de arranque
Ejemplo de un arranque seguro activo detectado por el administrador de arranque rEFInd
Ejemplo de una sesión UEFI shell 2.2
InsydeH2O, una implementación UEFI
Ejemplos de claves públicas de arranque seguro personalizadas
MokManager, una parte del cargador de arranque Shim