前言
针对系统启动流程的专题研究也进行了差不多一周了,虽然进度缓慢,但也算是有一些阅读源码的心得,以及对源码的一点理解
由于系统启动流程涉及的源码相对较多,所以决定分几篇文章来写,本篇主要是对启动流程进行一个简单的概述,以及谈一下我个人的读源码的方法
正文
启动流程概述
这里说的启动流程是指Android系统的启动流程
让我们来回想一下,我们是如何“启动”一个全新未开封的Android手机的:
- 按电源键
- 进入开机动画
- 经过漫长的等待(大概几分钟?哈哈)
- 开机动画结束
- 正式开机,进入设置画面
- 进入系统桌面(Launcher)
是不是感觉步骤还是挺多的?其实咱们主要做的还是只负责按电源键就OK了,咱们要分析的,就是从1-5
这几步,系统都做了哪些事情,我简单画了个图(ps:这也叫图?):
- loader
刷过机的朋友大概都知道,Android可以通过某个组合按键进入BootLoader页面,这个也就是上图中的最底层,在Android系统,甚至于它的内核还未加载时的一个引导程序,主要负责对kenel进行解压和初始化的工作</