标签: 进程启动
Android应用程序进程启动过程的源代码分析(六)
上文从peers.get(index)得到的是一个ZygoteConnection对象,表示一个Socket连接。
因此,接下来就是调用ZygoteConnection.runOnce函数进一步处理了。
Step 6. ……
Android应用程序进程启动过程的源代码分析(三)
上文的mDriverFD是设备文件/dev/binder的打开描述符,如果成功打开了这个设备文件,那么它的值就会大于等于0,因此,它的返回值为true。
回到Process.start函……
Android应用程序进程启动过程的源代码分析(七)
从peers.get(index)得到的是一个ZygoteConnection对象,表示一个Socket连接,接下来就是调用ZygoteConnection.runOnce函数进一步处理了。
上文调用了handleChi……
Android应用程序进程启动过程的源代码分析(四)
上文中的函数将创建进程的参数放到argsForZygote列表中去。
如参数"--runtime-init"表示要为新创建的进程初始化运行时库,然后调用zygoteSendAndGetPid函数进……
Android应用程序进程启动过程的源代码分析(八)
由于在前面的Step 3中,指定了"--runtime-init"参数,表示要为新创建的进程初始化运行时库,因此,上文的parseArgs.runtimeInit值为true,于是就继续执行Runti……
Android应用程序进程启动过程的源代码分析(一)
Android应用程序框架层创建的应用程序进程具有两个特点,一是进程的入口函数是ActivityThread.main,二是进程天然支持 Binder进程间通信机制;这两个特点都是在……
Android应用程序进程启动过程的源代码分析(五)
上文中的Socket由frameworks/base/core/java/com/android/internal/os/ZygoteInit.java文件中的ZygoteInit类在runSelectLoopMode函数侦听的。
Step 5. ZygoteI……
Android应用程序进程启动过程的源代码分析(二)
上文我们调用了Process.start函数开始为应用程序创建新的进程。
注意,它传入一个***个参数为"android.app.ActivityThread",这就是进程初始化时要加载的Java……