EFI、UEFI主板BIOS和MBR、GPT硬盤(pán)分區(qū)技術(shù)詳解_第1頁(yè)
EFI、UEFI主板BIOS和MBR、GPT硬盤(pán)分區(qū)技術(shù)詳解_第2頁(yè)
EFI、UEFI主板BIOS和MBR、GPT硬盤(pán)分區(qū)技術(shù)詳解_第3頁(yè)
EFI、UEFI主板BIOS和MBR、GPT硬盤(pán)分區(qū)技術(shù)詳解_第4頁(yè)
EFI、UEFI主板BIOS和MBR、GPT硬盤(pán)分區(qū)技術(shù)詳解_第5頁(yè)
已閱讀5頁(yè),還剩4頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、EFI、UEFI主板BIOS和MBR、GPT硬盤(pán)分區(qū)技術(shù)詳解一、EFI (可擴(kuò)展固件接口,英文名 Extensible Firmware Interface 或 EFI)由英特爾,一個(gè)主導(dǎo)個(gè)人電腦技術(shù)研發(fā)的公司推出的一種在未來(lái)的類(lèi)PC的電腦系統(tǒng)中 替代BIOS的升級(jí)方案。BIOS技術(shù)的興起源于IBM PC/AT機(jī)器的流行以及第一臺(tái)由康柏公司 研制生產(chǎn)的“克隆” PC。在PC啟動(dòng)的過(guò)程中,BIOS擔(dān)負(fù)著初始化硬件,檢測(cè)硬件功能,以 及引導(dǎo)操作系統(tǒng)的責(zé)任,在早期,BIOS還提供一套運(yùn)行時(shí)的服務(wù)程序給操作系統(tǒng)及應(yīng)用程 序使用。BIOS程序存放于一個(gè)掉電后內(nèi)容不會(huì)丟失的只讀存儲(chǔ)器中,系統(tǒng)加電時(shí)處理器的

2、 第一條指令的地址會(huì)被定位到BIOS的存儲(chǔ)器中,便于使初始化程序得到執(zhí)行。EFI的產(chǎn)生眾所周知L英特爾在近二十年來(lái)引領(lǐng)以x86系列處理器為基礎(chǔ)的PC技術(shù)潮流,它的產(chǎn) 品如CPU,芯片組等在PC生產(chǎn)線(xiàn)中占據(jù)絕對(duì)領(lǐng)導(dǎo)的位置。因此,不少人認(rèn)為這一舉動(dòng)顯示 了英特爾公司欲染指固件產(chǎn)品市場(chǎng)的野心。事實(shí)上,EFI技術(shù)源于英特爾安腌處理器 (Itanium)平臺(tái)的推出。安騰處理器是英特爾瞄準(zhǔn)服務(wù)器高端市場(chǎng)投入近十年研發(fā)力量設(shè)計(jì) 產(chǎn)生的與x86系列完全不同的64位新架構(gòu)。在x86系列處理器進(jìn)入32位的時(shí)代,由于兼容 性的原因,新的處理器(i80386)保留了 16位的運(yùn)行方式(實(shí)模式),此后多次處理器的升級(jí)

3、換代都保留了這種運(yùn)行方式。甚至在含64位擴(kuò)展技術(shù)的至強(qiáng)系列處理器中,處理器加電啟 動(dòng)時(shí)仍然會(huì)切換到16位的實(shí)模式下運(yùn)行。英特爾將這種情況歸咎于BIOS技術(shù)的發(fā)展緩慢。 自從PC兼容機(jī)廠(chǎng)商通過(guò)凈室的方式復(fù)制出第一套BIOS源程序,BIOS就以16位匯編代碼, 寄存器參數(shù)調(diào)用方式,靜態(tài)鏈接,以及1MB以下內(nèi)存固定編址的形式存在了十幾年。雖然由 于各大BIOS廠(chǎng)商近年來(lái)的努力,有許多新元素添加到產(chǎn)品中,如PnPBIOS, ACPI,傳統(tǒng)USB 設(shè)備支持等等,但BIOS的根本性質(zhì)沒(méi)有得到任何改變。這迫使英特爾在開(kāi)發(fā)更新的處理器 時(shí),都必須考慮加進(jìn)使效能大大降低的兼容模式。有人曾打了一個(gè)比喻:這就像保時(shí)

