光陰似箭，歲月如梭! 在EDK推出好幾年後，緊接著BIOS界中的另一個大事情就是又來了一個EDKII。
而其他的部分你就要去習慣新的Build tool的語法以及用法了。
演算法)以及非對稱式加密函數(DSA/RSA 演算法)。
這一章是用來說明如何去Build 你的EFI Tool Kit或是EDK，經由一步一步的帶領之下可以讓你很快的擁有一個EFI 開發環境。
為了使用VS2005，所以我就必須去修改這個檔案。
接著切換目錄到你的EFI Tool Kit目錄，然後先執行Build.cmd設定環境後，就可以使用nmake 開始編譯你的環境。
編譯的結果會產生在 bin 跟output 這兩個目錄內：
所以你可以在這些目錄內找到你要的執行檔。
然後就會看到下圖：
X64 platform build的方式如同DUEF，而且內含有X64 EFI Shell可以讓你在X64 platform使用。
DUET/X64 platform不支援nmake run的模擬環境，所以你沒辦法在你的工作機上運行。
有感於當初學習EFI的時候是直接經由BIOS vendor: "I公司"的網路上的訓練課程以及他們派了一組人來幫我們上了一星期Bring up之後，就直接在客戶的案子上邊做邊學，所以很多EFI基本的基礎都沒有學好!因此，最近想化整為零把EFI 重頭學習一遍! 那EFI 入門該學些甚麼呢?! 個人覺得，工欲善其事必先利其器! 所以先去抓一套可以編譯工具以及一套EDK或是 EFI Tool kits 來學習是最簡單的方式! 所以我們的學習目標就是了解甚麼是EFI/UEFI ，然後再告訴你如何去找到你需要的資料以及建構出一個可以撰寫EFI code的環境。
最初EFI發展動機是為了在1990年中的Intel-HP Itanium 系統，當時的PC BIOS有一個限制(支援16 bit 的處理器模式，1MB 位址空間與AT 硬體架構)，而這個限制使的他無法支援大型伺服器平台的系統Intel-HP Itanium。 最初的時候Intel 只是為了解決這些BIOS啟動時的限制，後來就乾脆改變它的名稱，且稱之為EFI。
Intel 在其平台上為了EFI去建立了一個新框架(Framework)，而這個框架的最初代號叫做Tiano，這個框架非常的完整，它包含了EFI對原本傳統韌體的所有支援，他也可以透過所謂的compatibility support module(CSM)來支援傳統的PC BIOS，簡單說就是傳統BIOS能做的EFI也能做，但是不是完整支援就要看CSM支援的程度。
特別是，這個框架包含了在Power- On後，所有必要的初始化步驟去初始化一個平台(Platform);但是這些步驟的運作並沒有被定義在EFI specification內，而是被定義在 Platform Initialization Specification(簡稱PI Spec)內的章節。 Intel 並沒有將這個架構完整的開放給一般的End-User知道，他只有開放這些資訊給一些獨立的BIOS 廠商(稱之為IBV)，像是安邁 (American Megatrends ，AMI) 或是系微(Insyde Software)、鳳凰科技(Phoenix) …等的BIOS韌體供應商。
而在TianoCore project(也就是所謂的EFI Developer Kit ，EDK)的Open source之中，會提到如何去開發這個Framework。這個開發工具中含括了EFI的一些硬體初始化的程式碼(只針對一些硬體，但並不包含韌體本身) ，至於這些程式碼的授權包含BSD license 和 Eclipse Public License…等。
而Tiano是為了取代BIOS的一種框架，所以透過EFI可以讓PC的設備自己撰寫一個驅動程式來管理這個設備。而對於開放原始碼來說，這也代表大家可以從TianoCore.org 下載這個專案，然後以BSD（Berkley Software Distribution）的授權方式來生產你的產品。BSD的授權，你自己去修改它的軟體並且發展出屬於你自己的產品，但BSD並不會去要求你把修改的地方公開出來，而這種方法會有助於你去保護你的智慧財產權。
歷史故事簡略介紹完了，廢話不多說我們就馬上進入EFI 世界中，告訴你一個EFI的環境需要哪些工具來編譯、去哪裡下載EFI 工具包、如何建構你的編譯環境。
目前EFI 相關資訊比較完整的地方就是這個網站，裡面你可以下載到你需要的EFI Tool kit/EDK ，並且有一些相關的文件可以幫助你開始你的EFI之旅。
接下來我們就開始看看這些不同的專案有哪些是可以幫助我們入門，首先要介紹的是 EFI 工具組(EFI Tool Kits)，他是一個可以支援快速開發EFI 應用程式的一個環境，讓你可以快速的開發32 bit/64bit 的EFI應用程式。
這些應用程式包含 : EFI based applications, protocols, device drivers, EFI shells 以及不同平台的 OS loaders (IA-32, IA-64(IPF) and Intel 64(EM64T or X64) platforms)，你可以透過他的Source Repository下載。
EDK指的是Open-source的一個EFI “Framwork”元件，英特爾依照EFI規範所實做出來的一套Code，當時的開發的代號為“Tiano”。
EDK的基本上是一個範例元件，裡面有為框架的基礎程式碼(Framework's Foundation code)和驅動程序範例(Sample Driver)。
EDK也是一個開發工具包，可以用來Debugging/Testing EFI 的Framework's driver。