Skip to content

SystemV启动流程

· 3 min

内核引导#

进入BIOS开机自检,BIOS接管硬件,将硬盘中的引导加载到内存中,找到第一个操作系统的内核并启动操作系统,读入**/boot**目录下的内核文件。

运行INIT启动操作系统#

INIT进程是系统所有进程的起点,用来初始化所有的进程。 INIT进程会读取配置文件/etc/inittab。

运行级别#

许多程序需要开机启动,在Windows叫做服务,在Linux叫做守护进程(daemon),INIT进程会启动这些开机启动的守护进程。 在不同的运行等级(runlevel) 下会有不同的守护进程。

系统初始化#

调用rc.sysinit脚本,完成系统初始化。 然后运行不同的rc脚本文件,这些脚本文件如果是S开头的文件,将以start运行,如果脚本是K开头的文件,而且已经处于运行态,就会以stop来停止这些已经启动的守护进程,然后重新开始运行。 保证当INIT改变运行级别时,所有相关的守护进程都将重启。

建立终端#

rc执行完毕后返回INIT。这时候系统的环境和守护进程就配置好了。 INIT接下来会打开6个终端,供用户来登录。 在2、3、4、5的运行级别中都将以respawn方式运行mingetty程序,mingetty程序能打开终端,设置模式。

用户登录系统#

一般来说有三种登录方式

命令行登录#

会有一个文本方式登录,mingetty会将用户输入的用户名密码传给login程序进行验证。