本文會介紹一些Linux系統安裝前的一些預備知識,會涉及到MBR、BIOS和Boot loader等計算機基礎概念。
硬盤的第一扇區
在眾多設備中,與系統安裝關系最密切的就要數硬盤了。因為在安裝操作系統時,我們要做的一個最重要的事就是對硬盤進行分區,以便我們可以更加方便和高效的使用電腦。
在Linux系統中,一切設備都是以文件的形式存在的,所有設備對應的文件都存儲在/dev
路徑下。硬盤對應的文件名通常都是/dev/sd[a-p]
,但如果你使用的是虛擬機,那么硬盤對應的文件名很可能是/dev/vd[a-p]
。
在整個硬盤的存儲空間中,它的第一個扇區是特別重要的。硬盤的一個扇區是512字節大小,在第一個扇區的512字節空間中,存儲了下面兩個東西。
**1. **主引導記錄(Master Boot Record, MBR):安裝啟動引導程序的地方,有446字節;
**2. **分區表(partition table):記錄硬盤的分區狀態,有64字節。
分區表
由于分區表僅擁有64字節的存儲空間,因此最多僅能有存儲四組分區信息,每組分區信息記錄了對應分區在硬盤上的起始與結束的柱面號。假設硬盤設備文件名為/dev/sda,那么這四個分區在Linux系統中的設備文件名如下所示:
P1:/dev/sda1
P2:/dev/sda2
P3:/dev/sda3
P4:/dev/sda4
這四個分區可以作為主(Primary)分區,也可以作為擴展(Extended)分區。擴展分區的作用是使用額外的扇區來記錄分區信息,以使我們可以擁有超過4個的分區數量。
擴展分區本身并不能被用來格式化存儲數據。我們可以通過擴展分區所指向的那個區塊繼續存儲其它分區信息。從擴展分區中切割出來的分區叫做邏輯(Logical)分區。由于邏輯分區是由擴展分區繼續劃分出來的,所以邏輯分區可以使用的硬盤柱面范圍就是擴展分區所設置的范圍。
主分區、擴展分區和邏輯分區之間的關系如下圖所示:
圖中分區在Linux系統中的設備文件名分別如下:
P1:/dev/sda1
P2:/dev/sda2
L1:/dev/sda5
L2:/dev/sda6
L3:/dev/sda7
L4:/dev/sda8
注意到這次的文件中不包含/dev/sda3和/dev/sda4。因為前四個號碼都是保留給主分區和擴展分區用的,邏輯分區的設備號碼只能由5開始。
下面我們對硬盤分區做一個總結:
- 所謂的分區只是針對那個64字節的分區表進行設置而已;
- 硬盤默認的分區表僅能存儲四組分區信息,這四組分區可以是主分區或擴展分區;
- 擴展分區最多只能有1個;
- 邏輯分區是由擴展分區二次劃分出來的分區;
- 主分區和邏輯分區可以被格式化后存儲數據,擴展分區不能被格式化。
BIOS&MBR
軟件是計算機的靈魂,沒有運行任何軟件的硬件是沒有用的,操作系統就是用來管理計算機中各個硬件的軟件。
但是在電腦開機前,操作系統也只是躺在硬盤上的一組數據而已,那么計算機要如何讀取操作系統文件并運行它呢?這就涉及到計算機的啟動程序了。
BIOS是寫入到計算機主板上的一個固件(固件就是寫入到硬件上的一個軟件程序)。這個BIOS就是計算機啟動的時候所執行的第一個程序。BIOS會根據用戶的設置找到能夠啟動的設備(硬盤或U盤),如果啟動的設備是硬盤,BIOS會從該硬盤的第一個扇區中讀取MBR中的啟動引導程序。至此,BIOS的工作就結束了,節下來就是MBR內的啟動引導程序的工作了。
MBR內的啟動引導程序的任務就是加載操作系統內核文件,這個啟動引導程序是操作系統在安裝的時候所提供的,所以它知道如何加載操作系統內核。
接下來就是操作系統內核開始接管計算機,啟動引導程序的任務至此也圓滿完成了。
整個啟動流程到操作系統之前的過程總結如下:
- BIOS:計算機啟動后會主動執行的固件,它會找到一個可啟動的設備;
- MBR:位于可啟動設備的第一個扇區內的一塊存儲空間,只有446字節,用于存儲啟動引導程序;
- 啟動引導程序(boot loader):一個可以加載操作系統內核文件的程序;
-
Linux
+關注
關注
87文章
11229瀏覽量
208927 -
計算機
+關注
關注
19文章
7421瀏覽量
87715 -
MBR
+關注
關注
0文章
12瀏覽量
11136
發布評論請先 登錄
相關推薦
評論