Zygote
-
Zygote的作用是什么?
- 启动SystemServer
- 孵化应用进程
-
启动三段式
-
Zygote进程是怎么启动的?
* init进程fork出zygote进程
* 启动虚拟机,注册jni函数
* 预加载系统资源
* 启动SystemServer
* 进入Socket Loop

-
启动进程

-
信号处理

-
Zygote进程启动之后做了什么?
- Zygote进程的native世界
*
- Zygote进程的Java世界


- Zygote进程的native世界
-
要注意的细节
- Zygote fork要单线程
- Zygote的IPC没有采用Binder
你知道如何添加一个系统服务么?

如何使用系统服务


- 以powerService为例


如何注册系统服务

什么时候注册的系统服务?

系统服务和Binder应用服务有什么区别?
启动方式的区别


注册方式的区别
- 只有系统服务才能注册到serviceManager

- 应用服务的注册:被动注册

使用方式的区别


ServiceManger的启动
- 启动进程
- 启动Binder机制
- 发布自己的服务
- 等待并响应请求