4、捷新一 代的全自動(dòng)檔跑車(chē)被人生套上去一個(gè)蹩腳的掛檔器。然而,安騰處理器并沒(méi)有這樣的顧慮,它是一個(gè)新生的處理器架構(gòu),系統(tǒng)固件和操作系 統(tǒng)之間的接口都可以完全重新定義。并且這一次,英特爾將其定義為一個(gè)可擴(kuò)展的,標(biāo)準(zhǔn)化 的固件接口規(guī)范,不同于傳統(tǒng)BIOS的固定的,缺乏文檔的,完全基于經(jīng)驗(yàn)和晦澀約定的一 個(gè)事實(shí)標(biāo)準(zhǔn)?;贓FI的第一套系統(tǒng)產(chǎn)品的出現(xiàn)至今已經(jīng)有五年的時(shí)間,如今,英特爾試圖 將成功運(yùn)用在高端服務(wù)器上的技術(shù)推廣到市場(chǎng)占有率更有優(yōu)勢(shì)的PC產(chǎn)品線(xiàn)中,并承諾在 2006年間會(huì)投入全力的技術(shù)支持。比較EFI和BIOS一個(gè)顯著的區(qū)別就是EFI是用模塊化,C語(yǔ)言風(fēng)格的參數(shù)堆棧傳遞方式,動(dòng)態(tài)鏈接的形 式構(gòu)

5、建的系統(tǒng),較BIOS而言更易于實(shí)現(xiàn),容錯(cuò)和糾錯(cuò)特性更強(qiáng),縮短了系統(tǒng)研發(fā)的時(shí)間。 它運(yùn)行于32位或64位模式,乃至未來(lái)增強(qiáng)的處理器模式下,突破傳統(tǒng)16位代碼的尋址能 力,達(dá)到處理器的最大尋址。它利用加載EFI驅(qū)動(dòng)的形式,識(shí)別及操作硬件,不同于BIOS 利用掛載實(shí)模式中斷的方式增加硬件功能。后者必須將一段類(lèi)似于驅(qū)動(dòng)的16位代碼,放置 在固定的OxOOOCOOOO至OxOOODFFFF之間存儲(chǔ)區(qū)中,運(yùn)行這段代碼的初始化部分,它將掛 載實(shí)模式下約定的中斷向量向其他程序提供服務(wù)。例如,VGA圖形及文本輸出中斷(INT 10h),磁盤(pán)存取中斷服務(wù)(INT 13h)等等。由于這段存儲(chǔ)空間有限(128KB),

6、 BIOS對(duì)于所需 放置的驅(qū)動(dòng)代碼大小超過(guò)空間大小的情況無(wú)能為力。另外,BIOS的硬件服務(wù)程序都已16 位代碼的形式存在,這就給運(yùn)行于增強(qiáng)模式的操作系統(tǒng)訪(fǎng)問(wèn)其服務(wù)造成了困難.因此BIOS 提供的服務(wù)在現(xiàn)實(shí)中只能提供給操作系統(tǒng)引導(dǎo)程序或MS-DOS類(lèi)操作系統(tǒng)使用。而EFI系統(tǒng) 下的驅(qū)動(dòng)并不是由可以直接運(yùn)行在CPU上的代碼組成的,而是用EFI Byte Code編寫(xiě)而成的。 這是一組專(zhuān)用于EFI驅(qū)動(dòng)的虛擬機(jī)器指令,必須在EFI驅(qū)動(dòng)運(yùn)行環(huán)境(Driver Execution Environment,或DXE)下被解釋運(yùn)行。這就保證了充分的向下兼容性,打個(gè)比方說(shuō),一個(gè)帶 有EFI驅(qū)動(dòng)的擴(kuò)展設(shè)備,既可以

