LinuxGod

LinuxGod.net
Linux大神网——精选每一篇高品质的技术干货
  1. 首页
  2. 开源快讯
  3. 正文

Linux系统的启动过程,来说一说启动顺序详解

2023年1月10日 209点热度

你是否为了操作系统的系统过程而感到迷惑呢?或者你根本就不了解操作系统的启动过程,那么我们来说一说,Linux系统的启动过程

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

接触Linux的时间也不算短了,一直都是直接使用Linux操作系统进行一些工作,很少去了解系统从开机到能使用的整个过程,感觉有需要好好理解下整个系统的启动过程,故写这篇博客加深一下理解。

先通过一张图来简单了解下整个系统启动的流程,整个过程基本可以分为POST-->BIOS-->MBR(GRUB)-->Kernel-->Init-->Runlevel。下面会详细说明每个过程的作用。

linux启动过程流程图_linux启动过程_linux启动过程详解

BIOS

BIOS(Basic Input/Output System),基本输入输出系统,该系统存储于主板的ROM芯片上,计算机在开机时,会最先读取该系统,然后会有一个加电自检过程,这个过程其实就是检查CPU和内存,计算机最基本的组成单元(控制器、运算器和存储器),还会检查其他硬件,若没有异常就开始加载BIOS程序到内存当中。详细的BIOS功能,这边就不说了,BIOS主要的一个功能就是存储了磁盘的启动顺序,BIOS会按照启动顺序去查找第一个磁盘头的MBR信息,并加载和执行MBR中的Bootloader程序,若第一个磁盘不存在MBR,则会继续查找第二个磁盘(PS:启动顺序可以在BIOS的界面中进行设置),一旦BootLoader程序被检测并加载内存中,BIOS就将控制权交接给了BootLoader程序。

MBR

MBR(Master Boot Record),主引导记录,MBR存储于磁盘的头部,大小为512bytes,其中,446bytes用于存储BootLoader程序,64bytes用于存储分区表信息,最后2bytes用于MBR的有效性检查。

GRUB

GRUB(Grand Unified Bootloader),多系统启动程序,其执行过程可分为三个步骤:

Stage1:这个其实就是MBR,它的主要工作就是查找并加载第二段Bootloader程序(stage2),但系统在没启动时,MBR根本找不到文件系统,也就找不到stage2所存放的位置,因此,就有了stage1_5

Stage1_5:该步骤就是为了识别文件系统

Stage2:GRUB程序会根据/boot/grub/grub.conf文件查找Kernel的信息,然后开始加载Kernel程序,当Kernel程序被检测并在加载到内存中,GRUB就将控制权交接给了Kernel程序。

PS:实际上这个步骤/boot还没被挂载,GRUB直接识别grub所在磁盘的文件系统linux启动过程,所以实际上应该是/grub/grub.conf文件,该配置文件的信息如下:

grub.conf:

#boot=/dev/sda

default=0 #设定默认启动的title的编号,从0开始

timeout=5 #等待用户选择的超时时间

splashimage=(hd0,0)/boot/grub/splash.xpm.gz #GRUB的背景图片

hiddenmenu #隐藏菜单

title CentOS (2.6.18-194.el5PAE) #内核标题

root (hd0,0) #内核文件所在的设备

kernel /vmlinuz-2.6.18-194.el5PAE ro root=LABEL=/ #内核文件路径以及传递给内核的参数

initrd /initrd-2.6.18-194.el5PAE.img #ramdisk文件路径

内核的启动Kernel

内核文件都是以一种自解压的压缩格式存储以节省空间,它与一个初始化的内存映像和存储设备映射表都存储于 /boot目录之下。在选定的内核加载到内存中并开始执行后,在其进行任何工作之前,内核文件首先必须从压缩格式解压自身。一旦内核自解压完成,则加载 systemd 进程(其是老式 System V 系统的 init 程序的替代品),并转移控制权到 systemd。

linux启动过程流程图_linux启动过程_linux启动过程详解

这就是引导过程的结束。此刻,Linux 内核和 systemd 处于运行状态,但是由于没有其他任何程序在执行linux服务器配置与管理,故其不能执行任何有关用户的功能性任务。

Init

操作系统启动,就是正常的加载操作系统。启动过程紧随引导过程之后kali linux,启动过程使 Linux 系统进入可操作状态,并能够执行用户功能性任务。

Runlevel

runlevel,运行级别,不同的级别会启动的服务不一样,init会根据定义的级别去执行相应目录下的脚本,Linux的启动级别分为以下几种

linux启动过程流程图_linux启动过程_linux启动过程详解

以上几步,就是Linux系统启动的过程,如果有什么地方不了解linux启动过程,可以再下面评论和留言。大家一起来谈论Linux系统,玩转Linux系统,让我们的知识架构更加进一步。

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: bios grub kernel linux系统 mbr
最后更新:2023年1月10日

Linux大神网

