其實(shí)關(guān)于UEFI的幾篇文章很早就寫下了,只是自己讀了一遍感覺很不滿意,就決定重寫。目的是想用最簡單直白的語言把內(nèi)容寫出來,讓每個(gè)人都能輕松讀懂。當(dāng)然,如果你已經(jīng)對這些內(nèi)容有了很深的理解的話,這篇文章除了浪費(fèi)你的時(shí)間外恐怕是別無益處了,建議去UEFI官方網(wǎng)站下載UEFI規(guī)范文檔,那里詳細(xì)闡述了UEFI、GPT的每個(gè)技術(shù)細(xì)節(jié)。
其實(shí)UEFI、GPT都不是什么新鮮玩意了,只不過因?yàn)轭A(yù)裝Win8電腦指定采用了這一標(biāo)準(zhǔn)所以仿佛是在一夜之間關(guān)于UEFI啟動(dòng)Windows的文章就遍地開花了,很多人大概也是頭一次聽說世上還有這玩意。既然UEFI、GPT是“新”技術(shù),那么就必然有較舊技術(shù)(BIOS+MBR)更先進(jìn)、更NB的地方。到底NB在哪里呢?下面來簡單比較一下:
GPT及其優(yōu)勢
GPT和MBR是兩種不同的分區(qū)方案。目前在Windows下廣泛采用的磁盤分區(qū)方案仍然是MBR分區(qū)結(jié)構(gòu),但不容懷疑GPT是今后的趨勢。我們可將MBR磁盤分區(qū)結(jié)構(gòu)用下圖簡單表示(Windows下基本磁盤、4個(gè)主分區(qū)):
MBR分區(qū)結(jié)構(gòu)
為了方便計(jì)算機(jī)訪問硬盤,把硬盤上的空間劃分成許許多多的區(qū)塊(英文叫sectors,即扇區(qū)),然后給每個(gè)區(qū)塊分配一個(gè)地址,稱為邏輯塊地址(即LBA)。
在MBR磁盤的第一個(gè)扇區(qū)內(nèi)保存著啟動(dòng)代碼和硬盤分區(qū)表。啟動(dòng)代碼的作用是指引計(jì)算機(jī)從活動(dòng)分區(qū)引導(dǎo)啟動(dòng)操作系統(tǒng)(BIOS下啟動(dòng)操作系統(tǒng)的方式);分區(qū)表的作用是記錄硬盤的分區(qū)信息。在MBR中,分區(qū)表的大小是固定的,一共可容納4個(gè)主分區(qū)信息。在MBR分區(qū)表中邏輯塊地址采用32位二進(jìn)制數(shù)表示,因此一共可表示2^32(2的32次方)個(gè)邏輯塊地址。如果一個(gè)扇區(qū)大小為512字節(jié),那么硬盤最大分區(qū)容量僅為2TB。
GPT磁盤分區(qū)結(jié)構(gòu)可用下圖簡單表示(Windows下基本磁盤):
GPT分區(qū)結(jié)構(gòu)
可以看到,在GTP磁盤的第一個(gè)數(shù)據(jù)塊中同樣有一個(gè)與MBR(主引導(dǎo)記錄)類似的標(biāo)記,叫做PMBR。PMBR的作用是,當(dāng)使用不支持GPT的分區(qū)工具時(shí),整個(gè)硬盤將顯示為一個(gè)受保護(hù)的分區(qū),以防止分區(qū)表及硬盤數(shù)據(jù)遭到破壞。UEFI并不從PMBR中獲取GPT磁盤的分區(qū)信息,它有自己的分區(qū)表,即GPT分區(qū)表。
GPT的分區(qū)方案之所以比MBR更先進(jìn),是因?yàn)樵贕PT分區(qū)表頭中可自定義分區(qū)數(shù)量的最大值,也就是說GPT分區(qū)表的大小不是固定的。在Windows中,微軟設(shè)定GPT磁盤最大分區(qū)數(shù)量為128個(gè)。另外,GPT分區(qū)方案中邏輯塊地址(LBA)采用64位二進(jìn)制數(shù)表示,可以計(jì)算一下2^64是一個(gè)多么龐大的數(shù)據(jù),以我們的需求來講完全有理由認(rèn)為這個(gè)大小約等于無限。除此之外,GPT分區(qū)方案在硬盤的末端還有一個(gè)備份分區(qū)表,保證了分區(qū)信息不容易丟失。
Windows操作系統(tǒng)對GPT磁盤的支持
因?yàn)锽IOS無法識別GPT分區(qū),所以BIOS下GPT磁盤不能用于啟動(dòng)操作系統(tǒng),在操作系統(tǒng)提供支持的情況下可用于數(shù)據(jù)存儲。
UEFI可同時(shí)識別MBR分區(qū)和GPT分區(qū),因此UEFI下,MBR磁盤和GPT磁盤都可用于啟動(dòng)操作系統(tǒng)和數(shù)據(jù)存儲。不過微軟限制,UEFI下使用Windows安裝程序安裝操作系統(tǒng)是只能將系統(tǒng)安裝在GPT磁盤中。
下表列出了Windows各版本操作系統(tǒng)對GPT磁盤的支持程度:
32位Windows對GPT分區(qū)支持情況
64位Windows對GPT分區(qū)支持情況
UEFI及其優(yōu)勢
UEFI是BIOS的一種升級替代方案。關(guān)于BIOS和UEFI二者的比較,網(wǎng)絡(luò)上已經(jīng)有很多相關(guān)的文章,這里不再贅述,僅從系統(tǒng)啟動(dòng)原理方面來做比較。UEFI之所以比BIOS強(qiáng)大,是因?yàn)閁EFI本身已經(jīng)相當(dāng)于一個(gè)微型操作系統(tǒng),其帶來的便利之處在于:
首先,UEFI已具備文件系統(tǒng)的支持,它能夠直接讀取FAT分區(qū)中的文件;
什么是文件系統(tǒng)?簡單說,文件系統(tǒng)是操作系統(tǒng)組織管理文件的一種方法,直白點(diǎn)說就是把硬盤上的數(shù)據(jù)以文件的形式呈現(xiàn)給用戶。Fat32、NTFS都是常見的文件系統(tǒng)類型。
其次,可開發(fā)出直接在UEFI下運(yùn)行的應(yīng)用程序,這類程序文件通常以efi結(jié)尾。
既然UEFI可以直接識別FAT分區(qū)中的文件,又有可直接在其中運(yùn)行的應(yīng)用程序。那么完全可以將Windows安裝程序做成efi類型應(yīng)用程序,然后把它放到任意fat分區(qū)中直接運(yùn)行即可,如此一來安裝Windows操作系統(tǒng)這件過去看上去稍微有點(diǎn)復(fù)雜的事情突然就變非常簡單了,就像在Windows下打開QQ一樣簡單。而事實(shí)上,也就是這么一回事。
要知道,這些都是BIOS做不到的。因?yàn)锽IOS下啟動(dòng)操作系統(tǒng)之前,必須從硬盤上指定扇區(qū)讀取系統(tǒng)啟動(dòng)代碼(包含在主引導(dǎo)記錄中),然后從活動(dòng)分區(qū)中引導(dǎo)啟動(dòng)操作系統(tǒng)。對扇區(qū)的操作遠(yuǎn)比不上對分區(qū)中文件的操作更直觀更簡單,所以在BIOS下引導(dǎo)安裝Windows操作系統(tǒng),我們不得不使用一些工具對設(shè)備進(jìn)行配置以達(dá)到啟動(dòng)要求。而在UEFI下,這些統(tǒng)統(tǒng)都不需要,不再需要主引導(dǎo)記錄,不再需要活動(dòng)分區(qū),不需要任何工具,只要復(fù)制安裝文件到一個(gè)FAT32(主)分區(qū)/U盤中,然后從這個(gè)分區(qū)/U盤啟動(dòng),安裝Windows就是這么簡單。后面會有專門的文章來詳細(xì)介紹UEFI下安裝Windows7、8的方法。
=======================
文章匆忙改就,如有錯(cuò)誤之處望指出。
預(yù)裝Win8電腦重裝系統(tǒng)及UEFI+GPT安裝Windows7/8相關(guān)教程:
《
預(yù)裝64位Win8/8.1電腦安裝64位Win7詳細(xì)過程(單/雙系統(tǒng))》
《
預(yù)裝Win8中文版電腦系統(tǒng)升級方法指導(dǎo)》
《
用于引導(dǎo)Windows的GPT磁盤(預(yù)裝Win8電腦)各分區(qū)作用詳解》
《
預(yù)裝Win8電腦重裝系統(tǒng)實(shí)現(xiàn)自動(dòng)激活的幾個(gè)注意事項(xiàng)》
《
UEFI+GPT引導(dǎo)基礎(chǔ)篇(一):什么是GPT,什么是UEFI?》
《
UEFI+GPT引導(dǎo)實(shí)踐篇(一):切換到UEFI啟動(dòng),準(zhǔn)備安裝介質(zhì)》
《
UEFI+GPT引導(dǎo)實(shí)踐篇(二):UEFI引導(dǎo)安裝64位Win7/Win8》