解浅析Linux系统启动过程:图解(linux系统启动流程图)

Linux 是一套开放源码操作系统,具有多用户多任务,多线程特性,想要使用 linux,那么就需要熟悉一下linux系统的启动过程,尽量让大家能够更加深入的理解其原理。

linux系统运行时,通常被称为引导过程,具体细分可以分为以下几个过程:

1、Boot Loader 启动,Boot Loader 启动过程基本上不会出现操作系统,是把 BIOS 中的启动项执行,加载界面的过程,并且最终停留到“系统用户界面”这一步。最常见的 Boot Loader 可以 LILO、 GRUB 等。

2、Kernel 加载,Linux 核心即Kernel 在启动的时候,会先加载一段机器语言的代码,然后再跳转到原来的代码中,然后继续执行往后的步骤。

3、初始化(Initialization),被称为初始化(Init), 具体完成进行硬件初始化、用户态检测、文件系统检测、文件设置初始化、内存注册等操作,完成初始化后,系统开始正式运行,而这个过程就是循环调用 Init 的进程,当 Init 函数被调用后,一般会将内核的版本信息、内存信息、硬盘分区信息等在终端上显示出来。

4、INIT 激活服务,Init 程序启动,首先激活的是后台的守护进程 subsystems,这些守护进程启动后,它们将提供非常多的服务,它们可以提供系统托管服务,网络服务,邮件服务,安全服务,和其他应用服务。

5、运行用户会话,服务子系统启动后,Init 就会调用 init 进程来运行会话程序,这个进程是以登录账户的身份来调度的,它的任务是启动与用户终端相关的会话进程,通常是启动一个 shell 并为用户创建一个缺省的环境。

最后,当 linux 系统的整个运行过程完成后,它就处于安全可用的状态,系统上的用户可以使用及安全地进行操作了。

//Boot Loader代码
boot_loader(){
1.设置页表
2.加载内核到内存
3.搜索硬盘内不同分区处理
4.执行内核中的系统调用функци
5.执行用户程序
}

//Kernel代码
kernel() {
1.初始化内存
2.加载设备驱动程序
3.初始化系统调用
4.启动服务进程
5.加载用户程序
}

以上就是Linux系统启动过程的全部内容,要想掌握到位,还是需要多多查看文档,了解 Linux 系统的常用指令,而且从代码的层面上也有很多深入的内容。


数据运维技术 » 解浅析Linux系统启动过程:图解(linux系统启动流程图)