7、將其安裝在安腌處理器的系統(tǒng)中,也可以安裝于支持EFI 的新PC系統(tǒng)中,而它的EFI驅(qū)動(dòng)不需要重新編寫(xiě)。這樣就無(wú)需對(duì)系統(tǒng)升級(jí)帶來(lái)的兼容性因 素作任何考慮。另外,由于EFI驅(qū)動(dòng)開(kāi)發(fā)簡(jiǎn)單,所有的PC部件提供商都可以參與,情形非 常類(lèi)似于現(xiàn)代操作系統(tǒng)的開(kāi)發(fā)模式,這個(gè)開(kāi)發(fā)模式曾使Windows在短短的兩三年時(shí)間內(nèi)成為 功能強(qiáng)大,性能優(yōu)越的操作系統(tǒng)?;贓FI的驅(qū)動(dòng)模型可以使EFI系統(tǒng)接觸到所有的硬件功 能,在操作操作系統(tǒng)運(yùn)行以前瀏覽萬(wàn)維網(wǎng)站不再是天方夜譚,甚至實(shí)現(xiàn)起來(lái)也非常簡(jiǎn)單。這 對(duì)基于傳統(tǒng)BIOS的系統(tǒng)來(lái)說(shuō)是件不可能的任務(wù),在BIOS中添加幾個(gè)簡(jiǎn)單的USB設(shè)備支持都 曾使很多BIOS設(shè)計(jì)師痛苦萬(wàn)分,

8、更何況除了添加對(duì)無(wú)數(shù)網(wǎng)絡(luò)硬件的支持外,還得憑空構(gòu)建 一個(gè)16位模式下的TCP/IP協(xié)議棧。一些人認(rèn)為BIOS只不過(guò)是由于兼容性問(wèn)題遺留下來(lái)的無(wú)足輕重的部分,不值得為它花 費(fèi)太大的升級(jí)努力。而反對(duì)者認(rèn)為,當(dāng)BIOS的出現(xiàn)制約了 PC技術(shù)的發(fā)展時(shí),必須有人對(duì)它 作必要的改變。EFI和操作系統(tǒng)EFI在概念上非常類(lèi)似于一個(gè)低階的操作系統(tǒng),并且具有操控所有硬件資源的能力。不 少人感覺(jué)它的不斷發(fā)展將有可能代替現(xiàn)代的操作系統(tǒng)。事實(shí)上,EFI的締造者們?cè)诘谝话嬉?guī) 范出臺(tái)時(shí)就將EFI的能力限制于不足以威脅操作系統(tǒng)的統(tǒng)治地位。首先,它只是硬件和預(yù)啟 動(dòng)軟件間的接口規(guī)范:其次,EFI環(huán)境下不提供中斷的訪(fǎng)問(wèn)機(jī)制,也就

9、是說(shuō)每個(gè)EFI驅(qū)動(dòng)程 序必須用輪詢(xún)的方式來(lái)檢查硬件狀態(tài),并且需要以解釋的方式運(yùn)行,較操作系統(tǒng)下的驅(qū)動(dòng)效 率更低;再則,EFI系統(tǒng)不提供復(fù)雜的存儲(chǔ)器保護(hù)功能,它只具備簡(jiǎn)單的存儲(chǔ)器管理機(jī)制, 具體來(lái)說(shuō)就是指運(yùn)行在x86處理器的段保護(hù)模式下,以最大尋址能力為限把存儲(chǔ)器分為一個(gè) 平坦的段,所有的程序都有權(quán)限存取任何一段位置,并不提供真實(shí)的保護(hù)服務(wù)。當(dāng)EFI所有 組件加載完畢時(shí),系統(tǒng)可以開(kāi)啟一個(gè)類(lèi)似于操作系統(tǒng)Shell的命令解釋環(huán)境,在這里,用戶(hù) 可以調(diào)入執(zhí)行任何EFI應(yīng)用程序,這些程序可以是硬件檢測(cè)及除錯(cuò)軟件,引導(dǎo)管理,設(shè)置軟 件,操作系統(tǒng)引導(dǎo)軟件等等。理論上來(lái)說(shuō),對(duì)于EFI應(yīng)用程序的功能并沒(méi)有任何限

