MBR 和 主引導(dǎo)扇區(qū) 主分區(qū)、擴(kuò)展分區(qū)、邏輯分區(qū) 活 動(dòng)分區(qū) 、系統(tǒng)分區(qū)、啟動(dòng)分區(qū)、 引導(dǎo)分區(qū) MBR和分區(qū)表(DPT)的區(qū)別與聯(lián)系 什么是MBR和主引導(dǎo)引導(dǎo)扇區(qū)?什么是主分區(qū)、擴(kuò)展分區(qū)、邏輯分區(qū)?什么是活動(dòng)分區(qū)、引導(dǎo)分區(qū)、系統(tǒng)分區(qū)、啟動(dòng)分區(qū)?一下子羅列這么多概念,恐怕很多人都搞不清它們的區(qū)別和聯(lián)系吧。網(wǎng)上雖然不少解釋,但很多是模棱兩可甚至是錯(cuò)誤的,反而越弄越糊涂。貓貓 煞費(fèi)苦心的把這一大串概念研究了很長(zhǎng)時(shí)間,試圖搞明白,為了以后查閱方便,于是把對(duì)這些概念的理解總結(jié)了一下。而要想分清這些概念,真要費(fèi)一點(diǎn)腦筋??! 一、MBR 和 主引導(dǎo)扇區(qū) 首先簡(jiǎn)要介紹MBR和主引導(dǎo)扇區(qū)的關(guān)系。 主引導(dǎo)扇區(qū) 是硬盤0號(hào)柱面,0號(hào)磁頭的第一個(gè)扇區(qū),大小為512字節(jié)。(注:硬盤可以用柱面、磁頭和扇區(qū)定位) MBR,占用主引導(dǎo)扇區(qū)的前446字節(jié),緊隨其后的64字節(jié)是 分區(qū)表DPT, 最后還剩兩個(gè)字節(jié)則恒為55AA,表示結(jié)束符號(hào)。MBR和分區(qū)表,一般都是存在0號(hào)磁頭的第一個(gè)扇區(qū)上。應(yīng)該說0號(hào)磁頭的第一個(gè)扇區(qū)包含MBR和分區(qū)表,而不應(yīng)該是MBR包含分區(qū)表。 (下圖,演示了它們的位置關(guān)系) 然后,具體說一說MBR和分區(qū)表。 MBR ,全稱為Master Boot Record,即硬盤的主引導(dǎo)記錄。MBR,共446字節(jié),一般在操作系統(tǒng)安裝時(shí)寫入,但它并不屬于操作系統(tǒng)。MBR就是一段引導(dǎo)程序,用于檢測(cè)磁盤的分區(qū)合法性和加載操作系統(tǒng),它的重要作用就是識(shí)別活動(dòng)分區(qū),并引導(dǎo)操作系統(tǒng)。 分區(qū)表DPT ,共64字節(jié),記錄了硬盤有多少分區(qū)以及分區(qū)的各種屬性。由于一個(gè)分區(qū)的信息要占用16字節(jié),所以分區(qū)表只能定義4個(gè)分區(qū),這就是為什么我們說硬盤一般最多只能分為 4個(gè)主分區(qū) (這里說“一般”是對(duì)基本磁盤而言,而對(duì)于動(dòng)態(tài)磁盤則無此限制,但大部分都在使用基本磁盤,可以暫不考慮 )。 計(jì)算機(jī)開機(jī)后BIOS加電自檢,一切正常后,找到第一個(gè)啟動(dòng)設(shè)備(一般就是硬盤),然后從這個(gè)啟動(dòng)設(shè)備的主引導(dǎo)扇區(qū)讀取MBR。MBR這段引導(dǎo)程序識(shí)別活動(dòng)分區(qū),引導(dǎo)操作系統(tǒng)。 二、 主分區(qū)、擴(kuò)展分區(qū)、邏輯分區(qū) 正如前面所講, 主分區(qū) 是由主引導(dǎo)扇區(qū)中64字節(jié)的分區(qū)表所定義的,最多只能有4個(gè)。但為了滿足更多分區(qū)的需求,變產(chǎn)生了 擴(kuò)展分區(qū) 。形式上,如果擁有擴(kuò)展分區(qū),就必須犧牲一個(gè)主分區(qū),而且最多有一個(gè)擴(kuò)展分區(qū),也就是說:主分區(qū)+擴(kuò)展分區(qū)<=4 and 擴(kuò)展分區(qū)<=1 。因此擴(kuò)展分區(qū)也可以看成一種特殊的主分區(qū)。 但擴(kuò)展分區(qū)并不可以直接使用,擴(kuò)展分區(qū)又必須以 邏輯分區(qū) 的形式出現(xiàn),可以這樣認(rèn)為:擴(kuò)展分區(qū)包含著若干邏輯分區(qū),而且至少包含一個(gè)。 擴(kuò)展分區(qū)中的邏輯分區(qū)是以鏈?zhǔn)酱嬖诘?。即每一個(gè)邏輯分區(qū)都記錄著下一個(gè)邏輯分區(qū)的位置信息,依次串聯(lián)。事實(shí)上每一個(gè)邏輯分區(qū)都有一個(gè)和主引導(dǎo)扇區(qū)類似的引導(dǎo)扇區(qū),引導(dǎo)扇區(qū)里有類似的分區(qū)表。該分區(qū)表記錄了該分區(qū)的信息和一個(gè)指針,指向下一個(gè)邏輯分區(qū)的引導(dǎo)扇區(qū)。 因此,邏輯分區(qū)是借鑒了主分區(qū)的方法,相當(dāng)于在一個(gè)主分區(qū)下面建立了若干級(jí)“主分區(qū)”。從上面的描述, 貓貓 推測(cè),邏輯分區(qū)是建立在操作系統(tǒng)級(jí)別,由操作系統(tǒng)識(shí)別的。另一個(gè)可以預(yù)測(cè)的現(xiàn)象是:一旦某一個(gè)邏輯分區(qū)損害,跟在它后面的所有邏輯分區(qū)都將丟失,而前面的邏輯分區(qū)去可以保留。這也是鏈?zhǔn)浇Y(jié)果的特點(diǎn)。 三、 活 動(dòng)分區(qū) 、系統(tǒng)分區(qū)、啟動(dòng)分區(qū)、 引導(dǎo)分區(qū) 這四個(gè)術(shù)語和前面三個(gè)不同,前面三個(gè)是講述分區(qū)的“ 物理 ”形成。而這四個(gè)術(shù)語描述了分區(qū)的 功能 ,并且更易混淆。 首先,根據(jù)Windows XP隨機(jī)幫助文檔看, 引導(dǎo)分區(qū)就是啟動(dòng)分區(qū) ,兩者是同一概念,所以下面就只討論活動(dòng)分區(qū)、系統(tǒng)分區(qū)和啟動(dòng)分區(qū)。 系統(tǒng)分區(qū)和啟動(dòng)分區(qū)比較 。 這是兩個(gè)極易混淆的概念,因?yàn)閮烧叩暮x似乎和它們的名字正好顛倒了。Windows幫助文件的術(shù)語表里是這樣解釋他們的:” 系統(tǒng)分區(qū) ,包含加載 Windows(例如,Ntldr、Osloader、Boot.ini、Ntdetect.com)所需的硬件特定文件的分區(qū)。系統(tǒng)分區(qū)可以(但不是必須)與啟動(dòng)分區(qū)相同。啟動(dòng)分區(qū) ,包含 Windows 操作系統(tǒng)及其支持文件的分區(qū)。啟動(dòng)分區(qū)可以(但不是必須)與系統(tǒng)分區(qū)相同?!?SPAN lang=EN-US> 看起來是很糊涂,但說的簡(jiǎn)單些就是:系統(tǒng)分區(qū)包含Ntldr、Osloader、Boot.ini、Ntdetect.com等文件,而啟動(dòng)分區(qū)包含Windows和system32文件。所以, 真正包含操作系統(tǒng)內(nèi)核文件的分區(qū)是啟動(dòng)分區(qū),包含操作系統(tǒng)引導(dǎo)文件的確實(shí)系統(tǒng)分區(qū) ,這是要特別注意的一點(diǎn)。 有些人就疑問了,我的Ntldr、Osloader、Boot.ini、Ntdetect.com和Windows、system32文件都在C 盤,那是怎么回事?這很容易解釋,你的C盤既是系統(tǒng)分區(qū)也是啟動(dòng)分區(qū),只安裝一個(gè)操作系統(tǒng)的計(jì)算機(jī)大都屬于這種情況 ,所以微軟在括號(hào)里說“但不是必須”。 其實(shí)系統(tǒng)分區(qū)時(shí)針對(duì)引導(dǎo)來說的,而啟動(dòng)分區(qū)時(shí)針對(duì)操作系統(tǒng)來說的。 像我的電腦C盤先安裝 了Vista,后來D盤安裝了XP,現(xiàn)在C盤是系統(tǒng)分區(qū);至于哪個(gè)是啟動(dòng)分區(qū),就要看我用那個(gè)系統(tǒng)了,進(jìn)Vista,C盤就是啟動(dòng)分區(qū),進(jìn)XP,D盤就是 啟動(dòng)分區(qū)。(再強(qiáng)調(diào),啟動(dòng)分區(qū)包含Windows內(nèi)核文件,而系統(tǒng)分區(qū)才包含操作系統(tǒng)引導(dǎo)文件,不然會(huì)越看越糊涂的。) 最后要搞明白的是活動(dòng)分區(qū),這一點(diǎn),比較麻煩。 Windows幫助文檔里的定義是:”活動(dòng)分區(qū),基于 x86 計(jì)算機(jī)的啟動(dòng)分區(qū)?;顒?dòng)分區(qū)必須是基本磁盤上的主要分區(qū)。如果只使用 Windows,則活動(dòng)分區(qū)可以與系統(tǒng)卷相同。“補(bǔ)充說明有:活動(dòng)分區(qū)必須是主分區(qū),一塊硬盤上只可以有一個(gè)活動(dòng)分區(qū)。其他主分區(qū)可以被標(biāo)記為活動(dòng)分區(qū)。 而從主引導(dǎo)扇區(qū)處看,活動(dòng)分區(qū)僅僅是在分區(qū)表中,16個(gè)字節(jié)的最前面含有80標(biāo)志的分區(qū)信息所定義的分區(qū)。 但 貓貓 對(duì) Windows幫助文檔的定義不敢茍同(也許是我錯(cuò)了,但是我思來想去,只有這樣可以解釋通)。首先,我們知道活動(dòng)分區(qū)是通過主引導(dǎo)扇區(qū)的分區(qū)表標(biāo)記的,所以理論上,每個(gè)主分區(qū)都可以被標(biāo)記為活動(dòng)(只是不當(dāng)?shù)臉?biāo)記會(huì)導(dǎo)致系統(tǒng)無法啟動(dòng))。Windows幫助文檔說活動(dòng)分區(qū),是基于x86的計(jì)算機(jī)的啟動(dòng)分區(qū), 那不就是說是Windows文件所在分區(qū)??墒菍?duì)于雙系統(tǒng)來說,這種說法顯然不對(duì),因?yàn)殡p系統(tǒng)的啟動(dòng)分區(qū)是依據(jù)被啟動(dòng)的系統(tǒng)而定的。所以,我假定微軟也把系統(tǒng)分區(qū)和啟動(dòng)分區(qū)的概念搞混淆了。 所以,結(jié)果變?yōu)椋?活動(dòng)分區(qū)是基于x86計(jì)算機(jī)的系統(tǒng)分區(qū) 。換句話說,活動(dòng)分區(qū)是一種系統(tǒng)分區(qū)。在這種情況下,一個(gè)主分區(qū)是不是系統(tǒng)分區(qū)似乎并不具有價(jià)值,只有被標(biāo)記為活動(dòng)的主分區(qū)才有價(jià)值。因?yàn)?,只有?biāo)記為活動(dòng)分區(qū),這個(gè)系統(tǒng)分區(qū)的Windows啟動(dòng)支持文件才會(huì)被加載,然后通過這些引導(dǎo)存儲(chǔ)在啟動(dòng)分區(qū)的Windows內(nèi)核文件,完全Windows的啟動(dòng)。 所以,Windows可以被安裝在邏輯分區(qū)內(nèi)(我發(fā)現(xiàn)我的電腦就是這樣的),但必須在活動(dòng)分區(qū)的啟動(dòng)支持文件里加上對(duì)這個(gè)邏輯分區(qū)里Windows 的引導(dǎo)信息。具體到XP,就是boot.ini文件添加上對(duì)雙系統(tǒng)的引導(dǎo),而這個(gè)boot,ini文件必須在啟動(dòng)分區(qū)。而我了一個(gè)實(shí)驗(yàn),在XP下面通過啟 動(dòng)和故障恢復(fù)對(duì)話框修改boot.ini文件,發(fā)現(xiàn)修改的并非XP所在的分區(qū)的boot.ini,而是Vista所在分區(qū)的boot.ini。(我在主分 區(qū)C盤安裝了Vista,邏輯分區(qū)D盤安裝了XP)。同時(shí),我通過軟件廢除Vista的新式引導(dǎo)方式,恢復(fù)xp的boot.ini式引導(dǎo)方式(此時(shí),C盤 Vista已無法引導(dǎo)),發(fā)現(xiàn)分別修改C盤和D盤的boot.ini,只有C盤的boot.ini才有效。再次印證了我的假設(shè)。 另外,如果兩個(gè)系統(tǒng)都安裝在主分區(qū),則可以通過標(biāo)記各自的安裝分區(qū)為活動(dòng)分區(qū),而啟動(dòng)不同的操作系統(tǒng)。 Powered by 無名小鬼 wumingxiaogui.blog.163.com
|
|