本文会介绍一些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文章
11354浏览量
210657 -
计算机
+关注
关注
19文章
7553浏览量
88797 -
MBR
+关注
关注
0文章
12浏览量
11163
发布评论请先 登录
相关推荐
介绍一些实用的Linux命令
![介绍<b class='flag-5'>一些</b>实用的<b class='flag-5'>Linux</b>命令](https://file1.elecfans.com/web2/M00/8E/A2/wKgZomTIvy6AezaJAAAP5WD6RY4063.png)
评论