概述
http://www.linuxidc.com/Linux/2011-12/49878p3.htm
Linux内核启动过程的最后一步就是通过do_execve()函数加载执行用户空间的init程序(如BusyBox init、sysvinit等等),它是系统中所有其他进程的父进程(进程ID为1),在系统运行期间以守护进程的形式一直存在,主要用来完成系统的各项配置以及监视其子进程的运行状况。
1、BusyBox init的执行过程
除了基本的命令之外,BusyBox也支持init功能,跟其他init程序一样,BusyBox的init程序也是用来完成系统的各项配置。在busybox-1.19.2中,init的执行过程大致如下:
(1)、在执行parse_inittab()函数时,如果/etc/inittab文件不存在,BusyBox init会使用以下的默认配置:
- ::sysinit:/etc/init.d/rcS
- ::askfirst:/bin/sh
- ::ctrlaltdel:/sbin/reboot
- ::shutdown:/sbin/swapoff -a
- ::shutdown:/bin/umount -a -r
- ::restart:/sbin/init
(2)、在开发板上执行env命令即可查看配置好的环境变量。
- / # env
- USER=root
- HOME=/
- TERM=vt102
- PATH=/sbin:/usr/sbin:/bin:/usr/bin
- SHELL=/bin/sh
- PWD=/
最后
以上就是温暖诺言为你收集整理的busybox init初始化过程的全部内容,希望文章能够帮你解决busybox init初始化过程所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复