Zygote
From
Resources
IPC
Steps
- app_process.main
- AndroidRuntime.start
- 启动Android系统运行时库
- Work
- 调用函数startVM启动虚拟机
- 调用函数startReg注册JNI方法
- 调用了com.android.internal.os.ZygoteInit类的main函数
- ZygoteInit.main
- 调用registerZygoteSocket函数创建了一个socket接口,用来和ActivityManagerService通讯
- 调用startSystemServer函数来启动SystemServer组件
- 调用runSelectLoopMode函数进入一个无限循环在前面创建的socket接口上等待ActivityManagerService请求创建新的应用程序进程
- ZygoteInit.registerZygoteSocket
- ZygoteInit.startSystemServer
- ZygoteInit.handleSystemServerProcess
- SystemServer不需要socket通信,关闭socket
- RuntimeInit.zygoteInit
- 调用zygoteInitNative函数来执行一个Binder进程间通信机制的初始化工作
- 调用上面 传进来的com.android.server.SystemServer类的main函数
- RuntimeInit.zygoteInitNative
- SystemServer.main
- ZygoteInit.runSelectLoopMode
创建@
2012-12-13
最后修改@
2014-01-03
相同类目/Categories