busybox init初始化过程

来源:互联网 发布:成都易森画室知乎 编辑:程序博客网 时间:2024/05/29 08:05

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会使用以下的默认配置: 

 
  1. ::sysinit:/etc/init.d/rcS  
  2. ::askfirst:/bin/sh  
  3. ::ctrlaltdel:/sbin/reboot  
  4. ::shutdown:/sbin/swapoff -a  
  5. ::shutdown:/bin/umount -a -r  
  6. ::restart:/sbin/init  

    (2)、在开发板上执行env命令即可查看配置好的环境变量。 

  1. / # env  
  2. USER=root  
  3. HOME=/  
  4. TERM=vt102  
  5. PATH=/sbin:/usr/sbin:/bin:/usr/bin  
  6. SHELL=/bin/sh  
  7. PWD=/  
0 0
原创粉丝点击