Articulo de referencia

TianoCore EDK II

TianoCore EDK II (anteriormente Tiano ) es la implementación de referencia de UEFI de Intel . EDK es la abreviatura de EFI Development Kit y es desarrollado por la comunidad Tia...

TianoCore EDK II (anteriormente Tiano ) es la implementación de referencia de UEFI de Intel . EDK es la abreviatura de EFI Development Kit y es desarrollado por la comunidad TianoCore. [ 1 ] TianoCore EDK II es la implementación estándar de facto de los servicios UEFI genéricos. [ 2 ]

Historia

En 2004, Intel publicó su "Código Base" de su implementación EFI bajo una licencia gratuita . [ 1 ] El código resultante formó la base del proyecto EDK, gestionado por la comunidad en SourceForge , que comenzó 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) tuvo lugar en mayo de 2010. [ 4 ] La versión 2 se encuentra en desarrollo activo. [ 5 ]

Un proyecto "edk2" se importó a SourceForge en abril de 2006, con una base de código orientada a paquetes escrita nuevamente por Intel. El "Manual del desarrollador" inicial se refería a este proyecto como "Tiano R9". [ 6 ] En 2008, una versión estable y validada de EDK II se etiquetó 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 que se conoció ampliamente. [ 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 ]

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 los módulos de carga de mapa de bits del logotipo de arranque personalizados. [ 10 ]

Aunque EDK II implementa la especificación UEFI, no cuenta con el respaldo del Foro UEFI . [ 1 ]

Proyectos

UEFI shell 2.2, parte de TianoCore EDK II

El código de EDK II se ha integrado en otros proyectos.

Una parte de TianoCore es el intérprete de comandos UEFI. Cuando un proveedor UEFI específico no proporciona un intérprete de comandos UEFI, se puede utilizar el de TianoCore. [ 11 ]

Google utiliza una versión de coreboot modificada para ejecutar Tiano. Esta función se denomina PIANO (payload into Tiano) o tianocoreboot. El código de PIANO se integró en coreboot en 2013. [ 12 ] El código se actualizó para ser compatible con EDK II en 2017. [ 13 ]

El código fuente de EDK II incluye instrucciones para compilarlo como carga útil para coreboot o el "cargador de arranque delgado" de Intel. [ 14 ]

El proyecto Mu es una bifurcación de EDK II de Microsoft . [ 15 ] [ 16 ] Es una versión de código abierto del núcleo UEFI utilizado en los productos Microsoft Surface y Hyper-V, iniciada por Microsoft en diciembre de 2018. [ 17 ] El proyecto promueve la idea del firmware como un servicio. [ 18 ] El proyecto se inició para construir sobre la implementación de EDK II de TianoCore para mejorar la modularidad y aumentar la calidad de las pruebas al crear firmware UEFI. [ 19 ]

EFIDroid es un gestor de arranque para dispositivos Android basados ​​en procesadores Snapdragon que se basa en EDK II. [ 20 ]

Referencias

  1. 1 2 3 "¿Qué es TianoCore?" . www.tianocore.org . Consultado el 26 de marzo de 2021 .
  2. Häuser, Marvin; Cheptsov, Vitaly (2020). "Protección del cargador de imágenes EDK II". Conferencia Abierta Ivannikov Ispras (ISPRAS) 2020. págs. 16–25 . arXiv : 2012.05471 . doi : 10.1109/ISPRAS51486.2020.00010 . ISBN  978-1-6654-1291-9. S2CID 228084173 . 
  3. "tianocore/edk" . tianocore. 9 de marzo de 2023.
  4. "Commits · tianocore/edk" . GitHub .
  5. "Versiones · tianocore/edk2" . GitHub . Consultado el 23-02-2024 .
  6. "EDK II / Código / [ r29574 ] /tags/InitialImport" . sourceforge.net .
  7. "Proyecto EDK II" . tianocore. 18 de mayo de 2023.
  8. Barry, Peter (2012). Modern embedded computing : designing connected, pervasive, media-rich systems . Patrick Crowley. Ámsterdam: Elsevier/Morgan Kaufmann. pág. 173. ISBN   978-0-12-394407-8OCLC 778434967 
  9. "UDK" . documentación de tianocore (GitHub) .
  10. "Las consecuencias de gran alcance de LogoFAIL" . Binarly. 29 de noviembre de 2023.
  11. Babar, Yogesh (2020). Hands-on booting: aprenda el proceso de arranque de Linux, Windows y Unix . Berkeley, CA: Apress LP, pág. 119. ISBN  978-1-4842-5890-3OCLC 1164505064 .​ 
  12. "Google impulsa "Project PIANO" en Coreboot - Phoronix" . www.phoronix.com . Consultado el 26 de marzo de 2021 .
  13. "Coreboot ahora tiene soporte UEFI básico que funciona con TianoCore - Phoronix" . www.phoronix.com . Consultado el 26 de marzo de 2021 .
  14. "Proyecto EDK II: Instrucciones de compilación e integración.txt" . GitHub . tianocore. 18 de mayo de 2023.
  15. "Microsoft lanza el firmware UEFI de código abierto Mu | bit-tech.net" . Bit-tech . Consultado el 26 de marzo de 2021 .
  16. "Microsoft anuncia "Project Mu" como alternativa UEFI de código abierto a TianoCore - Phoronix" . www.phoronix.com . Consultado el 26 de marzo de 2021 .
  17. ^ Microsoft anuncia el "Proyecto Mu" para una alternativa UEFI de código abierto a TianoCore - Phoronix
  18. "Microsoft anuncia Project Mu, una versión de código abierto del núcleo UEFI" . 20 de diciembre de 2018.
  19. "Microsoft anuncia Project Mu para promover el firmware como servicio" . 16 de junio de 2023.
  20. "EFIDroid: Un gestor de arranque de segunda etapa que utiliza firmware UEFI para arranque múltiple [ XDA Spotlight ] " . xda-developers . 2017-03-06 . Consultado el 2021-03-26 .
  • Sitio web oficialEdita esto en Wikidata
  • EDK II en GitHub
  • Proyecto Mu BaseCore en GitHub