ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

系统的启动过程

2020-11-21 13:05:06  阅读:189  来源: 互联网

标签:引导 启动 程序 系统 装载 BIOS 固件 过程 MBR


引导过程概览

  启动过程在最近几年发生了很大的变化。现代BIOS的出现(UEFI)简化了早期引导阶段,从概念上来说。目前,大部分的Linux发行版都用系统管理守护进程(systemd daemon)systemd替代了UNIX中传统的init。systemd通过添加依赖管理、并发启动进程支持以及全面的日志记录等特性简化了引导过程。

  随着系统向云端迁移,引导管理也出现了变化。虚拟化、云实例、容器化的倾向降低了管理员接触物理硬件的需要。取而代之的是,镜像管理、API以及控制平面。

  引导过程中的大部分过程,管理员基本上无法直接进行交互控制。能做的要么是通过编辑系统启动脚本来修改引导配置,要么是改变传入内核的引导装载程序参数。

  在系统引导完毕之前,必须检查并挂载文件系统,启动系统守护进程。相关过程由init一次运行的一系列shell脚本或者是systemd负责解析的一组文件来控制。

系统固件

  机器加电后,CPU会固定执行存储在ROM中的引导代码。系统固件通常知晓主板上安装的所有设备,比如SATA控制器、网卡、USB控制器以及电源和温度传感器。除了允许在硬件层面配置这些设备,归案还可以让你选择是将设备呈现给操作系统还是将其隐藏。对于物理硬件,多数固件都提供了用户界面。不过这个界面一般都比较粗糙,而且不太容易访问到。通常情况下,你需要在按下电源的一瞬间,迅速按下特定的键(具体实现由各大主板厂商实现)。

  正常情况下,系统固件会侦测硬件和磁盘,执行一些简单的健康检查,然后查找下一阶段的引导代码。可以使用固件的用户界面指定引导设备,一般是通过设置一组可用设备的优先级来实现(例如,先尝试从硬盘驱动器启动,然后是USB,在然后是网络等)。多数情况下,系统的磁盘驱动器处于次启动优先级。要想从特定的驱动器启动,必须将其设置为最高启动优先级,同时确保将硬盘作为引导设备。

BIOS与UEFI

  传统的系统固件叫做BIOS,其英文全称为Basic Input/Output System,中文名称为基本输入/输出系统。目前,BIOS已经基本上被UEFI所替代,其英文全称为Unified Exensible Firmware Interface,统一可扩展固件接口。

BIOS

  BIOS认为引导设备是以主引导记录(Master  Boot Record,MBR)作为起始。MBR包括第一阶段的引导装载程序(也叫做“引导快”)和 一个原始的磁盘分区表。可供引导装载程序使用的空间非常有限,不足512字节,所以除了载入并运行第二阶段的引导装载程序之外,也干不了其它事情。

  引导块和BIOS并不能做到读取任意类型的标准文件系统,所以第二阶段的引导装载程序必须放在一个 容易找到的地方。在典型场景中,引导块从MBR中读取分区信息,识别出标注为“活动(active)”的磁盘分区。然后读取并执行位于该分区起始位置上的第二阶段引导装载程序。分区上的这个区域被称作卷引导记录。

  也可以将第二阶段引导装载程序放在MBR与第一个磁盘分区之间的闲置区。由于历史原因,第一个 磁盘分区是从第64个磁盘块开始的,因此这块闲置区至少有32KB,尽管仍不算大,但已经足够容纳一个文件系统驱动程序了。GRUB引导装载程序采用了该方案。

  要想引导成功,引导链上的所有组成部分都必须正确安装,彼此之间相互兼容。MBR引导块独立于操作系统,它假定第二阶段的引导过程始于某个特定位置,因此可以在此安装多种不同版本的装载程序。第二阶段引导装载程序普遍了解操作系统以及文件系统(可能支持多种操作系统和文件系统),另外还通常拥有自己的配置选项。

标签:引导,启动,程序,系统,装载,BIOS,固件,过程,MBR
来源: https://www.cnblogs.com/cs-vm/p/14015285.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有