Android操作系统结构
本文地址:http://blog.csdn.net/caroline_wendy
结构图:
1. Linux内核(内核空间)
可移植性、安全性、实用功能。
2. 本地层(用户空间)
(1) HAL(Hardware Abstraction Layer):
硬件抽象层,使用共享本地库抽象了每个主要的设备驱动程序,这个库是一个对象, 支持任何主要硬件驱动程序的共同接口。
(2) 本地库:
C/C++库,支持Android应用程序框架层。
(3) 本地守护进程:
守护进程,也就是通常说的Daemon进程,是Linux中的后台服务进程。
服务管理器(Service Manager)、无线接口层守护进程(Radio Interface Layer Daemon)、安装守护进程(Install Daemon)、媒体服务器(Media Server)、Android调试器守护进程(Android Debug Bridge Daemon)等;
(4) 本地工具:
Linux的命令行工具,启动所有本地守护进程的init进程。
3. Delvik虚拟机
Android虚拟机,将Java字节码再次编译为Delvik字节码,主要基于Java标准版;
4. 应用程序框架
大量的库和服务,丰富的文档,针对Android构建的Java库,和Java标准库;
5. 应用程序
(1) 应用程序包(APK,Android Application Package):
Android Manifest文件,Dalvik可执行文件(.dex),资源(resource),本地库(其他语言的库),签名(应用程序的作者);
(2) 应用程序签名:每个应用程序都会有签名,或使用默认签名,位置:.Android/debug.keystore。
(3) 应用程序分发:谷歌市场,其他市场。