TianoCore EDK II (이전에는 Tiano)는 IntelUEFI 레퍼런스 구현이다. EDK는 EFI Development Kit 의 약어이며 TianoCore 커뮤니티에서 개발한다.[1] TianoCore EDK II는 사실상 표준 일반 UEFI 서비스의 구현이다.[2]

TianoCore EDK II
개발자Intel
라이선스BSD-2-Clause-Patent
웹사이트https://github.com/tianocore/edk2

역사 편집

2004년에 Intel은 무료 라이센스를 사용하여 EFI 구현의 "기초 코드"를 공개했다.[1] 그 코드는 2004년에 시작된 SourceForge에서 커뮤니티가 운영하는 EDK 프로젝트의 기초를 형성했다. 초기 인텔 코드에는 "Tiano"라는 이름이 있었다.[3] EDK 프로젝트의 마지막 업데이트는 2010년 5월에 이루어졌다.[4]

"edk2" 프로젝트는 2006년 4월에 SourceForge로 가져왔으며 Intel에서 다시 작성한 패키지 지향 코드 기반이 포함되어 있다. 초기 "DeveloperManual"에서는 이 프로젝트를 "Tiano R9"이라고 불렀다.[5] 2008년에는 EDK II의 안정적이고 검증된 버전이 "UEFI 개발 키트 2008"(UDK2008)이라는 태그가 지정되었다. 태그에는 초기 가져오기에서 발견된 코드를 설명하는 2006년 11월의 BuildNotes.txt와 2008년 5월에 추가된 모듈을 설명하는 BuildNotes2.txt가 포함되어 있다.[6] UDK2010은 널리 알려진 EDK II의 첫 번째 버전이었다.[7] 인텔은 EDK II가 "안정적인 태그" 형식으로 전환되는 2018년까지 EDK II의 특정 스냅샷을 UDK로 계속 검증할 것이다.[8]

EDK II는 UEFI 사양을 구현하지만 UEFI 포럼 에서는 이를 승인하지 않는다.

프로젝트 편집

 
UEFI 쉘 2.2, TianoCore EDK II의 일부

EDK II 코드는 다른 프로젝트에 통합되었다.

TianoCore의 일부는 UEFI 셸이다. 특정 UEFI 벤더가 UEFI 쉘을 제공하지 않는 경우 TianoCore의 UEFI 쉘을 사용할 수 있다.[9]

Coreboot 편집

Google은 Tiano를 실행하기 위해 수정된 coreboot 버전을 사용한다. 이 기능을 PIANO(Tiano로의 페이로드) 또는 tianocoreboot라고 한다. PIANO 코드는 2013년에 coreboot에 병합되었다.[10] 코드는 2017년에 EDK II와 호환되도록 업데이트되었다.[11]

EDK2 소스 코드에는 코어부트 또는 Intel의 "슬림 부트로더"용 페이로드로 빌드하기 위한 지침이 포함되어 있다.[12]

Project Mu 편집

Project Mu는 Microsoft의 EDK-II 포크이다.[13][14] 2018년 12월 Microsoft가 시작한 Microsoft SurfaceHyper-V 제품에 사용되는 UEFI 코어의 오픈 소스 릴리스이다.[15] 이 프로젝트는 서비스로서의 펌웨어(Firmware as a Service) 아이디어를 장려한다.[16] 이 프로젝트는 경쟁 오픈 소스 UEFI 코어의 품질 테스트를 개선하기 위해 TianoCore의 edk2 구현을 대체하기 위해 시작되었다.[17]

EFIDroid 편집

EFIDroid는 EDK-II 기반 Snapdragon 프로세서 기반 Android 장치용 부트로더이다.[18]

참고자료 편집

  1. “What is TianoCore?”. 《www.tianocore.org》. 2021년 3월 26일에 확인함. 
  2. Häuser, Marvin; Cheptsov, Vitaly (2020). 〈Securing the EDK II Image Loader〉. 《2020 Ivannikov Ispras Open Conference (ISPRAS)》. 16–25쪽. arXiv:2012.05471. doi:10.1109/ISPRAS51486.2020.00010. ISBN 978-1-6654-1291-9. 
  3. “tianocore/edk”. tianocore. 2023년 3월 9일. 
  4. “Commits · tianocore/edk”. 《GitHub》 (영어). 
  5. “EDK II / Code / [r29574] /tags/InitialImport”. 《sourceforge.net》. 
  6. “EDK II Project”. tianocore. 2023년 5월 18일. 
  7. Barry, Peter (2012). 《Modern embedded computing : designing connected, pervasive, media-rich systems》. Patrick Crowley. Amsterdam: Elsevier/Morgan Kaufmann. 173쪽. ISBN 978-0-12-394407-8. OCLC 778434967. 
  8. “UDK”. 《tianocore documentation (GitHub)》 (영어). 
  9. Babar, Yogesh (2020). 《Hands-on booting learn the boot process of Linux, Windows, and Unix》. Berkeley, CA: Apress L. P. 119쪽. ISBN 978-1-4842-5890-3. OCLC 1164505064. 
  10. “Google Pushes "Project PIANO" Into Coreboot - Phoronix”. 《www.phoronix.com》. 2021년 3월 26일에 확인함. 
  11. “Coreboot Now Has Basic UEFI Support Working With TianoCore - Phoronix”. 《www.phoronix.com》. 2021년 3월 26일에 확인함. 
  12. “EDK II Project: BuildAndIntegrationInstructions.txt”. 《GitHub》. tianocore. 2023년 5월 18일. 
  13. “Microsoft releases Mu open-source UEFI firmware | bit-tech.net”. 《Bit-tech》 (영어). 2021년 3월 26일에 확인함. 
  14. “Microsoft Announces "Project Mu" For Open-Source UEFI Alternative To TianoCore - Phoronix”. 《www.phoronix.com》. 2021년 3월 26일에 확인함. 
  15. Microsoft Announces "Project Mu" For Open-Source UEFI Alternative To TianoCore - Phoronix
  16. “Microsoft announces Project Mu, an open-source release of the UEFI core”. 2018년 12월 20일. 
  17. “Microsoft announces Project Mu to promote Firmware as a Service”. 2023년 6월 16일. 
  18. “EFIDroid: A Second-Stage Bootloader Using UEFI Firmware to Multiboot [XDA Spotlight]”. 《xda-developers》 (미국 영어). 2017년 3월 6일. 2021년 3월 26일에 확인함. 

외부 링크 편집