美文网首页
Android系统启动流程(源码分析)

Android系统启动流程(源码分析)

作者: 蜂鸟之歌 | 来源:发表于2018-04-10 13:26 被阅读37次

    源码查看工具:Source Insight
    参考:Android系统启动流程
       Android应用程序启动过程源代码分析
       Android 7.0 ActivityManagerService(2) 启动Activity的过程:一

    Bootloader引导和Linux Kernel启动

    • Bootloader引导
    • 路径:bootable/bootloader/*
    • 加电后,CPU先执行bootloader引导程序,正常启动系统,加载boot.img到RAM,然后执行,boot.img中包含内核。
    • 引导程序是在Android操作系统开始运行前的一个小程序。引导程序是运行的第一个程序,因此它是针对特定的主板与芯片的,不是Android操作系统的一部分。引导程序是OEM厂商或者运营商加锁和限制的地方。
    • 引导程序分两个阶段执行。第一个阶段,检测外部的RAM及加载对第二阶段有用的程序;第二阶段,引导程序设置网络、内存等。这些对于运行内核是必要的,为了达到特殊的目标,引导程序可以根据配置参数或者输入数据设置内核。
    • Linux Kernel启动
    • 路径:kernel/*
    • 由bootloader加载kernel,kernel经自解压、初始化、载入built-in驱动程序,完成启动。Kernel启动后会创建若干内核线程(kernel thread),之后装入并执行程序/sbin/init/,载入init process,切换至user- space。

    三、Android启动
    Android从Linux系统启动有4个步骤:

    1. init进程启动 ramdisk.so
    2. Native服务启动
    3. System Server,Android服务启动
    4. Home启动

    相关文章

      网友评论

          本文标题:Android系统启动流程(源码分析)

          本文链接:https://www.haomeiwen.com/subject/senhmttx.html