引导过程和服务

2024-01-02 18:51:35

宏内核(monolithic kernel):又称单内核和强内核,Unix,Linux把所有系统服务都放到内核里,所有功能集成于同一个程序,分层实现不同功能,系统庞大复杂,Linux其实在单内核内核实现了模块化,也就相当于吸收了微内核的优点。

一、引导过程

1.Linux操作系统引导过程

1.开机自检

通过bios程序检查硬件是否正常,然后根据bios中的启动项设置,去找内核文件,如果硬件出现问题则会卡在开机界面提示不同报错。

boot开机启动顺序:你可以把内核文件放在何处?

1硬盘 2移动设备,u盘,移动硬盘,光驱 3网络启动

2.mbr

运行放在MBR扇区里的启动 GRUB引导程序,MBR引导:第一阶段grub引导及加载分区表

mbr:因为grub太大,第一个扇区存不下,所有的grub程序,所以分成2部分引导硬件找到内核文件

3.grup

grub菜单:第二阶段grub加载内核文件到系统内存中运行起来,内核文件置:/boot/grub2/grub.cf(centos 7)(根据grup配置文件(grup.cfg)中记录的位置,去找到内核文件(高级语言))

4.加载内核(kernel)

把内核运行在内存中,加载内核:加载完毕进入操作系统

内核接过系统控制权以后,将完全掌控整个 Linux 操作系统的运行过程。在 CentOS 系统中,默认的内核文件位于“/boot/vmlinuz-3.10.0-514.el7.x86_64”。 总结:把内核和镜像文件系统加载到内存中 可以使用

5.启动进程(init进程初始化)

启动操作系统后需要启动进程,启动第一个祖宗进程

为了完成进一步的系统引导过程,Linux内核首先将系统中的“/sbin/init”程序加载到内 存中运行(运行中的程序称为进程),init 进程负责完成一系列的系统初始化过程,最后等待用户进行登录 总结:加载硬件驱动程序,内核把init进程加载到内存中运行。

centos7:systemd

?传统init依赖于串行执行Shell 脚本启动服务,导致效率低下,系统启动速度较慢 ? ?排对

? ? ?串行启动:一个一个按顺序启动
systemd能够将更多的服务进程并行启动,并且具有提供按需启动服务的能力,使得启动更少进程,从而提高系统启动速度 ? 大家一起

? ? ? 并行启动:全部一起启动

?

文字描述:?

二、操作系统运行级别

1、0关机??

init 0是关机

2、1单用户 类似windows的急模式
init 1是单用户安全模式

3、2、3 、4都是字符界面
init 2、init 3 、init 4都是字符界面,但init 4(没用过),init2少些功能(nfs)所以常用的是init 3级别

4、 5 图形界面
init 5是图形化界面

5、?6重启
init 6是重启

???????

文章来源:https://blog.csdn.net/zzzxxx520369/article/details/135343121
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。