android框架解密,导读
来源:互联网 发布:加工中心编程100例图 编辑:程序博客网 时间:2024/05/17 01:31
android源码结构
本书分析android的启动过程,从linux内核加载到Home应用程序启动的整个过程,来理解android framework层运行原理。
android启动过程如上:
对上述启动过程中的部分进行简介:
(1)启动时,首先通过bootloader加载linux内核,与普通linux启动过程相同,先初始化内核,然后调用init进程。
(2)init进程启动,对各种设备进行初始化,运行android framework所需的各种 Daemon, Context Manager, Media Server, Zygote等。以下是init进程执行的Daemon进程:USB Daemon, Android Debug Bridge Daemon,Debugger Daemon, Redio Interface Layer Deamon(管理无线通信连接)
(3)Context Manager, 用于管理android系统服务的重要进程。系统服务是android framework的重要组件,提供从相机,音频,视频的处理到各种应用程序所需要的API。
Context Manager提供运行于android内的各种系统服务信息。应用程序或Framework内部模块在调用系统服务时,需要先向服务管理器申请,然后通过Binder IPC调用系统服务。
系统服务启动时,android所有系统服务都要把各自的handler信息注册到Context Manager,此时,Binder IPC用来进行进程间的通信。
(4)media server用于运行基于C/C++的本地系统服务
(5)Zygote进程用于缩短android应用程序加载的时间,每当执行java应用程序时,Zygote就会派生出一个子进程来执行应用程序,该子进程就是用来执行java应用程序的虚拟机。
(6)System Server android系统的核心进程,由Zygote进程创建,在Zygote之后启动。在System Server中可看到它建立的android中的大部分服务。为了将运行在System Server中的java系统服务提供给android应用程序或framework内部模块调用,需要先将他们注册到ContextManager中。
在通过Binder IPC将java系统服务注册到基于C语言的服务管理器时,需要使用JNI本地编程接口。
以上就是启动过程以及framework初始化的简单介绍。
0 0
- android框架解密,导读
- Android SDK Document 框架导读的翻译和注解[1]
- Android SDK Document 框架导读的翻译和注解[2]
- Android SDK Document 框架导读的翻译和注解[3]
- Android性能优化导读
- Android源代码导读
- Android SDK Document 框架导读的翻译和注解[4]——Broadcast receiver
- Android SDK Document 框架导读的翻译和注解[5]——Content provider
- Android SDK Document 框架导读的翻译和注解[7]——Intents and Intent Filters
- Android工具HierarchyViewer 代码导读
- Android工具HierarchyViewer 代码导读
- Android工具HierarchyViewer 代码导读
- Android工具HierarchyViewer 代码导读
- Android 安全类知识导读
- 导读
- 导读
- 导读
- 导读
- Java多线程学习
- 使用python进行接口测试
- 智能电表为MCU打开新市场
- 叶俊:别让“对抗”惯性摧毁你的幸福人生
- 看代码猜古诗哈哈逗死我了
- android框架解密,导读
- Sort List
- 重写resize方法,监听html标签大小的改变
- 鼠标滑过图标划出左侧菜单
- 微信小程序部署HTTPS报错怎么办?
- 叶俊:领袖需要思考的问题
- C++中如何使类不能继承
- 微信开发专题---2.ngrok安装使用
- VS2012:error LNK2026: 模块对于 SAFESEH 映像是不安全的