01_busybox之init_main分析

回顾:
U-boot最终目的:启动内核
内核最终目的:启动应用程序,(init进程,通过sbin/init或其它)


init程序包括以下内容:
(1)读取配置文件
(2)解析配置文件
(3)根据配置文件,启动/执行用户程序


配置文件中包括:
(1)指定用户程序
(2)何时执行

/

busybox-> init_main
               parse_inittab                        // 解析init表
                     file = fopen(INITTAB, "r");    // 打开配置文件 "/etc/inittab"
                     new_init_action                // (1)创建一个init_action结构,内容用上面的内容填充
                                                       (2)把这个结构放入init_action_list链表
               run_actions(SYSINIT);                //执行SYSINIT这一类的action,即执行系统初始化
                     waitfor(a, 0);                 //执行应用程序,等待它执行完毕
                            run(a)                  //创建precess子进程(子进程就是<process> 里面的指定的程序)
                            waitpid(runpid, &status, 0);   //等待它结束
                     delete_init_action(a);         //把init_action结构在init_action_list链表里删掉
               run_actions(WAIT);
                     waitfor(a, 0);                 //执行应用程序,等待它执行完毕
                            run(a)                  //创建precess子进程(子进程就是<process> 里面的指定的程序)
                            waitpid(runpi

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值