android 6.0 源码纵向分析(开机流程)
在android纵向上主要是分析开机的启动流程,如图所示。这个过程从Init启动开始,到Launcher主界面显示结束。
首先,Init进程启动Zygote。SurfaceFlinger、Vold、等Native进程,当SurfaceFlinger进程被Init进程启动之后,它会去启动开机动画程序bootanimation,Init进程在启动SurfaceFlinger进程的同时也会启动Zygote进程,当Zygote进程启动之后会启动SystemServer进程,而SystemServer进程启动了核心服务AMS,WMS,PMS等,这些服务支撑了整个上层的应用程序,当SystemServer进程中的核心服务AMS启动好之后,AMS会启动android应用程序Launcher,Launcher会加载所有的应用图标到界面上,Launcher启动完成后,AMS会请求SurfaceFlinger退出开机动画,开机动画一退出,Launcher界面就显示出来了
本文详细解析了Android 6.0系统的开机启动流程,从Init进程启动开始,涉及Zygote进程、SurfaceFlinger进程及开机动画程序bootanimation的启动,直至Launcher主界面显示出来。关键步骤包括Zygote进程启动SystemServer进程,以及SystemServer进程中的AMS服务启动Launcher。
5660

被折叠的 条评论
为什么被折叠?