每日更新,欢迎收藏♥ 不积跬步无以至千里,加油,共勉。

点赞
< 上一篇
下一篇 >

Linux大神网

每日更新,欢迎收藏♥
不积跬步无以至千里,加油,共勉。

最新 热点 随机
最新 热点 随机
Ubuntu上安装SMplayer.6.10-PPA源在CentOS5.5下安装使用 centos启动图形界面的方法.x1,关闭界面 Linux下进程与线程概念重构 Linux中的十大开源播放器C编写 多进程和多线程的区别,你知道几个? Linux发行版中可用的7款最佳开源视频播放器 Linux系统安装网卡驱动的具体操作流程进行说明 如何在Linux上安装视频播放器installvlc 晚上暴露于蓝光,睡眠质量大打折扣 如何安装便携式WiFi驱动程序?360wifi驱动的教程 CentOS云服务器搭建网站和CentOS搭建DNS解析服务 如何在linux上创建一个用户,减少不必要的沟通成本 如何在Linux系统中查看CPU信息使用lscpu命令行 linux服务器搭建ftp的6下安装vsftpd步骤及步骤 贵州工业职业技术学院求职意向期望工作地--诚聘英才 实验1Linux安装实验掌握虚拟机的使用 Linux系统tar命令的使用方法及使用命令教程 linux 开源nas系统 杰和科技NAS服务器媒体见面会在京召开 Android与Linux开发大不同 Linux系统软件安装包:自己动手,安装不用愁
嵌入式Linux操作系统学习规划+LINUX路线,主攻江苏电信天翼校园客户端故障指引及解决办法(101)英特尔GMAGMA950显卡驱动程序/WIN8/8.1电信校园网宽带用USB数据线共享给电脑无线上网国防科大开源操作系统:它只是一个吉祥的象征10个常用Linux文本查看命令及其详细说明和使用示例Linux嵌入式系统内核裁剪与定制方法的介绍情况淘宝教育热卖C语言编程开发C++程序设计零基础入门课程从CPU、内存、硬盘、显卡等这些方面安装Linux系统的最低配置Linux通过chkconfig设置开机启动服务创建的几种常见方式(技术分析)Linux多线程的使用与操作系统的区别通常rar命令由一个主命令加若干选项(可选)构成RedHatLinux中自动运行程序中的应用linux 读写文件 关于Linux内核的神秘面纱,你知道几个?使用wget实用程序的有用命令行工具的使用怎么设置linux开机项自启动?方式是怎样的?嵌入式Linux应用层与驱动层要想学习关于Linux内核的交叉编译步骤和方法:步骤、方法STM32嵌入式linux开发流程及应用程序分析-STMlinux下有哪些文件在介绍lsof命令实用用法介绍?
玩蛇网推荐图文教程:python列表Linux系统补全输出重定向历史记录 mputrose,并改名为333bmp文件传送至服务器 电信校园网宽带用USB数据线共享给电脑无线上网 在多用户多任务中对每个用户运行环境的设置十分重要 Linux嵌入式系统内核裁剪与定制方法的介绍情况 Linux系统的修改权限与默认权限的分类及处理方法 轻松下载、安装和使用Linux RedHat系统 Linux文件系统上的文件属性用法命令用法格式命令 VMwareWindows10拥有一台搭载windows操作系统的电脑下载地址 问题服务器的安全直接影响着网站安全,可以让网站免遭受攻击 :2管理大部分命令的组成 透过阅读Linux内核代码的方式看内核源码的分析并非“高不可攀” 贝锐官网向日葵LinuxX系统安装路径下载及下载 Linux存储管理操作实践学号实验内容(9页珍藏版) 程序员不输入密码进入Linux系统,孩子们永远不知道下一个bug unix系统 鸟哥的Linux私房菜-基础学习篇(第三版) Linux为什么如此流行,了解一点它的历史会有所帮助 2023深圳基础软件技术论坛 Linux系统在开机的时候自动加载某些脚本或系统服务 Ubuntu这款这款.10版本镜像文件下载地址获取地址!
标签聚合
虚拟机 文件 内核 linux服务器 操作 应用 命令 软件 linux系统 文件目录
书籍
课程
技术群
技术干货大合集↓
  • 2023年9月 / 90篇
  • 2023年8月 / 93篇
  • 2023年7月 / 94篇
  • 2023年6月 / 90篇
  • 2023年5月 / 93篇
  • 2023年4月 / 90篇
  • 2023年3月 / 129篇
  • 2023年2月 / 84篇
  • 2023年1月 / 161篇
  • 2022年12月 / 187篇
  • 2022年11月 / 76篇
友情链接:

Linux书籍 | Linux命令 | Linux系统 | RHCE红帽认证 | Linux软件 | Linux教程 | CentOS系统 | Linux内核 | Linux服务器 | Linux大神 | IT资源

COPYRIGHT © 2023 linuxgod.net ALL RIGHTS RESERVED.