分區表修復

傳統的分區方案(稱為MBR分區方案)是將分區信息保存到磁碟的第一個扇區(MBR扇區)中的64個位元組中,每個分區項占用16個位元組,這16個位元組中存有活動狀態標誌、檔案系統標識、起止柱面號、磁頭號、扇區號、隱含扇區數目(4個位元組)、分區總扇區數目(4個位元組)等內容。由於MBR扇區只有64個位元組用於分區表,所以只能記錄4個分區的信息。這就是硬碟主分區數目不能超過4個的原因。後來為了支持更多的分區,引入了擴展分區及邏輯分區的概念。但每個分區項仍用16個位元組存儲。

分區表

MBR磁碟分區是使用最廣泛的一種分區結構,它也被稱為DOS分區,但它並不是一個僅僅套用於微軟的作業系統平台中的分區結構。Linux系統、 x86架構的UNIX系統都能夠支持MBR磁碟分區。

偏移1BEH—偏移1FDH的64位元組為DPT(Disk Partition Table,硬碟分區表),這是MBR中非常重要的一個結構。

分區表的作用

分區表是用來管理硬碟的分區的,如果分區表被清除或者破壞,則硬碟的分區就會丟失。

分區表分析

為了便於用戶對磁碟的管理,作業系統引入了磁碟分區的概念,即將一塊磁碟邏輯劃分為幾個區域。在分區表的64位元組中,以16位元組為一個分區表項來描述一個分區的結構。一塊硬碟最多可以有4個主磁碟分區,被激活的主磁碟分區被稱為主分區,主分區在一個硬碟中只能一個 。

每個分區表項中相對應的各個位元組的含義都是一樣的,

位元組偏移 位元組長度 欄位名和含義
0x01BE 1位元組 0x80 引導標識,80H為活動分區,00H非活動分區
0x01BF 1位元組 0x01 開始磁頭數
0x01C0 6位 0x01 起始扇區數
0x01C1 10位 0x00 起始柱面數
0x01C2 1位元組 0x07 分區類型描述,07H為NTFS分區類型
0x01C3 1位元組 0xFE 結束磁頭數
0x01C4 6位 0xFF 結束扇區數
0x01C5 10位 0xFF 結束柱面數
0x01C6 4位元組 0x0000003F 本分區之前使用的扇區數;保留扇區數
0x01CA 4位元組 0x01388AFC 分區的總扇區數

(1) 分區表項的第一個位元組為分區的引導標誌,只能是00H和80H。80H為可引導的活動分區,00H為不可引導的非活動分區。其餘值對Microsoft而言為非法值。

(2) 在重複非常重要的一點:大於1位元組的數值被以低位元組在前的存儲格式順序保存下來。

(3) “本分區之前使用的扇區數”就是該分區的相對起始扇區號,是以LBA值來表示的,這個值也可以稱為隱藏扇區數。

(4) 系統在分區時,各分區都不允許跨柱面,即均以柱面為單位,這就是通常所說的分區粒度,有時分區時輸入分區的大小為7000MB,結果分出來卻是6997MB,就是這個原因。

(5) 分區表項的第三和第四個位元組的扇區和柱面參數中,扇區占6位,柱面占10位,以“起始扇區號”為例,其低6位用作扇區數據的二進制表示,高兩位用做柱面數10位中的高兩位,由此可知,實際上用這種方式表示的分區容量是有限的,柱面和磁頭從0開始編號,扇區從1開始編號,所以最多只能表示1024個柱面*63個扇區*256個磁頭*512Byte=8455716864Byte,

(6) 雖然現在的系統均採用線性定址的方式來處理分區的大小,但不可跨柱面的原則依然沒變,本分區的扇區總數加上與前一分區之前的保留扇區數目依然必須是柱面容量的整數倍。

(7) 偏移01C2H處表示該分區的類型,它是作業系統管理分區、組織分區的方式。

相關詞條

熱門詞條

聯絡我們