电子说
本文会介绍一些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开始。
下面我们对硬盘分区做一个总结:
软件是计算机的灵魂,没有运行任何软件的硬件是没有用的,操作系统就是用来管理计算机中各个硬件的软件。
但是在电脑开机前,操作系统也只是躺在硬盘上的一组数据而已,那么计算机要如何读取操作系统文件并运行它呢?这就涉及到计算机的启动程序了。
BIOS是写入到计算机主板上的一个固件(固件就是写入到硬件上的一个软件程序)。这个BIOS就是计算机启动的时候所执行的第一个程序。BIOS会根据用户的设置找到能够启动的设备(硬盘或U盘),如果启动的设备是硬盘,BIOS会从该硬盘的第一个扇区中读取MBR中的启动引导程序。至此,BIOS的工作就结束了,节下来就是MBR内的启动引导程序的工作了。
MBR内的启动引导程序的任务就是加载操作系统内核文件,这个启动引导程序是操作系统在安装的时候所提供的,所以它知道如何加载操作系统内核。
接下来就是操作系统内核开始接管计算机,启动引导程序的任务至此也圆满完成了。
整个启动流程到操作系统之前的过程总结如下:
全部0条评论
快来发表一下你的评论吧 !