美文网首页
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