其实init进程启动后,ServiceManager进程的启动,远比zygote要早,因为在启动zygote进程时需要用到ServiceManager进程的服务。ServiceManager是一个守护进程,它维护着系统服务和客户端的binder通信。
在Android系统中用到最多的通信机制就是Binder,Binder主要由Client、Server、ServiceManager和Binder...
分类:
移动开发 时间:
2014-06-20 12:53:13
阅读次数:
306
在《Zygote进程【3】——SystemServer的诞生》一文中介绍了SystemServer的诞生,本文来看一下SystemServer中初始化的系统服务。1.AccountManagerServiceAndroid账户服务,提供了对账户、password、授权的集中管理。2.Accessib...
分类:
移动开发 时间:
2014-06-06 20:18:30
阅读次数:
496
1
SystemServer分析SystemServer的进程名就是前面所说的“system_server”,是zygote进程“app_process”fork出来的第一个子嗣,其重要性不言而喻。下面我们简称其为SS。1.1
SS的诞生先回顾一下SS是如何创建的:/*在zygoteinit.jav...
分类:
其他好文 时间:
2014-05-26 13:37:58
阅读次数:
375
在《Zygote进程【3】——SystemServer的诞生》一文中介绍了SystemServer的诞生,本文来看一下SystemServer中初始化的系统服务。
AccountManagerServiceAccessibilityManagerService
ActivityManagerService
AlarmManagerService
AppWidgetService...
分类:
移动开发 时间:
2014-05-03 00:16:21
阅读次数:
404
在ZygoteInit的main()方法中做了几件大事,其中一件便是启动Systemserver进程,代码如下:
@/frameworks/base/core/java/com/android/internal/os/ZygoteInit.java
public static void main(String argv[]) {
try {
........
分类:
其他好文 时间:
2014-04-30 22:16:38
阅读次数:
442
在Zygote的诞生一文中init进程是如何一步步创建Zygote进程的,也了解了Zygote的进程的作用。Zygote进程的诞生对于整个Java世界可以说有着”开天辟地“的作用,它创建了Java虚拟机,并且繁殖了Java世界的核心服务system_server进程,在完成Java世界的初创工作以后,Zygote并没有死去,它只是暂时的沉睡(socket事件堵塞)在那里,一旦有需要(有客户端请求的...
分类:
其他好文 时间:
2014-04-27 19:13:55
阅读次数:
819