10、制,任 何人都可以編寫(xiě)這類(lèi)軟件,并且效果較以前MS-DOS下的軟件更華麗,功能更強(qiáng)大。一旦引 導(dǎo)軟件將控制權(quán)交給操作系統(tǒng),所有用于引導(dǎo)的服務(wù)代碼將全部停止工作,部分運(yùn)行時(shí)代服 務(wù)程序還可以繼續(xù)工作,以便于操作系統(tǒng)一時(shí)無(wú)法找到特定設(shè)備的驅(qū)動(dòng)程序時(shí),該設(shè)備還可 以繼續(xù)被使用。EFI的組成一般認(rèn)為,EFI由以下幾個(gè)部分組成:1. Pre-EFI初始化模塊2. EFI驅(qū)動(dòng)執(zhí)行環(huán)境3. EFI驅(qū)動(dòng)程序4. 兼容性支持模塊(CSM)5. EFI高層應(yīng)用6. GUID (GPT)磁盤(pán)分區(qū)在實(shí)現(xiàn)中,EFI初始化模塊和驅(qū)動(dòng)執(zhí)行環(huán)境通常被集成在一個(gè)只讀存儲(chǔ)器中。Pre-EFI 初始化程序在系統(tǒng)開(kāi)機(jī)的時(shí)候最先得到執(zhí)

11、行,它負(fù)責(zé)最初的CPU,主橋及存儲(chǔ)器的初始化工 作,緊接著載入EFI驅(qū)動(dòng)執(zhí)行環(huán)境(DXE)。當(dāng)DXE被載入運(yùn)行時(shí),系統(tǒng)便具有了枚舉并加載 其他EFI驅(qū)動(dòng)的能力。在基于PCI架構(gòu)的系統(tǒng)中,各PCI橋及PCI適配器的EFI驅(qū)動(dòng)會(huì)被相 繼加載及初始化;這時(shí),系統(tǒng)進(jìn)而枚舉并加載各橋接器及適配器后面的各種總線(xiàn)及設(shè)備驅(qū)動(dòng) 程序,周而復(fù)始,直到最后一個(gè)設(shè)備的驅(qū)動(dòng)程序被成功加載。正因如此,EFI驅(qū)動(dòng)程序可以 放置于系統(tǒng)的任何位置,只要能保證它可以按順序被正確枚舉。例如一個(gè)具PCI總線(xiàn)接口的 ATAPI大容量存儲(chǔ)適配器,其EFI驅(qū)動(dòng)程序一般會(huì)放置在這個(gè)設(shè)備的符合PCI規(guī)范的擴(kuò)展只 讀存儲(chǔ)器(PCI Expans

12、ion ROM)中,當(dāng)PCI總線(xiàn)驅(qū)動(dòng)被加載完畢,并開(kāi)始枚舉其子設(shè)備時(shí), 這個(gè)存儲(chǔ)適配器旋即被正確識(shí)別并加載它的驅(qū)動(dòng)程序。部分EFI驅(qū)動(dòng)程序還可以放置在某個(gè) 磁盤(pán)的EFI專(zhuān)用分區(qū)中,只要這些驅(qū)動(dòng)不是用于加載這個(gè)磁盤(pán)的驅(qū)動(dòng)的必要部件。在EFI 規(guī)范中,一種突破傳統(tǒng)MBR磁盤(pán)分區(qū)結(jié)構(gòu)限制的GUID磁盤(pán)分區(qū)系統(tǒng)(GPT)被引入,新結(jié)構(gòu)中, 磁盤(pán)的分區(qū)數(shù)不再受限制(在MBR結(jié)構(gòu)下,只能存在4個(gè)主分區(qū)),并且分區(qū)類(lèi)型將由GUID 來(lái)表示。在眾多的分區(qū)類(lèi)型中,EFI系統(tǒng)分區(qū)可以被EFI系統(tǒng)存取,用于存放部分驅(qū)動(dòng)和應(yīng) 用程序。很多人擔(dān)心這將會(huì)導(dǎo)致新的安全性因素,因?yàn)镋FI系統(tǒng)比傳統(tǒng)的BIOS更易于受到 計(jì)算機(jī)

