2、架构详解
2.1、Linux Kernel
2.1、Android Runtime
2.3、Libraries
2.4、Application Framework
2.5、Applications
2.1、Linux Kernel
Linux Kernel包含: 安全、内存管理、进程管理、网络堆栈、驱动模型,Linux Kernel也作为硬件和软件之间的抽象层,它隐藏具体硬件细节而为上层提供统一的服务。而其特点是高内聚、低耦合。
2.2、Android Runtime
大多数虚拟机包括JVM都是基于栈的,而Dalvik虚拟机则是基于寄存器的。两种架构各有优劣,一般而言,基于栈的机器需要更多指令,而基于寄存器的机器指令更大。
Dalvik虚拟机依赖于Linux 内核提供基本功能,如线程和底层内存管理。
2.3、Libraries
- 系统C库——标准C系统库(libc)的BSD衍生,调整为基于嵌入式Linux设备
- 媒体库——基于PacketVideo的OpenCORE。这些库支持播放和录制许多流行的音频和视频格式,以及静态图像文件,包括MPEG4、 H.26