android的系统应用中的一个重要的进程就是zygote,所有的java应用程序进程都是由zygote派生出来的,zygote这个进程的作用就是“生儿子”。具体的一个应用如何出来的大家可以看我以前的一篇文章-----Android 应用初始化及窗体事件的分发。
首先要了解一点初始化语言的基本知识吧: Services(服务)是一个程序,他在初始化时启动,并在退出时重启(可选)。Services(服务)的形式如下: service <name> <pathname> [ <argument> ]* zygote进程正是在linux kernel startup后通过这个文件启动的,具体看init.rc中这一段: service zygote /system/bin/app_process -Xzygote /system/bin --zygote --start-system-server 一段一段的分析这个代码: service zygote /system/bin/app_process -Xzygote /system/bin --zygote --start-system-server 启动服务名字zygote. /system/bin/app_process 进程的bin文件具体路径,后面跟的就是启动参数-Xzygote /system/bin --zygote --start-system-server。这段参数有什么作用可以对照看代码app_main.cpp
|
|