13、病毒的攻擊,當(dāng)一部分EFI驅(qū)動(dòng)程序被破壞時(shí),系統(tǒng)有可能面臨無(wú)法引導(dǎo)的情況。實(shí) 際上,系統(tǒng)引導(dǎo)所依賴(lài)的EFI驅(qū)動(dòng)部分通常都不會(huì)存放在EFI的GUID分區(qū)中,即使分區(qū)中 的驅(qū)動(dòng)程序遭到破壞,也可以用簡(jiǎn)單的方法得到恢復(fù),這與操作系統(tǒng)下的驅(qū)動(dòng)程序的存儲(chǔ)習(xí) 慣是一致的。CSM是在x86平臺(tái)EFI系統(tǒng)中的一個(gè)特殊的模塊,它將為不具備EFI引導(dǎo)能力 的操作系統(tǒng)提供類(lèi)似于傳統(tǒng)BIOS的系統(tǒng)服務(wù)。EFI的發(fā)展英特爾無(wú)疑是推廣EFI的積極因素,近年來(lái)由于業(yè)界對(duì)其認(rèn)識(shí)的不斷深入,更多的廠(chǎng)商 正投入這方面的研究。包括英特爾,AMD在內(nèi)的一些PC生產(chǎn)廠(chǎng)家聯(lián)合成立了聯(lián)合可擴(kuò)展固 件接口論壇,它將在近期推出第一版規(guī)范。這個(gè)

14、組織將接手規(guī)劃EFI發(fā)展的重任,并將英特 爾的EFI框架解釋為這個(gè)規(guī)范的一個(gè)具體實(shí)現(xiàn)。另外,各大BIOS提供商如Phoenix, AMI 等,原先被認(rèn)為是EFI發(fā)展的阻礙力量,現(xiàn)在也不斷的推出各自的解決方案。分析人士指出, 這是由于BIOS廠(chǎng)商在EFI架構(gòu)中重新找到了諸如Pre-EFI啟動(dòng)環(huán)境之類(lèi)的市場(chǎng)位置,然而, 隨著EFI在PC系統(tǒng)上的成功運(yùn)用,以及英特爾新一代芯片組的推出,這一部分市場(chǎng)份額將 會(huì)不出意料的在英特爾的掌控之中。二、UEFIUEFI中圖形化的硬件設(shè)置界而Extensible Firmware Interface (EFI,可擴(kuò)展固件接 )是Intel為全新類(lèi)型的PC固件的體系

15、結(jié)構(gòu)、接口和服務(wù)提出的建議標(biāo)準(zhǔn)。其主要目 的是為了提供一組在OS加載之前(啟動(dòng)前)在所有平臺(tái)上一致的、正確指定的啟動(dòng)服務(wù), 被看做是有近20多年歷史的PC BIOS的繼任者。由于電腦教育普及,很多人都知道BIOS就是Basic Input/Output System,翻成中文 是“基本輸入/輸出系統(tǒng)”,是一種所謂的“固件”,負(fù)責(zé)在開(kāi)機(jī)時(shí)做硬件啟動(dòng)和檢測(cè)等工作, 并且擔(dān)任操作系統(tǒng)控制硬件時(shí)的中介角色。然而,那些都是過(guò)去DOS時(shí)代的事情,自從Windows NT出現(xiàn),Linux開(kāi)始嶄露頭角后, 這些操作系統(tǒng)已將過(guò)去需要通過(guò)BIOS完成的硬件控制程序放在操作系統(tǒng)中完成,不再需要 調(diào)用BIOS功能。一

