android启动流程
2019-08-23 11:34:29 0 举报
Android开机流程
作者其他创作
大纲/内容
通电
app_main.cpp
组合按键
ActivityManagerSerive.java
ZygoteInit.java
AndroidRuntime.app
boot分区
系统更新
SystemServer.java
分区擦写
硬件初始化,接收按键输入
startHomeActivityLocked
init程序
1.系统准备工作 systemReady()2.发送开机广播 finishBooting()3.启动桌面应用 startHomeActivityLocked()
设备
正常模式
zygote进程:android母进程1.解析app_process的参数2.设置当前进程名为zygote3.调用AndroidRuntime的start方法
1.启动虚拟机startVm2.注册JNI环境startReg3.通过反射调用ZygoteInit的main方法
bootloader分区
到达App进程
fastboot
Lanucher
system_server:系统服务的工作进程1.初始化Looper:Looper.prepareMainLooper()2.加载系统服务的JNI库:System.loadLibrary(\"android_servers\")3.创建Android系统服务:startBootstrapServicesstartCoreServicesstartOtherServices(会执行ActivityManaferService.systemReady方法)
linux内核 Init recovery启动
recovery分区
擦除数据
bootloader模式
linux内核
init进程:第一个用户进程1.读取init.rc并执行2.格局fstab分区表挂载分区3.启动zygote等 /system/bin/app_process
收藏
收藏
0 条评论
下一页