Zygote进程是安卓系统的一个重要进程,由init进程创建而来;另外系统里的重要进程(system_server等)都是由zygote进程fork的,所有的app进程也是由zygote进程fork的。
一、C 里的fork函数
fork是Linux里面创建子进程的函数,fork 执行后原来的进程资源会复制一份,如下图主进程号是29709,调用fork之后返回的pid是子进程的进程号29714,此时子进程也在运行了,pid是0。所以看到很多源码里面都是判断这里的pid,pid > 0 就是在主进程,pid == 0 就是子进程, pid < 0代表进程创建失败