一.磁盤組成
磁盤主要由盤面(也叫盤片)、磁頭臂(也叫機械手臂)、讀寫頭(也叫磁頭)與轉軸組成,盤面又可以分為磁道、柱面,扇區
磁盤的基本構成如下:

盤面:磁盤是由一疊磁盤面組成
磁頭(Heads):每個磁頭對應一個磁盤面,負責該磁盤面上的數據的讀寫。
磁頭臂:磁頭臂具有伸展性,負責讀寫頭在盤片上進行讀寫操作
轉軸:讓盤面轉動
在盤面上,整個盤面上面好像有多個同心圓繪制的餅形圖,如圖所示

磁道(Track):當磁盤旋轉時,磁頭若保持在一個位置上,則每個磁頭都會在磁盤表面划出一個圓形軌跡,這些圓形軌跡就叫做磁道。
扇區(Sector):磁盤上的每個磁道被等分為若干個弧段,這些弧段便是磁盤的扇區,每個扇區可以存放512bytes的信息,在向磁盤讀取和寫入數據時,要以扇區為單位
柱面(Cylinders):所有盤面上的同一個磁道構成了一個柱面,柱面是分割磁盤的最小單位
磁盤總容量=盤面數量×每個盤面上的磁道數量×每個磁道上的扇區數量×扇區大小=Heads×Track×Sectors/Track×512bytes
二.最重要的第一個扇區
磁盤的第一個扇區最重要,他記錄了整塊磁盤最重要的信息,分別是:
主引導分區(MBR):在這里安裝引導加載程序,共446bytes,當系統開機時會主動讀取這個區塊的內容,這樣系統才會知道程序放在哪里且該如何開機
分區表(partition table):記錄整塊磁盤的分區狀態,有64bytes
三.磁盤分區表
柱面是磁盤分區的最小單位,因此給柱面編號。在分區表的64bytes容量中,分為四組記錄區,每組記錄區記錄了該區段的起始和結束柱面編號。磁盤分區表的作用圖如下:

因此這四個分區又叫做主分區或擴展分區。
在linux中,這四個分區分別叫做/dev/sda1、/dev/sda2、/dev/sda3、/dev/sda4
在windons中,叫做C,D,E,F
如果我們想分出超過4個分區怎么辦?這個時候就要用到邏輯分區的概念,先上一張圖

這里我們只用到了兩個分區表記錄,並且有一個擴展分區,在擴展分區里面又分出了多個邏輯分區
在linux中,這些分區叫/dev/sda5,/dev/sda6…最多可以有11個邏輯分區(5到15號),不使用2,3,4的原因是因為他們需要留給主分區或者擴展分區使用
注意:
主分區與擴展分區只能有4個
擴展分區最多只能有一個
邏輯分區是擴展分區切割得到的
主分區和邏輯分區可以被格式化,擴展分區不能被格式化
四.開機流程與主引導分區
1.BIOS:開機首先執行的程序,他會根據用戶的設置去取得能夠開機的硬盤,並且到該硬盤的第一個扇區讀取第一個扇區的MBR位置
2.MBR:執行引導加載程序(Boot loader),讀取系統內核文件
3.內核文件:開始操作系統的功能
Boot loader是由操作系統安裝在MBR上面的一套軟件,可以提供菜單(完成多重引導),載入內核文件,轉交其他loader
注意:Boot loader的轉交其他loader功能可以實現多重引導,也就是說,引導加載程序不僅可以安裝在MBR上外,還可以安裝在每個分區的引導扇區上,loader會做的事情就是把控制權交給系統內核或者其他loader
五.Grub
我們通常所說的Grub其實也是一種loader
裝載記錄:
基本引導裝載程序所做的唯一的事情就是裝載第二引導裝載程序。(grub太大,只能寫一部分在MBR中)
裝載Grub:
這第二引導裝載程序實際上是引出更高級的功能,以允許用戶裝載一個特定的操作系統。
裝載系統:
