嵌入式系统下的 linux 启动过程一般是:
1. 在 bootloader 中制定各种要求传给 linux 内核的参数,制作 ramdisk 或 ramfs 文件系统,并在开机后首先 mount 上,该文件系统主要负责包含启动运行的配置文件,嵌入式系统主要是/etc/inittab 和/etc/rcS 文件;
2. 在 init 进程启动后,进程首先执行/etc/inittab 文件,该文件语法下面介绍,一般包括三项内容就可
以启动。
busybox 的 init 完成系统的初始化工作,关机前的工作等等,我们知道在 Linux 的内核被载入之后,机器就把控制权转交给内核, linux 的内核启动之后,做了一些工作,然后找到根文件系统里面的 init 程序,并执行它, BusyBox 的 init 进程会依次进行以下工作:
1. 为 init 设置信号处理过程
2. 初始化控制台
3. 剖析/etc/inittab 文件
4. 执行系统初始化命令行,缺省情况下会使用/etc/init.d/rcS
5. 执行所有导致 init 暂停的 inittab 命令(动作类型: wait)
6. 执行所有仅执行一次的 inittab(动作类型: once)
一旦完成以上工作, init 进程便会循环执行以下进程:
1. 执行所有终止时必须重新启动的 inittab 命令(动作类型: respawn)
2. 执行所有终止时必须重新启动但启动前必须询问用户的 inittab 命令(动作类型: askfirst)
初始化控制台之后, BusyBox 会检查/etc/init
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交