您好,登錄后才能下訂單哦!
在之前一篇《Windows存儲管理之磁盤類型簡介》中介紹了Windows的基本磁盤類型。本篇中將對GPT和MBR這兩類磁盤類型的結構進行深入介紹。
Windows磁盤結構:
Windows的主流磁盤結構分為MBR和GPT兩種。MBR是早期Windows的唯一選擇,但是隨著物理磁盤的容量不斷增大。GPT結構成為目前的主流,最大支持超過2TB的容量,提供容錯,多分區支持,比MBR來的更加強大。
MBR(Master Boot Record )磁盤結構:
在Basic MBR Disk中的MBR中包含了幾種信息。
Bootstrap Code – 也叫Master boot code,它是一段可執行的代碼,主要作用是,掃描活動分區的分區表,尋找活動分區的開始扇區,加載啟動扇區到內存等功能。
Disk Signature - Windows的所有物理磁盤都有一個磁盤簽名的機制,如果沒有簽名windows則不能訪問該磁盤的數據。當Windows新掃描到一個物理磁盤,嘗試寫入一些磁盤簽名,用來標識這個磁盤。簽名的長度為8個字節。然后會寫入到第一個扇區,位置為0x01B8 - 0x01BB。簽名存儲在注冊表的HKLM\SYSTEM\MountedDevices位置。
Partition Table – 分區表,一個64字節的數據結構用來定義每個分區的起始位置。每個分區定義去大小為16個字節。因為這個設計,所以MBR的的擴展主分區最多只能支持4個。
一個簡單的Basic (MBR)的磁盤結構如下圖所示,我可以看到最外層的是物理磁盤(Disk),在物理磁盤的最前端包含MBR(Master Boot Record),這個例子中,定義了一個分區和NTFS邏輯卷。
MBR Disk支持最大四個主分區(Primary Patition),如果創建多個主分區的,則結構如下。一個物理磁盤中包含四個主分區,每個主分區包含一個文件卷。
如果啟用了擴展分區,則在擴展分區中可以包含多個邏輯卷。
GPT(GUID - Globally Unique Identifer)磁盤結構:
截止201年,大多數操作系統都支持GPT GPT Disk在主的MBR中包含幾個內容,GPT Disk的分區表包括以下幾個內容。在MBR硬盤中,分區信息直接存儲于主引導記錄(MBR)中(主引導記錄中還存儲著系統的引導程序)。但在GPT硬盤中,分區表的位置信息儲存在GPT頭中。但出于兼容性考慮,硬盤的第一個扇區仍然用作MBR,之后才是GPT頭。
Protective MBR - 和MBR在Partition Table中包含主分區信息不同的是,GPT Disk在磁盤的第一個扇區(Sector)為“Protective MBR”,它位于LBA0(通用的存儲尋址方式大小為512每單位)這個位置上。它包含的內容為磁盤的分區信息和初始的BIO啟動器。這是為了兼容性的考慮,保證一些遺留的MBR磁盤工具可以識別到GPT Disk。
Partition Table Header – 分區表頭定義了一些磁盤上可使用的塊,同時還定義了組成分區表的Partition Entries數目和大小(大小通常為128個字節)。GPT支持的64位版本的Windows Server 2003以上版本,支持創建最大128個分區,每個分區記錄大小為128個字節。在分區表頭中還記錄了磁盤的GUID,用來記錄自身的大小與位置以及備用GPT表頭的位置(位于磁盤的最后一個扇區)。同時還包括CRC32的校驗值。
Partition entries – GPT Disk用簡單直接的條目來描述分區。最初的16個字節用來標識分區類型。第二個16直接用來記錄改分區唯一的GUID。接下來三個8字節的記錄分別描述的初始LBA地址,結束LBA地址和分區屬性。最后72個字節為分區名。單個分區記錄大小為128個字節。通常Partition entries會從LBA2地址開始。
最后,為了為了減少分區表損壞的風險,GPT在硬盤最后保存了一份分區表的副本。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。