1.android系统架构
Android系统架构图Android系统架构(由下往上):
Linux Kernel层:
linux内核层,Android的核心系统服务依赖于Linux2.6内核,如安全性,内存管理,进程管理,网络协议栈和驱动模型。Linux内核也同时作为硬件和软件栈之间的抽象层。
HAL层:
硬件抽象层,它是设备内核驱动的抽象接口,实现向更高级别的Java API框架提供访问底层设备的应用编程接口。 HAL包含多个库模块,其中每个模块都为特定类型的硬件组件实现一个接口。当框架API要求访问设备硬件时,Android系统将为该硬件组件加载库模块。
Libraries & Android Runtime 层:
Android系统运行层
1.程序库
核心Android系统组件和服务(如ART和HAL)构建自原生代码,需要以C和C++编写的原生库。
2.Android Runtime
(ART)Android包括了一个核心库,该核心库提供了JAVA编程语言核心库的大多数功能。对于运行 Android 5.0(API 级别 21)或更高版本的设备,每个应用都在其自己的进程中运行,并且有其自己的 Android Runtime(ART)实例。ART 的部分主要功能包括: 预先(AOT)编译 ;优化的垃圾回收(GC) ;更好的调试支持,包括专用采样分析器、详细的诊断异常和崩溃报告,并且能够设置监视点以监控特定字段
Android应用框架层:
Framework层,以Java语言编写的API使用Android OS的整个功能集。这些API形成创建Android应用所需的构建模块,它们可简化核心模块化系统组件和服务的重复使用.
Application层:
所有的应用程序都是在此层。
网友评论