0000-0088
| Master Boot Record 主引導(dǎo)程序 | 主引導(dǎo) 程序 |
0089-01BD | 出錯(cuò)信息數(shù)據(jù)區(qū) | 數(shù)據(jù)區(qū) |
01BE-01CD | 分區(qū)項(xiàng)1(16字節(jié)) |
分區(qū)表
|
01CE-01DD | 分區(qū)項(xiàng)2(16字節(jié)) | |
01DE-01ED | 分區(qū)項(xiàng)3(16字節(jié)) | |
01EE-01FD | 分區(qū)項(xiàng)4(16字節(jié)) | |
01FE | 55 | 結(jié)束標(biāo)志 |
01FF | AA |
圖6-15 MBR的組成結(jié)構(gòu)圖
3.MBR中的分區(qū)信息結(jié)構(gòu)
占用512個(gè)字節(jié)的MBR中,偏移地址01BEH--01FDH的64個(gè)字節(jié),為4個(gè)分區(qū)項(xiàng)內(nèi)容(分區(qū)信息表)。它是由磁盤(pán)介質(zhì)類(lèi)型及用戶(hù)在使用FDISK定義分區(qū)說(shuō)確定的。在實(shí)際應(yīng)用中,F(xiàn)DISK對(duì)一個(gè)磁盤(pán)劃分的主分區(qū)可少于4個(gè),但最多不超過(guò)4個(gè)。每個(gè)分區(qū)表的項(xiàng)目是16個(gè)字節(jié),其內(nèi)容含義如表6-19所示。
表6-19 分區(qū)項(xiàng)表(16字節(jié))內(nèi)容及含義
存貯字節(jié)位 | 內(nèi)容及含義 |
第1字節(jié) | 引導(dǎo)標(biāo)志。若值為80H表示活動(dòng)分區(qū),若值為00H表示非活動(dòng)分區(qū)。 |
第2、3、4字節(jié) | 本分區(qū)的起始磁頭號(hào)、扇區(qū)號(hào)、柱面號(hào)。其中: 磁頭號(hào)——第2字節(jié); 扇區(qū)號(hào)——第3字節(jié)的低6位; 柱面號(hào)——為第3字節(jié)高2位+第4字節(jié)8位。 |
第5字節(jié) | 分區(qū)類(lèi)型符。 00H——表示該分區(qū)未用(即沒(méi)有指定); 06H——FAT16基本分區(qū); 0BH——FAT32基本分區(qū); 05H——擴(kuò)展分區(qū); 07H——NTFS分區(qū); 0FH——(LBA模式)擴(kuò)展分區(qū)(83H為L(zhǎng)inux分區(qū)等)。 |
第6、7、8字節(jié) | 本分區(qū)的結(jié)束磁頭號(hào)、扇區(qū)號(hào)、柱面號(hào)。其中: 磁頭號(hào)——第6字節(jié); 扇區(qū)號(hào)——第7字節(jié)的低6位; 柱面號(hào)——第7字節(jié)的高2位+第8字節(jié)。 |
第9、10、11、12字節(jié) | 本分區(qū)之前已用了的扇區(qū)數(shù)。 |
第13、14、15、16字節(jié) | 本分區(qū)的總扇區(qū)數(shù)。 |
4.MBR的主要功能及工作流程
啟動(dòng)PC機(jī)時(shí),系統(tǒng)首先對(duì)硬件設(shè)備進(jìn)行測(cè)試,測(cè)試成功后進(jìn)入自舉程序INT 19H,然后讀系統(tǒng)磁盤(pán)0柱面、0磁頭、1扇區(qū)的主引導(dǎo)記錄(MBR)內(nèi)容到內(nèi)存指定單元0:7C00地址開(kāi)始的區(qū)域,并執(zhí)行MBR程序段。
硬盤(pán)的主引導(dǎo)記錄(MBR)是不屬于任何一個(gè)操作系統(tǒng)的,它先于所有的操作系統(tǒng)而被調(diào)入內(nèi)存,并發(fā)揮作用,然后才將控制權(quán)交給主分區(qū)(活動(dòng)分區(qū))內(nèi)的操作系統(tǒng),并用主分區(qū)信息表來(lái)管理硬盤(pán)。
MBR程序段的主要功能如下:
·檢查硬盤(pán)分區(qū)表是否完好。
·在分區(qū)表中尋找可引導(dǎo)的“活動(dòng)”分區(qū)。
·將活動(dòng)分區(qū)的第一邏輯扇區(qū)內(nèi)容裝入內(nèi)存。在DOS分區(qū)中,此扇區(qū)內(nèi)容稱(chēng)為DOS引導(dǎo)記錄(DBR)。
MBR引導(dǎo)程序段的執(zhí)行流程如圖6-16所示。
圖6-16 MBR引導(dǎo)程序段執(zhí)行流程
硬盤(pán)邏輯驅(qū)動(dòng)器的分區(qū)表鏈結(jié)構(gòu)
硬盤(pán)是由很多個(gè)512字節(jié)的扇區(qū)組成,而這些扇區(qū)會(huì)被組織成一個(gè)個(gè)的“分區(qū)”。
硬盤(pán)的分區(qū)規(guī)則是:一個(gè)分區(qū)的所有扇區(qū)必須連續(xù),硬盤(pán)可以有最多4個(gè)物理上的分區(qū),這4個(gè)物理分區(qū)可以是1個(gè)主分區(qū)或者3個(gè)主分區(qū)加一個(gè)擴(kuò)展分區(qū)。在DOS/Windows管理下的擴(kuò)展分區(qū)里,可以而且必須再繼續(xù)劃分邏輯分區(qū)(邏輯盤(pán))。
從MS-DOS3.2問(wèn)世以后,用戶(hù)就可以在一個(gè)物理硬盤(pán)驅(qū)動(dòng)器上劃分一個(gè)主分區(qū)和一個(gè)擴(kuò)展分區(qū),并在擴(kuò)展分區(qū)上創(chuàng)建多個(gè)邏輯驅(qū)動(dòng)器,也即我們常說(shuō)的一個(gè)物理盤(pán)上多個(gè)邏輯盤(pán)。
舉一個(gè)例子,一個(gè)10G的硬盤(pán),安裝Windows,有C:、D:、E:三個(gè)邏輯盤(pán),那么它的分區(qū)情況可以是如下的方式:
分區(qū)一:主分區(qū)2GB,格式化為C:盤(pán)。
分區(qū)二:擴(kuò)展分區(qū)8GB。它被再劃分為兩個(gè)各4GB的邏輯盤(pán),格式化為以D:和E:盤(pán)。
在一個(gè)劃分有多個(gè)主分區(qū)的硬盤(pán)上,則可安裝多個(gè)不同的操作系統(tǒng)。如Windows、Linux、Solaris等。每個(gè)操作系統(tǒng)自己去管理分配給自己的分區(qū)。但是,每個(gè)操作系統(tǒng)對(duì)分區(qū)的操作方式是不同的。對(duì)于DOS/Windows來(lái)說(shuō),它能夠把它所能管轄的一個(gè)主分區(qū)和一個(gè)擴(kuò)展分區(qū)格式化,然后按照C:、D:、E:邏輯盤(pán)的方式來(lái)管理。而Linux則不同,它是把“分區(qū)”看作一個(gè)設(shè)備,既沒(méi)有“擴(kuò)展分區(qū)”的概念,也沒(méi)有“邏輯盤(pán)”的概念。
1.邏輯盤(pán)的鏈接關(guān)系
在FAT文件系統(tǒng)中,硬盤(pán)的邏輯盤(pán)字符用字符C:、D:、E:、...、Z:來(lái)表示。主分區(qū)一般被格式化成C:盤(pán),從D:盤(pán)開(kāi)始的邏輯盤(pán)是建立在擴(kuò)展分區(qū)之上的。在系統(tǒng)進(jìn)行讀寫(xiě)操作時(shí),DOS首先查看主引導(dǎo)記錄(MBR)中的分區(qū)信息表,分區(qū)項(xiàng)將指向活動(dòng)主分區(qū)的DOS引導(dǎo)記錄(DBR)。
MBR中的分區(qū)表位于0柱面、0磁頭、1扇區(qū)內(nèi),以位移1BEH開(kāi)始的第一分區(qū)表作為鏈?zhǔn)?,有表?nèi)的鏈接表項(xiàng)指示下一分區(qū)表的物理位置(xx柱面、0磁頭、1扇區(qū)),在該位置的扇區(qū)內(nèi)同樣位移1BEH處,保存著第2張分區(qū)表,依次類(lèi)推,直至指向最后一張分區(qū)表的物理位置(yy柱面、0磁頭、1扇區(qū))。因該分區(qū)表內(nèi)不存在鏈接表項(xiàng),即作為分區(qū)表鏈的鏈尾。如圖6-17所示。
硬盤(pán) 第一個(gè)虛擬 第二個(gè)虛擬 第三個(gè)虛擬
MBR分區(qū)表 MBR分區(qū)表 MBR分區(qū)表 MBR分區(qū)表
定義C:盤(pán) | ------------> | 定義D:盤(pán) | -----------> | 定義E:盤(pán) | ------------> | 定義F:盤(pán) |
描述剩余空間 | 描述剩余空間 | 描述剩余空間 | 描述剩余空間 | |||
未用 | 未用 | 未用 | 未用 | |||
未用 | 未用 | 未用 | 未用 | |||
55AA | 55AA | 55AA | 55AA |
圖6-17 具有4個(gè)邏輯盤(pán)的分區(qū)鏈表示意圖
舉例來(lái)說(shuō),本來(lái)位于柱面0、磁頭0、扇區(qū)1上的分區(qū)表的每一項(xiàng)記錄和主分區(qū)的DBR之間有一對(duì)應(yīng)的關(guān)系,但是,如果在擴(kuò)展分區(qū)中建立了多個(gè)邏輯盤(pán),例如D:、E:、F:,該分區(qū)表中的分區(qū)項(xiàng)可指向第一個(gè)邏輯盤(pán):,但對(duì)于其它的邏輯盤(pán),則就沒(méi)有這種對(duì)應(yīng)關(guān)系了。為能夠查找擴(kuò)展分區(qū)中的多個(gè)邏輯盤(pán),DOS系統(tǒng)可做如下安排:
·如果硬盤(pán)只有一個(gè)主分區(qū),即是將整個(gè)硬盤(pán)作為一個(gè)邏輯盤(pán)C:,則分區(qū)命令FDISK只在硬盤(pán)的柱面0、磁頭0、扇區(qū)1上建立一個(gè)MBR。
·如果硬盤(pán)被劃分成2--4個(gè)分區(qū),則FDISK除了在柱面0、磁頭0、扇區(qū)1上建立一個(gè)MBR之外,還在擴(kuò)展分區(qū)的每個(gè)邏輯盤(pán)的起始扇區(qū)上都建立一個(gè)虛擬MBR,每一個(gè)虛擬MBR用于擴(kuò)展分區(qū)上的一個(gè)邏輯盤(pán)。
·擴(kuò)展分區(qū)的第一個(gè)扇區(qū)不是用于一個(gè)邏輯盤(pán)的DBR,而是指向一個(gè)“擴(kuò)展的”分區(qū)表,即第一個(gè)虛擬的MBR。該邏輯盤(pán)DBR扇區(qū)的起點(diǎn)應(yīng)為虛擬MBR的下一個(gè)磁道1扇區(qū)。
這些MBR中的各個(gè)分區(qū)表鏈接成一個(gè)如圖6-17所示的分區(qū)表鏈。這是一個(gè)硬盤(pán)具有4個(gè)表項(xiàng)所描述的內(nèi)容。
DOS就是用這種方法來(lái)使一個(gè)擴(kuò)展分區(qū)看起來(lái)象是有多個(gè)硬盤(pán)。
從圖6-17中可以看到,位于磁盤(pán)柱面0、磁頭0、扇區(qū)1上MBR的分區(qū)表指向基本分區(qū)及擴(kuò)展分區(qū)中的第一個(gè)邏輯盤(pán)。
聯(lián)系客服