作家
登录

Linux启动分析——init进程与app启动

作者: 来源: 2017-08-31 16:12:53 阅读 我要评论

   /* First run the sysinit command */ 
  •    run_actions(SYSINIT); 
  •    check_delayed_sigs(); 
  •    /* Next run anything that wants to block */ 
  •    run_actions(WAIT); 
  •    check_delayed_sigs(); 
  •    /* Next run anything to be run only once */ 
  •    run_actions(ONCE); 
  •  
  •    /* Now run the looping stuff for the rest of forever. 
  •     */ 
  •    while (1) { 
  •        ......  
    1. ::sysinit:/etc/init.d/rcS 

    这里调用run_action()运行链表中每一个entry,并且起首运行的是action为sysinit的动作

    总结

    这一段是init过程最开端要做的工作,设置一些旌旗灯号相干的器械,初始化console,然后设置情况变量,跟启动app似乎没有什么关系,不消管,持续往下看

    到这里,大年夜致搞清跋扈了init过程是怎么启动app的了,上流程图

    简单来说,init过程起首分析/etc/inittab文件,当然,可以本身修改busybox源码,让它大年夜随便率性文件开端分析,如不雅不存在inittab文件,则履行默认的action;如不雅inittab文件存在,则根据inittab文件中的条目履行,平日是去/etc/init.d/rcS文件中履行脚本敕令,当然,修改源码,你也可以让它履行其余脚本

    rcS脚本是以shell脚本说话编写,一般的套路是

    • 加载驱动模块
    • 设备收集,建桥、配网卡地址
    • 启动app 

    是否定义了宏CONFIG_FEATURE_USE_INITTAB?

    【编辑推荐】

    1. Linux根本防火墙设置和开放端口敕令
    2. 在Linux中瓜分和重组文件
    3. Linux Shell脚本履行超时怎么办?
    4. Linux法度榜样设计的一些优化办法
    5. 六个优雅的Linux敕令行技能
    【义务编辑:庞桂玉 TEL:(010)68476606】

      推荐阅读

      关于ES6的10个最佳特性

    ES6,正式名称是ECMAScript2015,然则ES6这个名称加倍简洁。ES6已经不再是JavaScript最新的标准,然则它已经广泛用于编程实践中。如不雅你还没用过ES6,如今还不算太晚...下面是10个ES6最>>>详细阅读


    本文标题:Linux启动分析——init进程与app启动

    地址:http://www.17bianji.com/lsqh/37057.html

    关键词: 探索发现

    乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

    网友点评
    自媒体专栏

    评论

    热度

    精彩导读
    栏目ID=71的表不存在(操作类型=0)