Zygote:
1、Zygote 是系统启动之后创建的第二个进程2、Zygote 创建zygote Socket、虚拟机3、Zygote 在虚拟机中通过forkSystemServer, 创建Server进程, 并且在其中启动服务(AMS、PMS等)4、Zygote 在虚拟机中注册zygote套接字,循环监听AMS的请求,创建新的进程
Server: (PS:版本不同,创建服务的方法也有很大不同,以下为5.1.1版本)
1、Zygote fork自己,为Server创建新的子进程之后,调用handleSystemServerProcess 来启动服务2、handleSystemServerProcess 方法接着调用了 invokeStaticMain方法启动了SystemServer的main方法3、在main方法中,调用 SystemServer 的run方法4、其中的 startBootstrapServices 、 startCoreServices 、startOtherServices 分别用来启动不同的服务(AMS、PMS、WMS、CS等)
小结:
1、Zygote是一个进程,它有自己的虚拟机2、AMS、WMS、PMS等在一个进程,运行在虚拟机中,由Zygote创建3、Zygote 用来接收AMS的指令,创建新的进程
时间: 2024-10-22 10:27:56