BusyBox Init启动过程
来源:互联网 发布:12369网络举报管理平台 编辑:程序博客网 时间:2024/05/29 11:19
使用busybox制作的文件系统,内核启动后,就会开始执行busybox init进程,这个和一般的sys v init一样。
busybox要完成以下工作:
①为init进程设置信号处理进程
②对控制台进行初始化
③解析inittab文件,即/etc/inittab
④在默认情况下会运行系统初始化脚本,/etc/init.d/rcS
⑤运行导致init暂停的inittab命令(动作类型wait)
⑥运行仅执行一次的inittab命令(动作类型once)
在busybox源码目录下的/example/inittab文件中可以看到inittab的格式:
Format for each entry: <id>:<runlevels>:<action>:<process>
但是busybox不支持runlevels,所以该域会被忽略掉
<id>运行程序的控制台
<runlevels>运行级别,被忽略了
<action>动作类型
<process>程序名
其中动作类型包括:sysinit, respawn, askfirst, wait, once,restart, ctrlaltdel, shutdown,其作用如下:
sysinit:指定系统初始化脚本
respawn:在对应进程结束后马上启动此程序
askfirst:类似于respawn,但会在终端上显示”Please Enter to active this console”,用户回车后程序启动。
wait:指示init进程在执行完此命令行对应程序后才能再处理其他动作。
once:只执行一次,且不会等待完成
restart:init进程重新启动的时候执行的进程,实际上就是init本身。
ctrlaltdel:按下三个组合键后执行的程序
shutdown:关机时执行的程序
如果busybox没有找到inittab,那么它会使用默认配置,配置如下:
::sysinit:/etc/init.d/rcS
::askfirst:/bin/sh
::ctrlaltdel:/sbin/reboot
::shutdown:/sbin/swapoff -a
::shutdown:/bin/umount -a -r
::restart:/sbin/init
默认的终端是/dev/console,如果/dev/console不是实际终端,那么它就会去尝试tty2,tty3等。
::askfirst:-/bin/sh,加上一个”-“,不知道有什么用。
- 【Busybox】Busybox init启动过程
- BusyBox Init启动过程
- Busybox init启动过程分析
- busybox init启动过程分析
- Busybox init进程启动过程分析
- Busybox init进程启动过程分析
- Busybox init进程启动过程分析
- Busybox init进程启动过程分析
- busybox内init进程启动过程
- Busybox init进程启动过程分析
- busybox init 过程
- busybox init初始化过程
- 制作文件系统之三:BusyBox init的启动过程
- Busybox init进程启动过程 (资料收集)
- 嵌入式Linux使用Busybox init进程启动过程分析
- 嵌入式Linux使用Busybox init进程启动过程分析
- 嵌入式Linux使用Busybox init进程启动过程分析
- 嵌入式Linux使用Busybox init进程启动过程分析
- 10.12.19 ~ 10.12.26
- 依赖倒置原则--DIP
- 移植madplay到FL2440
- 10.12.27 ~ 11.01.01
- PeopleCode
- BusyBox Init启动过程
- 单一职责原则--SRP
- 关于html页面中js代码的位置
- 制作yaffs2文件系统
- 开放封闭原则--OCP
- Liskov替换原则--LSP
- 大家好
- 如何在网页实现自己的划词搜索
- 接口隔离原则--ISP