TianoCore EDK II
Tianocore EDK II is the reference implementation of UEFI by Intel. EDK is the abbreviation for EFI Development Kit and is developed by the TianoCore community.[1] TianoCore EDK II is the defacto standard generic UEFI services implementation.[2]
![]() TianoCore EDK II splash screen | |
Developer(s) | Intel |
---|---|
License | BSD-2-Clause-Patent |
Website | github![]() |
History
In 2004, Intel released their "Foundation Code" of their EFI implementation using a free license. This later evolved into EDK and EDK II, within the TianoCore community.[1] EDK II was released in 2010 under the package known as "UEFI Development Kit" (UDK2010).[3]
Although EDK II implements the UEFI specification, it is not endorsed by the UEFI forum.[1]
Projects

EDK II code has been integrated into other projects.
A part of TianoCore is the UEFI shell. When a specific UEFI vendor does not support an UEFI shell feature, the UEFI shell from TianoCore can be used.[4]
Project Mu
Microsoft has developed their own EDK-II build named Project Mu.[7] It is a fork of EDK II.[8]
Developer(s) | Microsoft |
---|---|
Initial release | March 5, 2002 |
Stable release | 1911_RC2
/ March 24, 2020 |
Repository | github |
Written in | C, C++ |
Type | Firmware |
License | BSD 2-Clause |
Website | microsoft |
Project Mu is an open source release of the UEFI core used in Microsoft Surface and Hyper-V products initiated by Microsoft in December 2018.[9] The project promotes the idea of Firmware as a Service.[10] The project's GitHub page describes the project as follows
Project Mu is a modular adaptation of TianoCore's edk2 tuned for building modern devices using a scalable, maintainable, and reusable pattern. Mu is built around the idea that shipping and maintaining a UEFI product is an ongoing collaboration between numerous partners. For too long the industry has built products using a "forking" model combined with copy/paste/rename and with each new product the maintenance burden grows to such a level that updates are near impossible due to cost and risk.[11]
The project was started to replace TianoCore's edk2 implementation to improve quality tests of the competing open source UEFI core.[12]
EFIDroid
EFIDroid is a bootloader for Android devices based on Snapdragon processors that is based on EDK-II.[13]
References
- "What is TianoCore?". www.tianocore.org. Retrieved 2021-03-26.
- Häuser, Marvin; Cheptsov, Vitaly (2020). "Securing the EDK II Image Loader". arXiv:2012.05471 [cs.CR].
- Barry, Peter (2012). Modern embedded computing : designing connected, pervasive, media-rich systems. Patrick Crowley. Amsterdam: Elsevier/Morgan Kaufmann. p. 173. ISBN 978-0-12-394407-8. OCLC 778434967.
- Babar, Yogesh (2020). Hands-on booting learn the boot process of Linux, Windows, and Unix. Berkeley, CA: Apress L. P. p. 119. ISBN 978-1-4842-5890-3. OCLC 1164505064.
- "Google Pushes "Project PIANO" Into Coreboot - Phoronix". www.phoronix.com. Retrieved 2021-03-26.
- "Coreboot Now Has Basic UEFI Support Working With TianoCore - Phoronix". www.phoronix.com. Retrieved 2021-03-26.
- "Microsoft releases Mu open-source UEFI firmware | bit-tech.net". Bit-tech. Retrieved 2021-03-26.
{{cite web}}
: CS1 maint: url-status (link) - "Microsoft Announces "Project Mu" For Open-Source UEFI Alternative To TianoCore - Phoronix". www.phoronix.com. Retrieved 2021-03-26.
- Microsoft Announces "Project Mu" For Open-Source UEFI Alternative To TianoCore - Phoronix
- "Microsoft announces Project Mu, an open-source release of the UEFI core".
- "Project Mu".
- "Microsoft announces Project Mu to promote Firmware as a Service".
- "EFIDroid: A Second-Stage Bootloader Using UEFI Firmware to Multiboot [XDA Spotlight]". xda-developers. 2017-03-06. Retrieved 2021-03-26.