TianoCore EDK II (anteriormente Tiano ) es la implementación de referencia de UEFI por parte de Intel . EDK es la abreviatura de EFI Development Kit y está desarrollado por la comunidad TianoCore. [1] TianoCore EDK II es la implementación de servicios UEFI genéricos estándar de facto . [2]
En 2004, Intel lanzó su "Código básico" de su implementación EFI utilizando una licencia gratuita . [1] El código resultante formó la base del proyecto EDK administrado por la comunidad en SourceForge, iniciado en 2004. El nombre "Tiano" estaba presente en el código inicial de Intel. [3] La última actualización del proyecto EDK (versión 1) se produjo en mayo de 2010. [4] La versión 2 está en desarrollo activo. [5] [ se necesita fuente no primaria ]
En abril de 2006 se importó un proyecto "edk2" a SourceForge, con una base de código orientada a paquetes escrita nuevamente por Intel. El "DeveloperManual" inicial se refería a este proyecto como "Tiano R9". [6] En 2008, una versión estable y validada de EDK II fue etiquetada como "UEFI Development Kit 2008" (UDK2008). La etiqueta incluye un BuildNotes.txt que data de noviembre de 2006 que describe el código encontrado en la importación inicial y un BuildNotes2.txt que describe los módulos agregados en mayo de 2008. [7] UDK2010 fue la primera versión de EDK II ampliamente conocida. [8] Intel continuaría validando ciertas instantáneas de EDK II como UDK hasta 2018, cuando EDK II pasó a un formato de "etiqueta estable". [9]
Aunque EDK II implementa la especificación UEFI, no cuenta con el respaldo del Foro UEFI . [1]
El código EDK II se ha integrado en otros proyectos.
Una parte de TianoCore es el shell UEFI. Cuando un proveedor UEFI específico no proporciona un shell UEFI, se puede utilizar el de TianoCore. [10]
Google utiliza una versión de coreboot modificada para iniciar Tiano. Esta característica se llama PIANO (carga útil en Tiano) o tianocoreboot. El código PIANO se fusionó con coreboot en 2013. [11] El código se actualizó para que sea compatible con EDK II en 2017. [12]
El código fuente de EDK2 incluye instrucciones para compilarlo como una carga útil para coreboot o el "cargador de arranque delgado" de Intel. [13]
Project Mu es una bifurcación de EDK-II de Microsoft . [14] [15] Es una versión de código abierto del núcleo UEFI utilizado en los productos Microsoft Surface y Hyper-V iniciados por Microsoft en diciembre de 2018. [16] El proyecto promueve la idea de firmware como servicio. [17] El proyecto se inició para reemplazar la implementación edk2 de TianoCore para mejorar las pruebas de calidad del núcleo UEFI de código abierto de la competencia. [18]
EFIDroid es un gestor de arranque para dispositivos Android basado en procesadores Snapdragon que se basa en EDK-II. [19]
En diciembre de 2023, se descubrió una vulnerabilidad denominada " LogoFAIL " asociada con EDK II que permitía a un atacante insertar su propio código en lugar de módulos de carga de mapas de bits con logotipos de arranque personalizados. [20]