硬盘制为启动盘的过程 操作系统的引导过程
硬盘制为启动盘的过程 && 操作系统的引导过程
文章目录
- 硬盘制为启动盘的过程 && 操作系统的引导过程
- 1.硬盘制为启动盘的过程
- 0.简略版
- 1.物理格式化
- 2.磁盘分区
- 3.逻辑格式化
- 1.各个部分概念及作用
- 2.各个部分是否被初始化(感兴趣可以看看)
- 4.安装操作系统
- 2.操作系统引导过程(开机的过程)
1.硬盘制为启动盘的过程
大致流程:
0.简略版
1.磁盘的物理格式化
用于划分磁道和扇区,为存储数据准备物理空间
2.磁盘分区
将整个硬盘划分为多个独立的逻辑区域(如C盘、D盘),便于数据管理。此过程会创建主引导记录(MBR),其中包含了分区信息。
3.磁盘的逻辑格式化
在每个分区内创建文件系统(如NTFS、FAT32、EXT4),初始化引导块、超级块、根目录等管理结构。这样,操作系统才能识别和读写该分区。
4.安装操作系统
- 将操作系统(如Windows、Linux)的核心文件复制到活动分区(通常是C盘)。
- 安装引导程序(如Windows的Boot Manager、Linux的GRUB),该程序会被写入引导块。电脑启动时,BIOS/UEFI通过MBR/GPT找到活动分区,并执行该分区的引导块中的引导程序,从而加载操作系统内核。
1.物理格式化
磁盘制造出来没有分区,所以就在物理格式化的时候进行扇区的划分,将磁盘的各个磁道划分为扇区,使其具备数据存储能力并检测坏扇区,用备用扇区替换坏扇区,这之后就可以把磁盘拿出来卖了
一个扇区通常可以分为头、数据区域(如512B大小)、尾三个部分组成。管理扇区所需的各种数据结构一般存放到头尾两个部分,包括扇区校验码(如奇偶校验码一类)
扇区号也是这一阶段产生的
坏扇区对于操作系统也是透明的,它意识不到坏扇区的存在
2.磁盘分区
在可以使用磁盘存储文件之前,操作系统还要将自己的数据结构记录到磁盘上,分为磁盘分区和逻辑格式化两步
分区是在一个物理磁盘上创建多个独立的逻辑存储区域。
将磁盘分为由一个或多个柱面组成的分区(即我们熟悉的C盘、D盘等形式的分区),每个分区的起始扇区和大小都记录在磁盘主引导记录的分区表中。此过程会创建主引导记录(MBR),其中包含了分区信息(分区表)。
3.逻辑格式化
你买到磁盘以后,插到电脑上,电脑问你要不要对磁盘进行格式化。这个格式化指的就是逻辑格式化。
核心任务:建立文件系统并完成文件系统的初始化。在每个分区内创建文件系统(如NTFS、FAT32、EXT4),初始化引导块、超级块、根目录等管理结构。这样,操作系统才能识别和读写该分区。
1.各个部分概念及作用
-
主引导记录(MasterBootRecord,MBR),位于磁盘的0号扇区,用来引导计算机,MBR后面是分区表,该表给出每个分区的起始和结束地址。表中的一个分区被标记为活动分区,当计算机启动时,BIOS读入并执行MBR。MBR做的第一件事是确定活动分区,读入它的第一块,即引导块。
-
磁盘引导程序:
启动操作系统时执行该程序,找到我们安装了操作系统的分区(比如C盘),在找到该分区的引导块,再执行引导块里面的引导程序 -
分区表:
记录了整个磁盘分成了几个分区,每个分区的起始地址和结束地址
-
-
引导块(bootblock),MBR执行引导块中的程序后,该程序负责启动该分区中的操作系统。为统一起见,每个分区都从一个引导块开始,即使它不含有一个可启动的操作系统,也不排除以后会在该分区安装一个操作系统。Windows系统称之为分区引导扇区。
除了从引导块开始,磁盘分区的布局是随着文件系统的不同而变化的。文件系统经常包含有如上图所列的一些项目。
- 超级块(superblock),包含文件系统的所有关键信息,在计算机启动时,或者在该文件系统首次使用时,超级块会被读入内存。超级块中的典型信息包括分区的块的数量、块的大小、空闲块的数量和指针、空闲的FCB数量和FCB指针等。
- 文件系统中空闲块的信息,可以使用位示图或指针链接的形式给出。
- i 结点,索引结点,连续存放,每个文件对应一个结点,可以把 i 结点区看成一个大数组;
- 根目录,它存放文件系统目录树的根部。
- 其他部分,存放了其他所有的目录和文件。
2.各个部分是否被初始化(感兴趣可以看看)
下面这个表格清晰地展示了逻辑格式化时对各个关键部分的初始化操作,感兴趣的话可以看看。
一句话概括就是除了主引导记录以外,其他的东西都被初始化了。
组件名称 | 在逻辑格式化中是否被初始化 | 初始化的具体内容 |
---|---|---|
引导块 (Boot Block) | 是 | 写入该分区的引导程序。如果该分区用于安装操作系统,引导程序负责加载系统内核;如果不是系统分区,此区域可能为空或包含一个基础引导程序。 |
超级块 (Superblock) | 是 | 写入该文件系统的关键元数据,例如:分区的总块数、块的大小、空闲块的数量和指针、文件系统魔数等。系统启动或首次使用该文件系统时,超级块会被读入内存。 |
空闲空间管理结构 | 是 | 初始化用于管理磁盘空闲区域的数据结构。具体形式因文件系统而异,例如:位示图 或 空闲块链表。初始化时会将所有空闲空间标记为可用。 |
i 结点区 (i-node area) | 是 (在类Unix文件系统中) | 创建并初始化 i-node(索引节点)数组。每个i-node用于未来存储一个文件的元数据(如权限、所有者、时间戳、数据块指针等)。初始化时,所有i-node被标记为未被使用。 |
根目录 (Root Directory) | 是 | 创建文件系统的根目录(/)。初始化时,根目录下为空,但文件系统可以从根目录出发建立新的目录和文件。 |
主引导记录 (MBR) | 否 | MBR(包括分区表)在磁盘分区时已被写入,逻辑格式化不会修改MBR。逻辑格式化是在MBR分区表所定义的每个分区内部进行工作。 |
4.安装操作系统
- 将操作系统(如Windows、Linux)的核心文件复制到活动分区(通常是C盘)。
- 安装引导程序(如Windows的Boot Manager、Linux的GRUB),该程序会被写入引导块。电脑启动时,BIOS/UEFI通过MBR/GPT找到活动分区,并执行该分区的引导块中的引导程序,从而加载操作系统内核。
2.操作系统引导过程(开机的过程)
系统启动过程中各个程序的执行过程:
1.ROM中的引导程序
2.MBR中的磁盘引导程序
3.分区的引导块里面的分区引导程序
4.根目录下面的操作系统的初始化程序