linux启动过程面试,Linux的启动流程,回答面试官自用

2023-05-16

093e851fe238306a1ac97c04a8b222c8.png

对于Linux的启动流程,是一个很复杂的过程

下面我来介绍一下:

1、当我们按下电源键通电后,我们的BIOS①会去检查硬件(CPU、显卡、硬盘、光驱等等)是否有问题,取得主机的各项硬件配置后,就会去找启动设备,这里说的就是硬盘,找到硬盘的MBR②,这时候就将控制权交到MBR中

2、MBR的功能就是去找到安装在MBR的grub③菜单,也就是Boot loader,随后grub就把系统的kernel(内核)给引导出来了

3、当boot loader读取到kernel文件后,会将内核加载到内存中,此时内核会取代BIOS的功能,重新检查一次硬件,在硬件驱动成功后,kernel会主动调用init进程

4、接着就会初始化系统了,init会取得/etc/inittab④的信息,获取系统的运行级别

5、init执行/etc/rc.d/rc.sysinit⑤文件来准备软件执行的操作环境(网络、时区等)

6、init执行run-level的各个服务等

7、init执行/etc/rc.d/rc.local⑥文件

8、init执行终端机模拟程序mingetty来启动login进程,最后就是等待用户登陆

①BIOS:Basic Input Output System,基本输入输出系统。

它是一个韧体,写在主板上的一个ROM芯片的程序,CMOS就是ROM芯片,是一个硬件,要与之区别

②MBR:Master Boot Record,主引导记录。在硬盘的0柱面、0磁头、1扇区,称为主引导扇区。

有512个字节:主引导程序(Boot loader)占446个字节

分区表信息:占64字节

结束校验位:2字节(固定为22AA)

③GRUB:Grand Unified Bootloader,多重操作系统的启动管理器。GRUB可用于选择操作系统分区上的不同内核,也可用于向这些内核传递启动参数。

④/etc/inittab:这个配置文件会去默认运行哪个级别的系统,id:5:initdefault: 意思是默认运行5级别的系统

⑤/etc/rc.d/rc.sysinit:会设置主机名,启动网络服务,加载外部设备(鼠标、键盘)反正就是加载各项系统服务,设置系统环境。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

linux启动过程面试,Linux的启动流程,回答面试官自用 的相关文章

随机推荐