TianoCore EDK II

From Wikipedia, the free encyclopedia
  (Redirected from Project Mu)
Jump to navigation Jump to search

Tianocore EDK II is the UEFI reference implementation 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]


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]


EDK II code has been integrated into other projects.


In 2013, project PIANO was merged into Coreboot.[4] It gained EDK II support in 2017.[5]

Project Mu[edit]

Microsoft has developed their own EDK-II build named Project Mu.[6] It is a fork of EDK II.[7]

Project Mu
Initial releaseMarch 5, 2002; 19 years ago (2002-03-05)
Stable release
1911_RC2 / March 24, 2020; 12 months ago (2020-03-24)
Written inC, C++
LicenseBSD 2-Clause

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.[8] The project promotes the idea of Firmware as a Service.[9] 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.[10]

The project was started to replace TianoCore's edk2 implementation to improve quality tests of the competing open source UEFI core.[11]


EFIDroid is a bootloader for Android devices based on Snapdragon processors that is based on EDK-II.[12]


  1. ^ a b c "What is TianoCore?". www.tianocore.org. Retrieved 2021-03-26.
  2. ^ Häuser, Marvin; Cheptsov, Vitaly (2020). "Securing the EDK II Image Loader". arXiv:2012.05471 [cs.CR].
  3. ^ 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.
  4. ^ "Google Pushes "Project PIANO" Into Coreboot - Phoronix". www.phoronix.com. Retrieved 2021-03-26.
  5. ^ "Coreboot Now Has Basic UEFI Support Working With TianoCore - Phoronix". www.phoronix.com. Retrieved 2021-03-26.
  6. ^ "Microsoft releases Mu open-source UEFI firmware | bit-tech.net". Bit-tech. Retrieved 2021-03-26.
  7. ^ "Microsoft Announces "Project Mu" For Open-Source UEFI Alternative To TianoCore - Phoronix". www.phoronix.com. Retrieved 2021-03-26.
  8. ^ Microsoft Announces "Project Mu" For Open-Source UEFI Alternative To TianoCore - Phoronix
  9. ^ "Microsoft announces Project Mu, an open-source release of the UEFI core".
  10. ^ "Project Mu".
  11. ^ "Microsoft announces Project Mu to promote Firmware as a Service".
  12. ^ "EFIDroid: A Second-Stage Bootloader Using UEFI Firmware to Multiboot [XDA Spotlight]". xda-developers. 2017-03-06. Retrieved 2021-03-26.

External links[edit]