16、般來(lái)說(shuō),當(dāng)今所謂的“電腦高手”,多半是利用BIOS來(lái)對(duì)硬件性能做些 超頻調(diào)校,除了專(zhuān)業(yè)人士外,鮮有人再利用BIOS進(jìn)行底層工作。因?yàn)橛布l(fā)展迅速,傳統(tǒng)式(Legacy) BIOS成為進(jìn)步的包袱,現(xiàn)在已發(fā)展出最新的EFI (Extensible Firmware Interface)可擴(kuò)展固件接口,以現(xiàn)在傳統(tǒng)BIOS的觀(guān)點(diǎn)來(lái)說(shuō),未 來(lái)將是一個(gè)“沒(méi)有特定BIOS"的電腦時(shí)代。UEFI是由EFI1. 10為基礎(chǔ)發(fā)展起來(lái)的,它的所有者已不再是Intel,而是一個(gè)稱(chēng)作 Unified EFI Form (,貢獻(xiàn)者有 Intel, Microsoft, AMI,等幾個(gè)大廠(chǎng),屬于 open sou

17、rce, 目前版本為2.1。與legacy BIOS相比,最大的幾個(gè)區(qū)別在于:1 .編碼99%都是由C語(yǔ)言完成:2 . 一改之前的中斷、硬件端口操作的方法,而采用了 Driver/protocal的新方式;3 .將不支持X86模式,而直接采用Flat mode (也就是不能用DOS 了,現(xiàn)在有些EFI或 UEFI能用是因?yàn)樽隽思嫒?,但?shí)際上這部分不屬于UEFI的定義了):4 .輸出也不再是單純的二進(jìn)制code,改為Removable Binary Drivers:5 . OS啟動(dòng)不再是調(diào)用Intl9,而是直接利用protocol/device Path;6.對(duì)于第三方的開(kāi)發(fā),前者基本上做不到,

18、除非參與BIOS的設(shè)計(jì),但是還要受到ROM 的大小限制,而后者就便利多了。UEFI將是近3年的趨勢(shì),到時(shí)候?qū)τ赑C的利用以及維護(hù)都將步入一個(gè)新的時(shí)代。UEFI結(jié)構(gòu)uEFI概念根據(jù)UEFI概念圖的結(jié)構(gòu),我們將把uEFI概念劃為兩部分:uEFI的實(shí)體(uEFI Image)跟平臺(tái)初始化框架。uEFI的實(shí)體-uEFI Image (圖中藍(lán)框圍起部分)根據(jù) uEFI 規(guī)范定義,uEFI Image 包含三種:uEFI Applications, OS Loaders and uEFIDriversouEFI Applications是硬件初始化完,操作系統(tǒng)啟動(dòng)之前的核心應(yīng)用,比如:?jiǎn)?dòng)管理、 BIOS

19、設(shè)置、uEFI Shell、診斷程式、調(diào)度和供應(yīng)程式、調(diào)試應(yīng)用.等等OS Loaders是特殊的uEFI Application,主要功能是啟動(dòng)操作系統(tǒng)并退出和關(guān)閉uEFI 應(yīng)用。uEFI Drivers是提供設(shè)備間接口協(xié)議,每個(gè)設(shè)備獨(dú)立運(yùn)行提供設(shè)備版本號(hào)和相應(yīng)的參 數(shù)以及設(shè)備間關(guān)聯(lián),不再需要基于操作系統(tǒng)的支持。啟動(dòng)隊(duì)列平臺(tái)初始化框架uEFI框架主要包含兩部分,一是PENEFI預(yù)初始化),另一部分是驅(qū)動(dòng)執(zhí)行環(huán)境(DXE)OPEI主要是用來(lái)檢測(cè)啟動(dòng)模式、加載主存儲(chǔ)器初始化模塊、檢測(cè)和加載驅(qū)動(dòng)執(zhí)行環(huán)境核 心。DXE是設(shè)備初始化的主要環(huán)'3它提供了設(shè)備驅(qū)動(dòng)和協(xié)議接口環(huán)境界而。三、MBR (M

