rhel系统启动过程_Linux系统启动过程简介

1、BIOS加电自检

计算机启动后,首先会进行固件BIOS的自检,即所谓的POST,然后把保持在MBR主引导记录中的主引导加载程序到内存中

2、加载主引导加载程序(MBR)

主引导加载程序通过分区表查找活动分区,然后将活动分区的次引导加载程序从设备读入内存并运行

3、加载次引导加载程序(GRUB)

次引导加载程序显示GRUB选择界面,根据选择把相应操作系统的内核加载到内存中。如果用户不进行选择,那么GRUB会在5秒后自动

启动grub.conf文件设置的默认操作系统,GRUB确定要启动的操作系统后,它就会定位相应的内核映像所在的/boot/vmlinuz-。

GRUB会把内存映像加载到内存中,由于内核映像并不是一个可执行的内核,而是经过压缩的内核映像,GRUB需要对内核进行解压,然后加载到内存中并执行。至此引导加载程序GRUB完成它的任务,它会把控制权交给内核映像,由内核继续完成接下来的系统引导工作。GRUB的配置主要通过修改/boot/grub/grub.conf文件来完成,介绍其中2个参数:

(1)root(hdx,y):设置内核所在的磁盘分区,GRUB的硬盘表示方法和Linux是不同的。GRUB是由0开始计数,(hd0,0)则表示第一块硬盘的第一个分区,而linux中的表示则是hda1;(hd0,1)表示第一块硬盘的第一个逻辑分区,而Linux中则是hda5

(2)设置内核文件的名称,放在/boot文件中

4、Linux内核映像

在内核的引导过程中,会加载必要的系统模块,以挂载根文件系统/,完成后内核会启动init进程,并把引导的控制器交给init进程

5、init进程

init进程会挂载/etc/fstab中设置的所有文件系统,并根据/etc/fstab文件来执行相应的脚本进行系统初始化,如设备键盘、字体、设置网络、启用应用程序等。init进程是linux所有进程的起点,内核在完成内核引导后,便会加载init进程,其进程号是1,init进程启动后,会初始化操作系统,并启动特定的运行级别(Runlevel)下的自动运行程序。用户可以通过更改相关配置文件或使用图形化配置工具服务配置,自定义需要在系统启动时自动运行的服务。

内核映像在完成引导后,便会启动init进程。init进程对应的执行文件为/sbin/init,他的是系统中所有进程的发起者和控制者,所有的进程都是由它所衍生。如果init进程出现问题,系统的其他进程也会随之而受影响,由于是系统中第一个运行的进程,所有init进程的进程号永远是1。

init进程主要有两作用

(1)作为所用进程的父进程参照对象

(2)运行不同级别的程序:init进程另一个作用就是初始化操作系统,在进入特定的运行级别

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值