android 启动过程

  android系统启动的时候首先会启动Linux的基础进程,加载Linux kernel启动初始化(init)进程。

  接着,回启动Linux deamon(守护进程)会启动以下的内容:

  ①启动USBdusb管理守护进程来管理USB连接。

  ②启动adb守护进程来管理adb连接

  ③启动debugged守护进程来管理调试程序请求。

  ④启动ridle守护进程来管理无线管理进程. 请看图:

  在启动init进程会启动守护进程同时,同时还会启动一个zygnote进程,其步骤如下:

  ①初始化一个davilk虚拟机实例

  ②装载一个socket请求所需的类和监听

  ③创建虚拟机实例来管理虚拟机的实例 如图所示:

  

  再接着,需要初始化Runtime进程,其过程如下:

  ①注册服务管理器 

  ②注册服务管理器,他作为默认的binder作为context管理器。  

  经接着,一个Runtime进程请求到zygnote创建一个davilk虚拟机的实例,如图:

  

  这样,一个android实例已经启动了。

时间: 2024-12-22 10:49:45

android 启动过程的相关文章

Android启动过程深入解析

当按下Android设备电源键时究竟发生了什么? Android的启动过程是怎么样的? 什么是Linux内核? 桌面系统linux内核与Android系统linux内核有什么区别? 什么是引导装载程序? 什么是Zygote? 什么是X86以及ARM linux? 什么是init.rc? 什么是系统服务? 当我们想到Android启动过程时,脑海中总是冒出很多疑问.本文将介绍Android的启动过程,希望能帮助你找到上面这些问题的答案. Android是一个基于Linux的开源操作系统.x86(x

Android启动过程的分析

本文讲的是Android启动过程的分析, 大多数智能手机用户使用的Android操作系统的功能和操作过程都比较复杂. 对于Android操作系统的初学者来说,引导过程,只不过是终端用户的一些花哨的图像和动画.但当你阅读完这篇文章后,你可能会打破原来对引导过程的狭隘思维. 基本核心过程 引导ROM >引导加载程序 >内核 > init过程> Zygote > Dalvik V M >系统服务器 >管理器 该过程是Android启动的核心过程,下面让我来详细介绍每一步

《Android的设计与实现:卷I》——第3章 Android启动过程的底层实现

第3章 Android启动过程的底层实现 Android支持多种启动模式,主要有正常模式(normal mode).安全模式(safe mode).恢复模式(recovery mode).工厂模式(factory mode).快速启动模式(fastboot mode)等.除正常模式外,都是刷机或者测试模式,本书只讲解正常模式下Android的启动过程.如果读者对其他启动模式感兴趣,可以自行查阅相关资料. 3.1 Android正常模式启动流程 Android的正常模式启动流程大体如下:步骤1 系

Android系统启动过程【转】

转自:http://www.cnblogs.com/bastard/archive/2012/08/28/2660389.html Android系统启动过程 首先Android框架架构图:(来自网上,我觉得这张图看起来很清晰) Linux内核启动之后就到Android Init进程,进而启动Android相关的服务和应用. 启动的过程如下图所示:(图片来自网上,后面有地址)   下面将从Android4.0源码中,和网络达人对此的总结中,对此过程加以学习了解和总结, 以下学习过程中代码片段中均

Android系统进程间通信(IPC)机制Binder中的Server启动过程源代码分析_Android

        在前面一篇文章Android系统进程间通信(IPC)机制Binder中的Server和Client获得Service Manager接口之路中,介绍了在Android系统中Binder进程间通信机制中的Server角色是如何获得Service Manager远程接口的,即defaultServiceManager函数的实现.Server获得了Service Manager远程接口之后,就要把自己的Service添加到Service Manager中去,然后把自己启动起来,等待Cl

Android系统默认Home应用程序(Launcher)的启动过程源代码分析

转自 :http://blog.csdn.net/luoshengyang/article/details/6767736    在前面一篇文章中,我们分析了Android系统在启动时安装应用程序的过程,这些应用程序安装好之后,还需要有一个Home应用程序来负责把它们在桌面上展示出来,在Android系统中,这个默认的Home应用程序就是Launcher了,本文将详细分析Launcher应用程序的启动过程.         Android系统的Home应用程序Launcher是由Activity

《Android的设计与实现:卷I》——第3章 3.2Kernel启动过程

3.2 Kernel启动过程 Android Kernel启动过程与标准Linux Kernel的启动过程基本一致,都是对start_kernel函数的调用和执行.本节将分析Android正常启动流程的第二步:Kernel启动过程. 本节涉及的源码文件如下: kernel/arch/arm/kernel/head.Skernel /arch/arm/kernel/head-common.Skernel/init/main.cKernel启动过程分为两个阶段: 1)内核引导阶段.通常使用汇编语言编

浅谈android性能优化之启动过程(冷启动和热启动)

本文介绍了浅谈android性能优化之启动过程(冷启动和热启动) ,分享给大家,具体如下: 一.应用的启动方式 通常来说,启动方式分为两种:冷启动和热启动. 1.冷启动:当启动应用时,后台没有该应用的进程,这时系统会重新创建一个新的进程分配给该应用,这个启动方式就是冷启动. 2.热启动:当启动应用时,后台已有该应用的进程(例:按back键.home键,应用虽然会退出,但是该应用的进程是依然会保留在后台,可进入任务列表查看),所以在已有进程的情况下,这种启动会从已有的进程中来启动应用,这个方式叫热

分析Android Activity的启动过程

分析Android Activity的启动过程 对于Android Activity 的启动过程,我在Android源码中读了好久的源码,以下是我整理出来的Activity启动过程和大家分享下: Activity作为Android的四大组件之一,也是最基本的组件,负责与用户交互的所有功能.Activity的启动过程也并非一件神秘的事情,接下来就简单的从源码的角度分析一下Activity的启动过程. 根Activity一般就是指我们项目中的MainActivity,代表了一个android应用程序