聊聊MBR與GPT分區表

首先,我們先從硬盤存儲開始,我們的機械硬盤HDD(Hard Disk Drive),盤片,磁頭,盤片轉軸及控制電機,磁頭控制器,數據轉換器,接口,緩存等幾個部分組成。機械硬盤中所有的盤片都裝在一個旋轉軸上,每張盤片之間是平行的,在每個盤片的存儲面上有一個磁頭,磁頭與盤片之間的距離比頭髮絲的直徑還小,所有的磁頭聯在一個磁頭控制器上,由磁頭控制器負責各個磁頭的運動。磁頭可沿盤片的半徑方向運動,加上盤片每分鐘幾千轉的高速旋轉,磁頭就可以定位在盤片的指定位置上進行數據的讀寫操作。數據通過磁頭由電磁流來改變極性方式被電磁流寫到磁盤上,也可以通過相反方式讀取。硬盤爲精密設備,進入硬盤的空氣必須過濾。

聊聊MBR與GPT分區表
對於硬盤扇區、磁道、柱面的基本概念的理解:
head磁頭:每個盤片一般有上下兩面,分別對應1個磁頭,共2個磁頭
track 磁道:從外圈往裏圈0、1、2按順序編號
cylinder 柱面:磁道的集合,每個盤片的0磁道組合就是0柱面,1磁道組合就是1柱面
sectors 扇區:每個磁道又劃分大小爲512bytes的扇區
platter 圓盤:盤片

聊聊MBR與GPT分區表
CHS(cylinder head sector):
什麼是CHS?
百度百科:https://baike.baidu.com/item/CHS/3794705?fr=aladdin
從CentOS6中,我們依然可以看到其fdisk -l保留了CHS尋址方式的顯示方式
CHS是一個三元組,組成如下

  • 採用24bit位尋址
  • 其中前10位表示cylinder,中間8位表示head,後面6位表示sector
  • 最大尋址空間8GB (512*2^6*2^10*2^8=8589934592=8GB)

LBA(logical block addressing)

  • LBA是一個整數,通過轉換成CHS格式完成磁盤具體尋址
  • ATA-1規範中定義了28位尋址模式,以每扇區512位組來計算,ATA-1所定義的28位LBA上限達到128 GiB。2002年ATA-6規範採用48位LBA,同樣以每扇區512位組計算容量上限可達128 Petabytes

由於CHS尋址方式的尋址空間在大概8GB以內,所以在磁盤容量小於大概8GB時,可以使用CHS尋址方式或是LBA尋址方式;在磁盤容量大於大概8GB時,則只能使用LBA尋址方式

我們爲什麼分區?

  • 優化I/O性能
  • 實現磁盤空間配額限制
  • 提高修復速度
  • 隔離系統和程序
  • 安裝多個OS
  • 採用不同文件系統

兩種分區方式:MBR,GPT

  • MBR: Master Boot Record,1982年,使用32位表示扇區數,分區不超過2T
  • 如何分區:按柱面
  • 0磁道0扇區:512bytes
    • 446bytes: boot loader
    • 64bytes:分區表,其中每16bytes標識一個分區
    • 2bytes: 55AA
  • MBR分區中一塊硬盤最多有4個主分區,也可以3主分區+1擴展(N個邏輯分區)

MBR分區結構

  • 硬盤主引導記錄MBR由4個部分組成
  • 主引導程序(偏移地址0000H--0088H),它負責從活動分區中裝載,並運行系統引導程序
  • 出錯信息數據區,偏移地址0089H--00E1H爲出錯信息,00E2H--01BDH全爲0字節
  • 分區表(DPT,Disk Partition Table)含4個分區項,偏移地址01BEH--01FDH,每個分區表項長16個字節,共64字節爲分區項1、分區項2、分區項3、分區項4
  • 結束標誌字,偏移地址01FE--01FF的2個字節值爲結束標誌55AA
    聊聊MBR與GPT分區表

聊聊MBR與GPT分區表

GPT分區

  • GPT:GUID(Globals Unique Identifiers) partition table 支持128個分區,使用64位,支持8Z( 512Byte/block )64Z ( 4096Byte/block)
  • 使用128位UUID(Universally Unique Identifier) 表示磁盤和分區 GPT分區表自動備份在頭和尾兩份,並有CRC校驗位
  • UEFI (統一擴展固件接口)硬件支持GPT,使操作系統啓動
    聊聊MBR與GPT分區表

MBR與GPT分區表的開機啓動

作者:知乎用戶
鏈接:https://www.zhihu.com/question/28471913/answer/155332057
來源:知乎
著作權歸作者所有。商業轉載請聯繫作者獲得授權,非商業轉載請註明出處。

UEFI+GPT最好用64位操作系統。

