Windows基本磁盤結構簡析(二)——MBR結構分析

MBR磁盤分區是使用最爲廣泛的一種分區結構,也被稱爲DOS分區,不僅僅Windows系統,LinuxUNIX等都能夠支持MBR磁盤分區。MBR磁盤都有一個引導扇區,稱爲主引導記錄, Master Boot Record,即MBR,它位於磁盤上的第一個扇區,即0號扇區,由引導代碼、分區表、磁盤簽名、結束標誌組成,共佔用512個字節,是一個特殊而重要的扇區。通過WinHex或其他工具,可查看MBR的結構如下圖所示。

000209834.jpg

1、引導代碼

引導程序佔用MBR的前440個字節,計算機在BIOS自檢通過後,會將啓動磁盤的MBR加載到內存中並執行引導程序,引導程序則會在分區表中查找活動分區,如果存在活動分區,則根據活動分區的偏移獲得活動分區上引導扇區的地址,並判斷引導扇區的合法性,將引導扇區讀入內存,然後將控制權交給這個引導扇區,由它去引導操作系統。因此,MBR中的引導程序在系統啓動過程中起到了承上啓下的作用。在非啓動磁盤上,MBR中的引導程序可能都是0,這對磁盤的使用沒有任何影響。

2、分區表

MBR分區表示磁盤管理最重要的部分,通過分區表信息來定位各個分區、訪問用戶數據。分區表中包含4個分區項,每一項通過位置偏移、大小來唯一確定一個主分區或擴展分區。每個分區項16個字節,其中包括啓動標誌,起始、結束位置的CHS參數,開始扇區,分區大小,分區類型。具體描述如下圖所示。需要注意的是,分區項的第一個字節表示該分區是否爲活動分區,即是否包含系統引導扇區,用來啓動操作系統,每個磁盤只能有一個活動分區。活動分區項的引導標識爲0x80,其他均爲0x00,雖然可以使用工具將多個分區項的引導標識改爲0x80,但是MBR引導程序只會查找並使用第一個具有0x80標識的活動分區。

000311539.jpg

3、磁盤簽名

每個MBR磁盤都有唯一的磁盤簽名,是Windows在初始化磁盤時寫入的一個磁盤標籤,Windows依靠磁盤簽名來識別基本MBR磁盤。如果兩個磁盤的簽名相同,則後加入的那個磁盤分區將不會顯示給用戶,在磁盤管理器中,可以看見不可識別硬盤上有一個紅色的感嘆號,描述爲該磁盤因爲簽名衝突處於離線狀態。在Vista以及之後的Windows系統中,每個系統引導項中都記錄了引導磁盤的簽名,如果磁盤簽名丟失或修改,將會導致系統無法啓動。

4、結束標誌

MBR的最後兩個字節固定爲”55AA”,雙字節值爲0xAA55。每次執行系統引導代碼是都會檢查MBR最後兩字節是否爲”55AA”,如果是纔會繼續執行後面的程序,否則會認爲這是一個非法的MBR,停止引導系統。

MBR磁盤上,系統通過分區表來管理磁盤分區,但是由於分區表只有64個字節,包含4個分區項,所以最多也只能管理4個分區,稱爲主分區,也可以創建3個主分區和一個擴展分區,並在擴展分區中創建邏輯分區。主分區和擴展分區的定位相對簡單,因爲MBR分區項中已經指明瞭該分區所在磁盤上的位置和大小,而邏輯分區則需要通過擴展分區項以及邏輯分區鏈來確定位置和大小,我將會在下一篇文章中說明。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章