天天看點

主引導扇區(MBR)釋疑

很多朋友對于硬碟的主引導扇區裡的MBR(Main Boot Record)和DPT

(Disk Partition Table)的差別有些分不太清。于是我想把它寫個簡短的

介紹,希望能對這些朋友有點幫助。

引導扇區在每個分區裡都存在,但是我們常說的*主引導扇區*是硬碟的

第一實體扇區。它由兩個部分組成:即主引導記錄MBR和硬碟分區表DPT。在

總共512位元組的主引導分區裡其中MBR占446個位元組(偏移0--偏移1BDH),DPT

占64個位元組(偏移1BEH--偏移1FDH),最後兩個位元組“55,AA”(偏移1FEH

偏移1FFH)是分區的結束标志。大緻的結構如下圖:

0000 |------------------------------------------------|

| |

| Main Boot Record |

| 主引導記錄(446位元組) |

01BD | |

01BE |------------------------------------------------|

01CD | 分區資訊 1(16位元組) |

01CE |------------------------------------------------|

01DD | 分區資訊 2(16位元組) |

01DE |------------------------------------------------|

01ED | 分區資訊 3(16位元組) |

01EE |------------------------------------------------|

01FD | 分區資訊 4(16位元組) |

|------------------------------------------------|

| 01FE | 01FF |

| 55 | AA |

圖一:主引導扇區結構圖

主引導記錄中包含了硬碟的一系列參數和一段引導程式。引導程式主要

是用來在系統硬體自檢完後引導具有激活标志的分區上的作業系統。它執行

到最後的是一條JMP指令跳到作業系統的引導程式去。這裡往往是引導型病

毒的注入點,也是各種多系統引導程式的注入點。但是由于引導程式本身完

成的功能比較簡單,是以我們可以完全地判斷該引導程式的合法性(看JMP

指令的合法性),因而也易于修複。象指令fdisk/mbr可以修複MBR和KV300

這類軟體可以清除任意類型的引導型病毒,就是這個原因。

往下來是硬碟的分區表,由4個16位元組的分區資訊表組成。每個資訊表的

結構如下:

偏移 長度 所表達的意義

0 位元組 分區狀态: 如0-->非活動分區

80--> 活動分區

1 位元組 該分區起始頭(HEAD)

2 字 該分區起始扇區和起始柱面

4 位元組 該分區類型:如82--> Linux Native分區

83--> Linux Swap 分區

5 位元組 該分區終止頭(HEAD)

6 字 該分區終止扇區和終止柱面

8 雙字 該分區起始絕對分區

C 雙字 該分區扇區數

最後的兩個标志“55 AA”是分區表的結束标志,如果這兩個标志被修改

(有些病毒就會修改這兩個标志),則系統引導時将報告找不到有效的分區表。

由上面的所列出的結構可以大緻地了解主引導扇區的結構和用途。下面,

有一些關于主引導扇區的常見問題:

Q1、fdisk/mbr 會不會把硬碟的分區表破壞呀?

A: 從上面的土一我們可以看到fdisk/mbr是不會影響到DPT的。fdisk/

mbr隻是把主引導分區裡的MBR部分重新寫過,而不會對DPT有任何破壞。

繼續閱讀