日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

?現(xiàn)在EFI主板越來(lái)越多,而隨著主流硬盤(pán)逐漸超過(guò)2T,GPT的出現(xiàn)頻率也變高了,本帖轉(zhuǎn)載了幾個(gè)相關(guān)名字的介紹以及對(duì)比。

 疲狼 2016-11-12

一、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)的“克隆”P(pán)C。在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í)處理器的第一條指令的地址會(huì)被定位到BIOS的存儲(chǔ)器中,便于使初始化程序得到執(zhí)行。 
   

EFI的產(chǎn)生 
   眾所周知,英特爾在近二十年來(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í)換代都保留了這種運(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)品中,如PnP BIOS,ACPI,傳統(tǒng)USB設(shè)備支持等等,但BIOS的根本性質(zhì)沒(méi)有得到任何改變。這迫使英特爾在開(kāi)發(fā)更新的處理器時(shí),都必須考慮加進(jìn)使效能大大降低的兼容模式。有人曾打了一個(gè)比喻:這就像保時(shí)捷新一代的全自動(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)建的系統(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位代碼,放置在固定的 0x000C0000至0x000DFFFF之間存儲(chǔ)區(qū)中,運(yùn)行這段代碼的初始化部分,它將掛載實(shí)模式下約定的中斷向量向其他程序提供服務(wù)。例如,VGA 圖形及文本輸出中斷(INT 10h),磁盤(pán)存取中斷服務(wù)(INT 13h)等等。由于這段存儲(chǔ)空間有限(128KB),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è)備,既可以將其安裝在安騰處理器的系統(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)分,更何況除了添加對(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ī)制,也就是說(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)有任何限制,任何人都可以編寫(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ù)被使用。 
   

本帖隱藏的內(nèi)容

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í)行,它負(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 Expansion 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ī)病毒的攻擊,當(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è)組織將接手規(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ì)不出意料的在英特爾的掌控之中。 

