#############################################
本文为极度寒冰原创,转载请注明出处
#############################################
Android的启动流程绝大部分人都知道,但是大多数人都是这样描述的:
Android启动,首先是启动Bootloader,然后挂载kernel,挂载完kernel之后,会启动android的init进程,init进程会去孵化Zygote,Zygote是android的重要支柱之一,然后由zygote启动的systemserver,systemserver启动了系统的各种关键的service,然后service启动后,就进入了Launcher的apk,启动完毕。。
这么说的确可以简单的概括android的启动过程,但是,android的启动过程绝不仅仅是这些。
我们可以讨论如下的问题:
ap和bp的模块是怎么连接的?
init进程是如何解析init.rc的呢?
init.rc的语法是什么呢?
init进程如何去启动zygote?
zygote的功能是什么?
........
在读完android启动流程分析的一系列文章之后,相信会对android的启动流程有个更深层次的认识。
首先,介绍一个非常好的网站:
http://androidxref.com/
在这个网站上面,我们可以看到android的各个项目的源码,包括kernel和ap
我们的分析,也都是基于android 5.1的源码开始的。
闲话不多说,我们首先来看看init进程。
时间: 2024-09-30 06:54:53