Hi,欢迎来到华清远见移动互联网学院官网!国内王牌JAVAEE培训、Android培训、Python培训、HTML5培训、UI培训、JAVA培训、VR培训机构!

  • 400-611-6270
  • 新浪微博
  • 微信
您当前的位置:移动互联网学院 > Android开发 > Android启动的一般流程

Android启动的一般流程

时间:2017-08-23 09:20 来源:移动互联网学院

一、Android启动的流程

Android启动的流程如下图所示(图片来自互联网):

二、Android启动的流程说明

Step1:系统上电后,系统引导代码开始查找Boot Rom并将引导程序加载到到RAM。

Step2:Boot Loader引导程序是一段针对不同硬件编写的引导程序,它的作用主要是检测外部的RAM以及加载对第二阶段有用的程序,引导程序设置网络、内存等等。

Step3:内核启动时,将自动设置缓存、计划列表、加载驱动。当内核完成系统设置,它首先在系统文件中寻找”init”文件,然后启动root进程或者系统的第一个进程(也就是我们常说的祖先进程)。

Step4: init进程有两个责任,一是挂载目录,比如/sys、/dev、/proc,二是运行init.rc脚本。对于init.rc文件,Android中有特定的格式以及规则。在Android中,我们叫做Android初始化语言。Android初始化语言由四大类型的声明组成,即Actions(动作)、Commands(命令)、Services(服务)、以及Options(选项)。

Step5: Zygote是一个虚拟器进程,Zygote让Dalvik虚拟机共享代码实现预系统的加载以及初始化核心库类。

Step6:运行环境请求Zygote运行系统服务,随后启动系统的电源管理、Activity管理器、包管理器、蓝牙、挂载、状态栏、硬件等各种服务,实现Android系统的启动及运行。

  • 北京

    010-82600385/6

    北京市海淀区西三旗悦秀路北京明园大学校内

  • 上海

    021-54485127

    上海市徐汇区漕溪路250号银海大楼11层

  • 深圳

    0755-25590506

    深圳市龙华新区人民北路美丽AAA大厦15层

  • 成都

    028-85405115

    成都武侯区科华北路99号科华大厦2层

  • 南京

    025-86551900

    南京市白下区汉中路185号鸿运大厦11层

  • 武汉

    027-87804688

    武汉工程大学卓刀泉校区科技孵化器大楼11层

  • 西安

    029-88756251

    西安市高新区高新1路12号天公大厦3层

  • 广州

    020-38342087

    广州市天河软件园柯木塱园5栋三层

  • 沈阳

    024-24349000

    沈阳市沈河区北顺城路137号锦峰大厦7层

  • 济南

    0531-88898293

    济南市高新区舜华路三庆世纪财富中心B3座6层

  • 重庆

    023-68064704

    重庆市九龙坡区渝州路87号双薪时代九楼

  • 长沙

    0731-88713136

    长沙市开福区芙蓉中路海东青大厦B座11楼

Copyright © 2004-2017 华清远见教育集团 版权所有,沪ICP备10038863号-3,京公海网安备110108001117号