20、aster Boot Record.即硬盤(pán)的主引導(dǎo)記錄)為了便于理解,一般將MBR分為廣義和狹義兩種:廣義的MBR包含整個(gè)扇區(qū)(引導(dǎo)程序、 分區(qū)表及分隔標(biāo)識(shí)),也就是上面所說(shuō)的主引導(dǎo)記錄:而狹義的MBR僅指引導(dǎo)程序而言。硬盤(pán)的0柱而、0磁頭、1扇區(qū)稱(chēng)為主引導(dǎo)扇區(qū)(也叫主引導(dǎo)記錄MBR)。它由三個(gè)部 分組成,主引導(dǎo)程序、硬盤(pán)分區(qū)表DPT和硬盤(pán)有效標(biāo)志(55AA)。在總共512字節(jié)的主引導(dǎo) 扇區(qū)里主引導(dǎo)程序(boot loader)占446個(gè)字節(jié),第二部分是Partition table區(qū)(分區(qū) 表),即DPT,占64個(gè)字節(jié),硬盤(pán)中分區(qū)有多少以及每一分區(qū)的大小都記在其中。第三部分 是magic n

21、umber,占2個(gè)字節(jié),固定為55AA。MBR是不屬于任何一個(gè)操作系統(tǒng),也不能用操作系統(tǒng)提供的磁盤(pán)操作命令來(lái)讀取它,但 可以通過(guò)命 令來(lái)修改和重寫(xiě),如在minix3里而,可以用命令:installboot -m/dev/cOdO /usr/mdec/masterboot來(lái)把masterboot這個(gè)小程序?qū)懙絤br里而,masterboot通常用匯編 語(yǔ)言來(lái)編寫(xiě)。我們也可以用R0M-BI0S中提供的INTI3H的2號(hào)功能來(lái)讀出該扇區(qū)的內(nèi)容, 也可用軟件工具Norton8. 0中的DISKEDIT. EXE來(lái)讀取。用INTI3H的讀磁盤(pán)扇區(qū)功能的調(diào)用參數(shù)如下:入口參數(shù):AH=2 (指定功能號(hào))AL

22、二要讀取的扇區(qū)數(shù)DL二磁盤(pán)號(hào)(0、1-軟盤(pán);80、81-硬盤(pán))DH二磁頭號(hào)CL高2位+CH二柱面號(hào)CL低6位二扇區(qū)號(hào)CS: BX二存放讀取數(shù)據(jù)的內(nèi)存緩沖地址出口參數(shù):CS:BX=讀取數(shù)據(jù)存放地址錯(cuò)誤信息:如果出錯(cuò)CF=1 AH二錯(cuò)誤代碼用DEBUG讀取位于硬盤(pán)0柱面、0磁頭、1扇區(qū)的操作如下:A>DEBUG-A 100XXXX:XXXXMOVAX, 0201(用功能號(hào)2讀1個(gè)扇區(qū))xxxx:xxxxMOVBX, 1000(把讀出的數(shù)據(jù)放入緩沖區(qū)的地址為CS: 1000 )xxxx:xxxxMOVCX, 0001(讀0柱面,1扇區(qū))xxxx:xxxxMOVDX, 0080(指定第一物理盤(pán)的

23、0磁頭)xxxx:xxxxINT13XXXX:XXXXINTXXXX:XXXX(按回車(chē)犍)-G=100 (執(zhí)行以上程序段)-D 1000 11FF (顯示512字節(jié)的MBR內(nèi)容)在windows操作系統(tǒng)下,例如xp, 2003, Vista, windows7,有微軟提供的接口直接讀 寫(xiě) mbr;FILE * fd=fopenC. WPHYSICALDRIVEO", "rb+');char buffer512;fread (buffer, 512, 1, fd);/then you can edit buffer512 as your wishfseek(fd, 0

