5-3: 创建zygote socket接口
2016-05-09 09:44:54 0 举报
Zygote进程如何创建socket, 并监听之。
作者其他创作
大纲/内容
bind()
整理出环境变量名“ANDROID_SOCKET_zygote\"并且放入一个全局数组中
//.........
//......
zygoteInit.java的main()
就是ANDROID_SOCKET_zygote
service_start()
create_socket()
Zygote进程
Init进程
C++层
String env = System.getenv(fullSocketName);fileDesc = Integer.parseInt(env);
zygote进程会循环监听这个socket:sServerSocket 一旦accept到连接请求,就创建命令连接
fd=socket()
pid=fork()
if (pid==0)
add_environment()
publish_socket()
JAVA层
将bind和/dev/socket/zygote绑定
sServerSocket = new LocalServerSocket( createFileDescriptor(fileDesc));
runSelectLoop()
registerZygoteSocket()
0 条评论
下一页