似乎人人都可以張嘴就說“我懂電腦”,但是總有一些看起來完全不懂但實際上非常基礎的東西讓“懂”與“不懂”清晰地劃清界限。比如UEFI+GPT就是其中之一,那些之前認爲自己已經精通電腦的人,遇到這個東西,忽然發現自己連繫統都不會裝了。 儘管UEFI以及GPT從誕生迄今已經十餘年了,但是由於它們的不普及性,導致對於絕大多數人來講它們是完全陌生的 ,甚至根本就不知道還有這種東西。 但是由於Windows8操作系統的面世,預裝Windows8的電腦開始統一採用UEFI+GPT,很多人被迫接觸到,感覺就像突然從天上掉下來的東西一樣,無所適從,一籌莫展—— “這到底是個什麼東西呢?” 一旦出現系統問題,唯一能做的解決辦法除了品牌機自帶的系統還原,最大能力不過就是把UEFI關閉,把硬盤從GPT再轉成MBR,從而徹底毀掉UEFI+GPT的優勢,重新回到陳舊落後的BIOS+MBR的系統安裝和運行方式上來。

1、GPT能使用大於2.2T的硬盤,MBR不行。支持最大卷爲18 EB(1EB=1048576TB)。

2、GPT可以支持無限個分區,微軟目前的限定是128個。Linux、ubuntu、macos都能支持這種分區格式。MBR最多4個主分區,超過4個再分區只能通過邏輯分區。

3、GPT分區磁盤有備份分區表來提高分區數據結構的完整性。

4、UEFI + GPT 開機啓動更快,開機時跳過外設檢測,並且可以實現啓動時原生分辨率,搭載固態硬盤開機時間很短,十秒左右。(沒有開機硬件自檢會稍微快了那麼1、2秒)

5、UEFI + GPT 支持Secure Boot。通過保護預啓動或預引導進程,抵禦bootkit***,從而提高安全性。所有在開機時比Windows內核更早加載,實現內核劫持的技術,都可以稱之爲Bootkit。

6、UEFI BIOS 可用鼠標操作圖形界面,不再是枯燥的藍底白字的英文。(Intel提出,用於取代BIOS)。UEFI的優越特性:可操作性、安全性、兼容性、可擴展性。

BIOS+MBR的系統引導文件可以和系統文件在同一分區的根目錄,也可以不與系統文件同一分區,只要系統引導文件所在分區爲活動的主分區即可啓動操作系統;而UEFI+GPT只能把系統引導文件放置在ESP分區,且操作系統必須在另外的主分區,也就是說,UEFI+GPT強制要求系統啓動文件與系統文件必須分離,不在同一分區。

BIOS+MBR一旦系統安裝好之後,如果系統引導文件在單獨的分區,此分區可以在操作系統中可見,也可以設置此分區爲隱藏,系統都可以正常啓動;而UEFI+GPT系統引導文件所在的ESP分區在操作系統中爲不可見,進入系統後自動隱藏。


這個是傳統的Legacy運行流程:

<img src="https://pic3.zhimg.com/50/v2-ede91bfdb58b57e323480c97ed055a0e_hd.png" data-rawwidth="757" data-rawheight="116" class="origin_image zh-lightbox-thumb" width="757" data-original="https://pic3.zhimg.com/v2-ede91bfdb58b57e323480c97ed055a0e_r.png"&gt;
這個是UEFI運行流程:

<img src="https://pic4.zhimg.com/50/v2-4365730cda76f9ccf6c0ee083fddcba3_hd.png" data-rawwidth="775" data-rawheight="151" class="origin_image zh-lightbox-thumb" width="775" data-original="https://pic4.zhimg.com/v2-4365730cda76f9ccf6c0ee083fddcba3_r.png"&gt;
對比採用傳統BIOS引導啓動方式,UEFI BIOS減少了BIOS自檢的步驟,節省了時間,從而加快平臺的啓動。

----------拓展,興趣就往下讀--------------

BIOS和UEFI、MBR和GPT 搭配情況:

(1)BIOS+MBR:可用,可啓動系統。最常見!這是最傳統的,系統都會支持;唯一的缺點就是不支持容量大於2T的硬盤。

(2)BIOS+GPT:可用,但是無法啓動系統。BIOS是可以使用GPT分區表的硬盤來作爲資料盤的,但不能引導系統;若電腦同時帶有容量小於2T的硬盤和容量大於2T的硬盤,小於2T的可以用MBR分區表安裝系統,而大於2T的可以使用GPT分區表來存放資料也沒什麼問題。但系統須使用64位系統。

BIOS+GPT也是合理的模式,但這種模式下無法啓動此硬盤上的系統,而如果只是作爲存儲盤,則沒有什麼影響。主硬盤BIOS+MBR裝系統、軟件,次硬盤BIOS+GPT存儲文件,這是很多影音文件發燒友在使用的模式。

(3)UEFI+MBR:可以把UEFI設置成Legacy模式(傳統模式)、打開CSM兼容模塊,讓其支持傳統MBR啓動,但純屬瞎折騰,帶來的效果同BIOS+MBR。沒有意義。

(4)UEFI+GPT:可用,可啓動系統。最常見!未來趨勢。如果要把大於2T的硬盤作爲系統盤來安裝系統的話,就必須如此。而且系統須使用64位系統,否則無法引導。但系統又不是傳統在PE下安裝後就能直接使用的,引導還得經過處理才行。UEFI和GPT是相輔相成的。

UEFI+GPT並不能非常有效的提高開機速度(當然,還是有點作用的),網傳的X秒啓動,大多數是混淆了WIN8/8.1的假關機功能造成的。理性對待UEFI+GPT,這只是一個新模式,不是神話。

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