Zygote启动流程
2024-06-05 09:09:23 阅读次数:22
server
- 解析init.zygote.rc中的参数,创建AppRuntime并调用AppRuntime.start()方法;
- 调用AndroidRuntime的startVM()方法创建虚拟机,再调用startReg()注册JNI函数;
- 通过JNI方式调用ZygoteInit.main()
- registerZygoteSocket()建立socket通道,zygote作为server,用于响应client请求;
- preload()预加载通用类、drawable和color资源、openGL以及共享库以及WebView,用于提高app启动效率
- 通过startSystemServer(),fork资深得到system_server进程,也是上层framework的运行载体
- z调用runSelectLoop(),随时待命,当接收到请求创建新进程请求时立即唤醒并执行相应工作。
版权声明:本文内容来自第三方投稿或授权转载,原文地址:https://blog.51cto.com/dongfeng9ge/6173951,作者:东风玖哥,版权归原作者所有。本网站转在其作品的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如因作品内容、版权等问题需要同本网站联系,请发邮件至ctyunbbs@chinatelecom.cn沟通。
上一篇:11gr2全外连接优化执行计划(三)
下一篇:java读取txt文件,使用逗号,分号,空格,回车将文件内容分割成一个一个的词组,找出所有重复的词组