首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Android >

[CSDN]Android系统进程Zygote起步过程的源代码分析

2012-09-28 
[CSDN]Android系统进程Zygote启动过程的源代码分析http://blog.csdn.net/luoshengyang/article/details/67

[CSDN]Android系统进程Zygote启动过程的源代码分析
http://blog.csdn.net/luoshengyang/article/details/6768304

简要整理:

linux-->init          |        native服务zygote(init.rc中定义的service,代码:app_main.cpp //步骤1)          |        {AppRuntime.start(),AndroidRuntime.start()}          |        {通过jni调用Java函数ZygoteInit.java.main(),startVM(),RegJNI}            |        {startSystemServer(),           为zygote服务建立伺服socket}          |                                |        {RuntimeInit.java.zygoteInit(), 无限循环等待来自ActivityManagerService的请求并通知zygote服务为应用程序fork进程(逻辑流程回到步骤1)}          |        初始化binder,调用 SystemServer.java.main()          |        SystemServer.init1()           |        JIN:com_android_server_SystemServer.cpp ---> 启动native服务{SurfaceFlinger,AudioFlinger,Sensor,MediaPlayer,Camera,AudioPolicy}          |        调用libsystem_server库函数system_init(),代码:system_init.cpp          |        SystemServer.init2()          |        ServerThread.start()--->启动java服务{ActivityManager,Lights,SensorPower,Connectivity,Package,WindowManager,Bluetooth...}      
 

热点排行