24、, SEEK.SET); 很重要fwrite (buffer, 512, 1, fd); 把修改后的MBR寫(xiě)入到你的機(jī)器fclose(fd); 大功告成MBR組成一個(gè)扇區(qū)的硬盤(pán)主引導(dǎo)記錄MBR由如圖6-15所示的4個(gè)部分組成。主引導(dǎo)程序(偏移地址OOOOH0088H),它負(fù)責(zé)從活動(dòng)分區(qū)中裝載,并運(yùn)行系統(tǒng)引導(dǎo)程 序。出錯(cuò)信息數(shù)據(jù)區(qū),偏移地址0089H00E1H為出錯(cuò)信息,00E2H01BDH全為0字節(jié)。分區(qū)表(DPT, Disk Partition Table)含4個(gè)分區(qū)項(xiàng),偏移地址01BEH01FDH,每個(gè)分 區(qū)表項(xiàng)長(zhǎng)16個(gè)字節(jié),共64字節(jié)為分區(qū)項(xiàng)1、分區(qū)項(xiàng)2、分區(qū)項(xiàng)3、分區(qū)項(xiàng)4。結(jié)束標(biāo)志字,

25、偏移地址01FE01FF的2個(gè)字節(jié)值為結(jié)束標(biāo)志55AA,如果該標(biāo)志錯(cuò)誤系 統(tǒng)就不能啟動(dòng)。四、GPT (Globally Unique Identifier Partition Table Format )一種由基于Itanium計(jì)算機(jī)中的可擴(kuò)展固件接口(EFI)使用的磁盤(pán)分區(qū)架構(gòu)。與主啟 動(dòng)記錄(MBR)分區(qū)方法相比,GPT具有更多的優(yōu)點(diǎn),因?yàn)樗试S每個(gè)磁盤(pán)有多達(dá)128個(gè)分 區(qū),支持高達(dá)18千兆兆字節(jié)的卷大小,允許將主磁盤(pán)分區(qū)表和備份磁盤(pán)分區(qū)表用于冗余, 還支持唯一的磁盤(pán)和分區(qū)ID (GUID)。與支持最大卷為2 TB (terabytes)并且每個(gè)磁盤(pán)最多有4個(gè)主分區(qū)(或3個(gè)主分區(qū), 1個(gè)擴(kuò)

26、展分區(qū)和無(wú)限制的邏輯驅(qū)動(dòng)器)的主啟動(dòng)記錄(MBR)磁盤(pán)分區(qū)的樣式相比,GUID分 區(qū)表(GPT)磁盤(pán)分區(qū)樣式支持最大卷為18 EB (exabytes)并且每磁盤(pán)最多有128個(gè)分 區(qū)。與MBR分區(qū)的磁盤(pán)不同,至關(guān)重要的平臺(tái)操作數(shù)據(jù)位于分區(qū),而不是位于非分區(qū)或隱 藏扇區(qū)。另外,GPT分區(qū)磁盤(pán)有多余的主要及備份分區(qū)表來(lái)提高分區(qū)數(shù)據(jù)結(jié)構(gòu)的完整性。在“磁盤(pán)管理”中的磁盤(pán)屬性對(duì)話(huà)框中的“卷”選項(xiàng)卡上,具有GPT分區(qū)樣式的磁盤(pán) 顯示為GUID分區(qū)表(GPT)磁盤(pán),而具有MBR分區(qū)樣式的磁盤(pán)顯示為主啟動(dòng)記錄(MBR) 磁盤(pán)。如果發(fā)生下列意外事件,可以在GPT磁盤(pán)上執(zhí)行MBR磁盤(pán)支持的操作:在運(yùn)行帶有Service Pack 1 (SP1)的Windows Server 2003的基于x86的計(jì)算機(jī)和 基于x64的計(jì)算機(jī)上,操作系統(tǒng)必須駐留在MBR磁盤(pán)上。其他的硬盤(pán)可以是MBR或GPT。在基于Itanium的計(jì)算機(jī)上,操作系統(tǒng)加載程序和啟動(dòng)分區(qū)必須駐留在GPT磁盤(pán)上。 其他的硬盤(pán)可以是MBR或GPTO不能將 GPT 移至運(yùn)行 Windows NT 4. 0、Windows 2000、Windows XP 或

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論