Android系统启动流程全解析--你知道Android系统启动都干了啥吗
写了这么久的Android应用程序,是时候来八一八Android程序的启动原理了,文章不长,喜欢的朋友点个收藏谢谢。
只要是Android系统,运行的第一个程序一定是引导程序,可以这么说,所有的unix系统都有引导加载程序。这个引导加载程序的作用是在在加载 Linux 内核之前进行低级(底层)系统初始化。
Android系统启动的第一阶段是将recovery镜像加载到系统flash里(就是我们的固定内存Rom),这也是引导程序的主要功能。
引导程序会检测手机按键(实体按键,刷机的小伙伴不陌生,recovery模式下有些不能用触屏,要使用方向键和关机键配合操作),我们可以用这些案件切换功能和模式,比如快速启动或实现某个功能,比如重新刷写镜像,下载和执行内核image。
最终的效果就是会把内核加载到RAM中(这里通常是/boot flash分区中的内核)。
Linux内核
内核在启动构建Android的用户空间程序和应用程序之前,会完成大部分硬件,驱动程序和文件系统的初始化,只要包括:
- 核心内核初始化(内存和I/O区初始化,中断启动,进程表初始化)
- 驱动程序初始化
- 挂载/