二、UEFI 
UEFI中圖形化的硬件設(shè)置界面Extensible Firmware Interface(EFI,可擴(kuò)展固件接口)是 Intel 為全新類(lèi)型的 PC 固件的體系結(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功能。一般來(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 的觀點(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(www.uefi.org)的國(guó)際組織,貢獻(xiàn)者有Intel,Microsoft,AMI,等幾個(gè)大廠(chǎng),屬于open source,目前版本為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)用Int19,而是直接利用protocol/device Path; 
  6. 對(duì)于第三方的開(kāi)發(fā),前者基本上做不到,除非參與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 uEFI Drivers。 
  uEFI Applications是硬件初始化完,操作系統(tǒng)啟動(dòng)之前的核心應(yīng)用,比如:?jiǎn)?dòng)管理、BIOS設(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框架主要包含兩部分,一是PEI(EFI預(yù)初始化),另一部分是驅(qū)動(dòng)執(zhí)行環(huán)境 (DXE)。 
  PEI主要是用來(lái)檢測(cè)啟動(dòng)模式、加載主存儲(chǔ)器初始化模塊、檢測(cè)和加載驅(qū)動(dòng)執(zhí)行環(huán)境核心。 
  DXE是設(shè)備初始化的主要環(huán)節(jié),它提供了設(shè)備驅(qū)動(dòng)和協(xié)議接口環(huán)境界面。

三、MBR (Master 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 number,占2個(gè)字節(jié),固定為55AA。

  MBR是不屬于任何一個(gè)操作系統(tǒng),也不能用操作系統(tǒng)提供的磁盤(pán)操作命令來(lái)讀取它,但可以通過(guò)命 令來(lái)修改和重寫(xiě),如在minix3里面,可以用命令:installboot -m /dev/c0d0 /usr/mdec/masterboot來(lái)把masterboot這個(gè)小程序?qū)懙絤br里面,masterboot通常用匯編語(yǔ)言來(lái)編寫(xiě)。我們也可以用 ROM-BIOS中提供的INT13H的2號(hào)功能來(lái)讀出該扇區(qū)的內(nèi)容,也可用軟件工具Norton8.0中的DISKEDIT.EXE來(lái)讀取。

  用INT13H的讀磁盤(pán)扇區(qū)功能的調(diào)用參數(shù)如下:
  入口參數(shù):AH=2 (指定功能號(hào))
  AL=要讀取的扇區(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 100
  XXXX:XXXX MOV AX,0201 (用功能號(hào)2讀1個(gè)扇區(qū))
  XXXX:XXXX MOV BX,1000 (把讀出的數(shù)據(jù)放入緩沖區(qū)的地址為CS:1000)
  XXXX:XXXX MOV CX,0001 (讀0柱面,1扇區(qū))
  XXXX:XXXX MOV DX,0080 (指定第一物理盤(pán)的0磁頭)
  XXXX:XXXX INT 13
  XXXX:XXXX INT 3
  XXXX:XXXX (按回車(chē)鍵)
  -G=100 (執(zhí)行以上程序段)
  -D 1000 11FF (顯示512字節(jié)的MBR內(nèi)容)

  在windows操作系統(tǒng)下,例如xp,2003,Vista,windows7,有微軟提供的接口直接讀寫(xiě)mbr;
  FILE * fd=fopen('\\.\PHYSICALDRIVE0','rb ');
  char buffer[512];
  fread(buffer,512,1,fd);
  //then you can edit buffer[512] as your wish......
  fseek(fd,0,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)程序(偏移地址0000H--0088H),它負(fù)責(zé)從活動(dòng)分區(qū)中裝載,并運(yùn)行系統(tǒng)引導(dǎo)程序。
  出錯(cuò)信息數(shù)據(jù)區(qū),偏移地址0089H--00E1H為出錯(cuò)信息,00E2H--01BDH全為0字節(jié)。
  分區(qū)表(DPT,Disk Partition Table)含4個(gè)分區(qū)項(xiàng),偏移地址01BEH--01FDH,每個(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)志字,偏移地址01FE--01FF的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ò)展分區(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 或 GPT。 

  不能將 GPT 移至運(yùn)行 Windows NT 4.0、Windows 2000、Windows XP 或 Windows Server 2003 的基于 x86 的計(jì)算機(jī)上。不過(guò),可以將 GPT 磁盤(pán)從運(yùn)行帶有 SP1 的 Windows Server 2003 的基于 x86 的計(jì)算機(jī)或基于 x64 的計(jì)算機(jī)移至運(yùn)行 Windows Server 2003 或 Windows XP 的基于 Itanium 的計(jì)算機(jī)上,反之亦然。 

  不能使用基于 Itanium 的 Windows 版本,將 GPT 磁盤(pán)從基于 Itanium 的計(jì)算機(jī)移至運(yùn)行帶有 SP1 的 Windows Server 2003 的基于 x86 的計(jì)算機(jī)或基于 x64 的計(jì)算機(jī),然后啟動(dòng)該操作系統(tǒng)。在非基于 Itanium 的計(jì)算機(jī)上使用的 GPT 磁盤(pán)必須僅用于數(shù)據(jù)存儲(chǔ)。 

  在單個(gè)動(dòng)態(tài)磁盤(pán)組中既可以有 MBR,也可以有 GPT 磁盤(pán)。也使用將基本 GPT 和 MBR 磁盤(pán)的混合,但它們不是磁盤(pán)組的一部分。可以同時(shí)使用 MBR 和 GPT 磁盤(pán)來(lái)創(chuàng)建鏡像卷、帶區(qū)卷、跨區(qū)卷和 RAID-5 卷,但是 MBR 的柱面對(duì)齊的限制可能會(huì)使得創(chuàng)建鏡像卷有困難。通??梢詫?MBR 的磁盤(pán)鏡像到 GPT 磁盤(pán)上,從而避免柱面對(duì)齊的問(wèn)題。 

  可以將 MBR 磁盤(pán)轉(zhuǎn)換為 GPT 磁盤(pán),并且只有在磁盤(pán)為空的情況下,才可以將 GPT 磁盤(pán)轉(zhuǎn)換為 MBR 磁盤(pán)。 

  不支持 EFI 系統(tǒng)分區(qū)的鏡像。必須使用 bootcfg 命令克隆 EFI 系統(tǒng)分區(qū)。 

  不能在可移動(dòng)媒體,或者在與群集服務(wù)使用的共享 SCSI 或 Fibre Channel 總線(xiàn)連接的群集磁盤(pán)上使用 GPT 分區(qū)樣式。 

  可以使用 DiskPart.exe 命令行實(shí)用程序或 EFI 固件實(shí)用程序 Diskpart.efi 在基本 GPT 磁盤(pán)上創(chuàng)建分區(qū)。有關(guān) DiskPart.exe 的詳細(xì)信息,請(qǐng)參閱 DiskPart。有關(guān)“磁盤(pán)管理”管理單元的詳細(xì)信息,請(qǐng)參閱磁盤(pán)管理概述。有關(guān) Diskpart.efi 的詳細(xì)信息,請(qǐng)參閱 Intel 網(wǎng)站。 

  在基于 Itanium 的計(jì)算機(jī)上的系統(tǒng)恢復(fù)方案中,請(qǐng)參閱計(jì)算機(jī)所附帶的制造商文檔來(lái)重新創(chuàng)建或恢復(fù) GPT 磁盤(pán)。 

  有關(guān)管理 GPT 和 MBR 磁盤(pán)的詳細(xì)信息,請(qǐng)參閱可擴(kuò)展固件接口 或 Microsoft Windows 資源工具包網(wǎng)站上的“Disk Management”(磁盤(pán)管理)。 

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多