美文网首页
应用程序进程启动过程

应用程序进程启动过程

作者: 沐小晨曦 | 来源:发表于2018-11-10 09:03 被阅读14次

应用程序进程简介

要想启动一个应用程序,首先要保证这个应用程序所需要的应用程序进程已经启动。AMS 在启动应用程序时会检查这个应用程序需要的应用程序进程是否存在,不存在就会请求 Zygote 进程启动需要的应用程序进程。Zygote 的 Java 框架层中会创建一个 Server 端的 Socket,这个 Socket 用来等待 AMS 请求 Zygote 来创建新的应用程序进程。Zygote 进程通过 fork 自身创建应用程序进程,这样应用程序进程就获得了 Zygote 进程在启动时创建的虚拟机实例。当然,在应用程序进程创建过程中除了获取虚拟机实例外,还创建了 Binder 线程池和消息循环,这样运行在应用程序进程中的应用程序就可以使用 Binder 进行进程间通信以及消息处理了。

启动过程

启动过程可以分为两步:

  1. AMS 发送启动应用程序进程请求

    AMS 如果想要启动应用程序进程,就需要向 Zygote 进程发送创建应用程序进程的请求,AMS 会通过调用 startProcessLocked 方法向 Zygote 进程发送请求。

  2. Zygote 接收请求并创建应用程序进程

相关文章

  • APP进程启动过程

    应用程序进程启动过程,Android7.0为例。 应用程序进程,启动应用程序从启动应用程序进程开始。点击应用程序启...

  • 应用程序进程启动过程学习记录

    应用程序进程创建过程分为两个部分,分别为AMS发送启动应用程序进程请求,还有Zygote接收请求并创建应用程序进程...

  • 应用程序进程启动过程

    一.背景 首先注意的是:这里要说的是应用程序进程的启动过程,而不是应用程序的启动过程。启动一个应用程序首先要确保该...

  • Android——AMS

    系统启动流程 App启动过程 AMS系统启动过程 应用启动的整体概念 应用程序启动涉及的进程间通信 Activit...

  • 【Android开发高级系列】Android多进程专题

    1 进程启动过程 Android应用程序框架层创建的应用程序进程具有两个特点,一是进程的入口函数是Activit...

  • 应用程序进程启动过程

    应用程序进程简介 要想启动一个应用程序,首先要保证这个应用程序所需要的应用程序进程已经启动。AMS 在启动应用程序...

  • 03 应用程序进程启动过程-Android7.0-2

    前言 在前篇中我们讲到了Android应用程序进程启动过程,这一篇我们来讲遗留的知识点:在应用程序进程创建过程中会...

  • Handler Looper简略

    一、消息循环过程Android应用程序进程在启动的时候,会在进程中加载ActivityThread类,并且执行这个...

  • Android应用程序启动入口ActivityThread.ma

       之前Android应用程序进程的启动过程[https://yuhanchen5027.github.io/a...

  • Android应用程序进程启动过程

    1. 应用程序进程简介: 要想启动一个应用程序,首先要保证这个应用程序所需要的应用程序进程已经启动。AMS在启动应...

网友评论

      本文标题:应用程序进程启动过程

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