美文网首页
Android启动

Android启动

作者: way180 | 来源:发表于2017-11-30 11:01 被阅读0次

Linux 三个特殊进程:

PID 0 idle进程

 特点:1、系统自建的首个进程

            2、创建运行内核空间

            3、系统所在进程

PID 1 init进程

 特点:1、通过idle的kernel_thread创建

            2、初始化内核空间后,加载init程序,形成用户空间

            3、除idle外,其它进程都由init创建并运行

            4、启动其它系统进程后,init将变为守护进程监视它们

            5、Android的第一个进程

PID 2 kthreadd进程

Android 关键进程:

zygote进程

 特点:1、由init创建

            2、Java世界开创者

            3、源码涉及Native层

            4、进程创建和启动的内部是通过fork()实现

            5、创建流程:init进程通过fork() ==》  1.Zygote进程通过startSystemService()  ==》  SystemService进程 ==》 ActivityManagerService进程

                                                                           2.Zygote进程完成其它进程启动之后,调用runSelectLoopMpde()休眠

Activity 创建过程:

AcivityManagerService通过SystemService进程向发送消息唤醒Zygote进程 ==》  Zygote进程创建子进程    ==》 子进程调用android.app.ActivityThread的main()函数完成创建

相关文章

网友评论

      本文标题:Android启动

      本文链接:https://www.haomeiwen.com/subject/bpxvbxtx.html