1.10.2 理解Android软件栈
简单地说,Android软件栈就是通过一个应用程序框架提供一个Linux内核和一个C/C++库集合,而该应用程序框架为运行时和应用程序提供服务,并对它们进行管理。Android软件栈由图1-1中的元素组成。
Linux内核 核心服务(包括硬件驱动程序、进程和内存管理、安全、 络和电源管理)都由一个Linux 2.6内核处理。内核还在硬件和软件栈的其他部分之间提供了一个抽象层。

库 在内核之上,Android包含了各种C/C++核心库(例如libc和SSL),以及:
用来回放音频和视频媒体的媒体库;
用来管理显示的外观管理器;
包含用于2D和3D图形的SGL和OpenGL的图形库;
用于本地数据库支持的SQLite;
用于集成Web浏览器和Internet安全的SSL和WebKit。
Android运行时 Android运行时可以让一个Android手机从本质上与一个移动Linux实现区分开来。由于Android运行时包含了核心库和Dalvik虚拟机,因此,它是向应用程序提供动力的引擎,它和库一起形成了应用程序框架的基础。
核心库 虽然Android应用程序开发使用的是Java语言,但Dalvik并不是一个Java虚拟机。Android核心库提供了Java核心库以及Android特定库可用的大部分功能。
Dalvik虚拟机 Dalvik是一个基于寄存器的虚拟机,它已经被优化从而确保一个设备可以高效地运行多个实例。它依赖Linux内核进行线程和底层内存管理。
应用程序框架 应用程序框架提供了用来创建Android应用程序的类。它还对硬件访问提供了一般抽象,并管理用户界面和应用程序资源。
应用层 所有的应用程序,包括原生的和第三方的,都在应用层上使用相同的库进行构建。应用层运行在Android运行时内,并且使用了应用程序框架中可用的类和服务。
点赞 0
相关资源:岩质边坡稳定分析软件-其它文档类资源-CSDN文库
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!