android主要源代码组成:
Kernel:android Linux内核2.6

bionic:android标准C运行支持库

bootloader:android内核加载器参考

build:android的Bulid系统

cts:android兼容性测试源

dalvik:Dalvik虚拟机

external:android使用的开源

frameworks:android框架

hardware:android HAL(Hardware Abstraction Layer,硬件抽象层)库源

packages:包含android基本应用,Content Provider等

system:android初始化进程,蓝牙工具集等

android启动过程:

1.Linux内核:
android启动时,首先通过bootloader(系统加载器),加载Linux内核。

2.init
android init进程对各种设备进行初始化,运行android framework所需用的各种Daemon、Context Manager、Media Server、Zygote等。

Daemon进程:
USB Daemon(usbd):管理USB连接

android Debug Bridge Daemon(adbd):android Debug Bridge连接管理

Debugger Daemon(debugger):启动Debugger系统

Radio Interface Layer Daemon(rild):管理无限通信

3.Context Manager
Context Manager是一个管理android系统服务的重要进程。系统服务是组成android Farmework 的重要组件,提供相机、音频、相机处理到各种应用程序制作所需要的重要API。Context Manager提供运行于android内的各种系统服务消息。应用程序或者Framework内部模块在调用系统服务时,需要先向服务管理申请,然后通过Binder IPC(Interprocess commuication)调用系统服务。在系统启动时,android所有系统服务都要各自的Handle信息注册到Context Manager,此时,Binder IPC用来进行进程间的通信。

4.Media Server
Media Server用于运行基于C/C++的本地系统服务,如Audio Flinfer(负责音频输出)、Camera等。

5.Zyogte
Zygote进程用于缩短android应用程序加载的时间,每当执行Java应用能程序时,Zygote就会派生一个子进程来执行应用程序,该子进程就是用来执行Java应用程序的虚拟机。

6.System Server
System Server是android系统的一个核心进程,它是由Zygote进程创建的,在android启动过程中位于Zygote之后。在System Server中可以看到它建立的android中的大部分服务,如Activity Manager Service(管理应用程序的生命周期)、Location Manager Service(提供终端的地理位置信息)等。将运载在System Server中的Java系统服务提供给android应用程序或者Framework内部模块调用,需要先将它们注册到Context Manager中。在通过Binder IPC将Java系统服务注册到C语言的服务管理器时,需要使用JNI(Java Native Interface)本地编程接口。JNI允许Java代码与其他编程语言(如C、C++、汇编语言)编写的应用程序和库进行交互操作。

更多相关文章

  1. Android:theme
  2. Android系统自带样式Android:theme
  3. android自带样式 theme
  4. Android系统自带样式(android:theme)(转)
  5. Android系统自带样式(android:theme)详解
  6. Android(安卓)系统自带样式Android:theme
  7. Android(安卓)theme
  8. Android系统自带样式(android:theme)
  9. Android系统自带样式(android:theme)

随机推荐

  1. Android(安卓)Sudio 如何获取开发版SHA1
  2. Android(安卓)Message机制及其应用
  3. Android调用本机程序执行文件的方法
  4. Android(安卓)SDK 的快速安装方法
  5. Android(安卓)消息处理机制1(从源码分析)
  6. Android实现程序前后台切换效果
  7. Android的无边界程序设计理念
  8. Android(安卓)Wi-Fi Ethernet新IP获取机
  9. Intellij IDEA + Android(安卓)SDK + Gen
  10. android控件布局