Windows磁盤MBR結構詳解

在之前的文章 Windows存儲管理之磁盤結構詳解 中介紹了Windows的磁盤結構和MBR。本文將對Windows Basic Disk中的MBR的結構進行介紹,幫助讀者更好的瞭解Windows系統中的磁盤存儲。


Windows Basic Disk中的MBR:


Master Boot Record作爲磁盤中最重要的數據結構,在磁盤分區的時候會被創建。MBR中包括幾個部分,一段可執行的代碼叫做Master Boot Code,Disk Signature以及磁盤的分區表。在MBR的末端還有一直爲0x55AA值大小爲兩個字節的Sector Marker的簽名字段。這個字通常還標註了extend boot record(EBR)和啓動扇區(boot sector)的結束。


Master Boot Code代碼主要完成下列幾項活動。

  1. 掃描活動分區的分區表

  2. 找到活動分區的起始扇區位置

  3. 將一個啓動扇區的拷貝從活動分區載入到內存

  4. 將控制權轉移到啓動扇區上的執行代碼


如果Master Boot Code不能完成這些功能,Windows系統就會拋出一些錯誤,比如“Invalid partition table”、“Error loading operating system”、“Missing operating system”從而提示相應的步驟中發生了錯誤。


Basic Disk中的分區表:


在Basic Disk中的Partition Table是一個64個字節的數據結構用來定義物理磁盤上的分區類型與位置的,獨立於操作系統。每個分區表的記錄是16個直接長度,最大包括四條記錄,每條記錄從預先定義的起始位置。下面的例子顯示一段MBR的記錄,其中包括顯示了一個三個分區記錄,起始位置分別是0x01BE、0x01CE、0x01DE。圖中還顯示了,分區記錄中幾個關鍵的字段。0x01C2是System ID,用來定義邏輯卷的類型,圖中07就是表示Installable File System(NTFS)。0x01C6開始的四個字節是Relative Sectore,表示了邏輯卷的起始位置。0x01CA開始的四個字節顯示了整個邏輯卷的扇區總數。Boot Indictor顯示了是否分區爲活動分區。

wKioL1jweBfwr7sjAADxEUwDfmY854.jpg-wh_50

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