藍(lán)色
在英特爾發(fā)布Sandy Bridge架構(gòu)處理器后,傳統(tǒng)BIOS也終于走到了和我們說(shuō)再見(jiàn)的時(shí)候,采用圖形化界面的EFI以及UEFI很快就取代了傳統(tǒng)BIOS成為了眾多主板的標(biāo)準(zhǔn)配置。
對(duì)于DIY玩家來(lái)說(shuō),傳統(tǒng)的藍(lán)底BIOS界面可以說(shuō)是再熟悉不過(guò)了,它陪伴著很多電腦愛(ài)好者共同成長(zhǎng)。不過(guò),在英特爾發(fā)布Sandy Bridge架構(gòu)處理器后,傳統(tǒng)BIOS也終于走到了和我們說(shuō)再見(jiàn)的時(shí)候,采用圖形化界面的EFI以及UEFI很快就取代了傳統(tǒng)BIOS成為了眾多主板的標(biāo)準(zhǔn)配置,這一次,我們就一起來(lái)詳細(xì)了解一下這個(gè)顛覆傳統(tǒng)的EFI以及UEFI。
什么是EFI和UEFI?
EFI是Extensible Firmware Interface(可擴(kuò)展固件接口)的縮寫,是由英特爾倡導(dǎo)推出的一種在類PC系統(tǒng)中替代BIOS的升級(jí)方案。與傳統(tǒng)BIOS相比,EFI通過(guò)模塊化、C語(yǔ)言的參數(shù)堆棧傳遞方式和動(dòng)態(tài)鏈接的形式構(gòu)建系統(tǒng),較BIOS而言更易于實(shí)現(xiàn),同時(shí)容錯(cuò)和糾錯(cuò)特性更強(qiáng)。
UEFI則是Unified Extensible Firmware Interface(統(tǒng)一可擴(kuò)展固件接口),它是基于EFI 1.10標(biāo)準(zhǔn)而發(fā)展起來(lái)的。不過(guò),UEFI的所有者并不是英特爾,而是一個(gè)名為Unified EFI Form的國(guó)際組織。UEFI是一種詳細(xì)描述類型接口的標(biāo)準(zhǔn),可以讓PC從預(yù)啟動(dòng)的操作環(huán)境,加載到操作系統(tǒng)上。
需要注意的是,雖然EFI與UEFI的叫法不同,但兩者在本質(zhì)上是基本相同的。自2000年12月12日正式發(fā)布EFI 1.02標(biāo)準(zhǔn)后,EFI一直是作為替代傳統(tǒng)BIOS的先進(jìn)標(biāo)準(zhǔn)而存在,擁有權(quán)在英特爾手中,而在2007年開(kāi)始,英特爾將EFI標(biāo)準(zhǔn)的改進(jìn)與完善工作交給Unified EFI Form進(jìn)行全權(quán)負(fù)責(zé),隨后登場(chǎng)的EFI標(biāo)準(zhǔn)則正式更名為UEFI,以示區(qū)別。
因此,UEFI是EFI的改良和發(fā)展。實(shí)際上,前者相比后者在UGA協(xié)議、SCSI傳輸、USB控制,還有I/O設(shè)備方面都做出了很多改進(jìn)。另外,UEFI還添加了網(wǎng)絡(luò)應(yīng)用程序接口、X64綁定、服務(wù)綁定等新內(nèi)容。值得一提的是,參與UEFI標(biāo)準(zhǔn)開(kāi)發(fā)的并不僅僅是英特爾一家,而是包括了AMD、蘋果、戴爾、惠普、IBM、聯(lián)想、微軟等多個(gè)IT業(yè)龍頭企業(yè),因此UEFI在兼容性上自然有更好的表現(xiàn),且通用性也更強(qiáng)。
UEFI相比傳統(tǒng)BIOS的區(qū)別和優(yōu)點(diǎn)在哪里?
與傳統(tǒng)BIOS相比,UEFI對(duì)于新硬件的支持遠(yuǎn)超對(duì)方,其中最能體現(xiàn)這一點(diǎn)的就是我們可以在UEFI下使用2.2TB以上的硬盤作為啟動(dòng)盤,而在傳統(tǒng)BIOS模式下,這種大容量硬盤如不借助第三方軟件則只能當(dāng)作數(shù)據(jù)盤使用。
另外,UEFI還內(nèi)置了圖形驅(qū)動(dòng)功能,可以提供一個(gè)高分辨率的圖形化界面,用戶進(jìn)入后完全可以像在Windows系統(tǒng)下那樣使用鼠標(biāo)進(jìn)行設(shè)置和調(diào)整,操作上更為簡(jiǎn)單快捷。同時(shí)由于UEFI使用的是模塊化設(shè)計(jì),在邏輯上可分為硬件控制與軟件管理兩部分,前者屬于標(biāo)準(zhǔn)化的通用設(shè)置,而后者則是可編程的開(kāi)放接口,因此主板廠商可以借助后者的開(kāi)放接口在自家產(chǎn)品上實(shí)現(xiàn)各種豐富的功能,包括截圖、數(shù)據(jù)備份、硬件故障診斷、脫離操作系統(tǒng)進(jìn)行UEFI在線升級(jí)等,功能也要比傳統(tǒng)BIOS更多、更強(qiáng)。
當(dāng)然,UEFI相比傳統(tǒng)BIOS的優(yōu)勢(shì)并不僅僅是以上幾點(diǎn),實(shí)際上它還包括有如下特點(diǎn):
- 編碼99%都是由C語(yǔ)言完成;
- 不再使用中斷、硬件端口操作的方法,而采用了Driver/Protocol的方式;
- 將不支持X86實(shí)模式,而直接采用Flat mode;
- 不再輸出單純的二進(jìn)制代碼,改為Removable Binary Drivers模式;
- 操作系統(tǒng)的啟動(dòng)不再是調(diào)用INT 19H中斷,而是直接利用Protocol/Device Path實(shí)現(xiàn);
- 更方便第三方開(kāi)發(fā);
不過(guò),這些特點(diǎn)對(duì)于普通用戶來(lái)說(shuō)并沒(méi)有太大的實(shí)際意義,它們更多地是面向開(kāi)發(fā)者,因此相關(guān)的內(nèi)容這次就不展開(kāi)敘述了。
UEFI主要由那幾部分組成?
那么,我們現(xiàn)在就稍微再深入一點(diǎn),看看UEFI的主要構(gòu)成部分。UEFI主要由初始化模塊、驅(qū)動(dòng)執(zhí)行環(huán)境、驅(qū)動(dòng)程序、兼容性支持模塊、UEFI應(yīng)用和GUID磁盤分區(qū)組成。其中,初始化模塊和驅(qū)動(dòng)執(zhí)行環(huán)境是UEFI的運(yùn)行基礎(chǔ),通常被整合在主板的閃存芯片中,這點(diǎn)與傳統(tǒng)BIOS是比較類似的。開(kāi)機(jī)的時(shí)候初始化模塊首先得到執(zhí)行,負(fù)責(zé)CPU、主板芯片及存儲(chǔ)設(shè)備的初始化工作,完成后再載入驅(qū)動(dòng)執(zhí)行環(huán)境,即Driver Execution Environment,簡(jiǎn)稱DXE。
DXE完成載入后,UEFI就可以進(jìn)一步加載硬件的UEFI驅(qū)動(dòng)程序,DXE通過(guò)枚舉的方式加載各種總線及設(shè)備的驅(qū)動(dòng),而這些驅(qū)動(dòng)程序則可以放置在系統(tǒng)的任意位置,只要確保其可以按順序被正確枚舉即可。硬件的UEFI驅(qū)動(dòng)一般是放置在硬盤的UEFI專用分區(qū)中,只需要系統(tǒng)正確加載這個(gè)硬盤,對(duì)應(yīng)的驅(qū)動(dòng)就可以正常讀取并應(yīng)用。
因此在DXE的支持下,如果用戶給PC添加新的硬件,只要有對(duì)應(yīng)的UEFI驅(qū)動(dòng),那么UEFI也可以輕松提供支持, 這一點(diǎn)是幾乎沒(méi)有擴(kuò)展能力的傳統(tǒng)BIOS所無(wú)法企及的,也正是因?yàn)檫@個(gè)能力,UEFI可以輕松支持各種網(wǎng)絡(luò)設(shè)備并聯(lián)網(wǎng),藉此實(shí)現(xiàn)無(wú)需進(jìn)入系統(tǒng)即可進(jìn)行在線升級(jí)UEFI的功能。
兼容性支持模塊則是為了讓不具備UEFI引導(dǎo)功能的操作系統(tǒng)也能在UEFI環(huán)境下順利完成引導(dǎo)開(kāi)機(jī),這個(gè)兼容性支持模塊將為UEFI提供類似于傳統(tǒng)BIOS的系統(tǒng)服務(wù),以此來(lái)保證UEFI在技術(shù)上能有良好的過(guò)渡。而GUID磁盤分區(qū)則是在UEFI標(biāo)準(zhǔn)中引入的磁盤分區(qū)結(jié)構(gòu),與傳統(tǒng)MBR分區(qū)相比,GUID磁盤分區(qū)突破了前者只允許4個(gè)主分區(qū)的限制,分區(qū)類型也改為了我們常說(shuō)的GPT分區(qū)。
UEFI有什么缺點(diǎn)嗎?
雖然現(xiàn)在UEFI已經(jīng)基本取代了傳統(tǒng)的BIOS,但是它并不是只有優(yōu)點(diǎn)而沒(méi)有缺點(diǎn)。UEFI相比傳統(tǒng)BIOS在硬件兼容性上有很大的提升,但是就自身的安全性來(lái)說(shuō),它相比傳統(tǒng)BIOS可能還有所不如。首先,UEFI的主程序和代碼都整合在主板上的閃存芯片中,如果該芯片出現(xiàn)了故障,那么電腦就無(wú)法正常啟動(dòng),這點(diǎn)與傳統(tǒng)BIOS是基本相同的。
其次,由于UEFI程序是采用高級(jí)語(yǔ)言編寫的,與使用匯編語(yǔ)言編寫傳統(tǒng)BIOS相比要更容易受到病毒的攻擊,程序代碼也更容易被改寫,因此,目前UEFI雖然已經(jīng)被廣泛使用,但是在安全性和穩(wěn)定性上仍然有提升的空間。□