Android操作系统架构


浏览:738 次

Android操作系统的架构可以分为四层,即app、app框架、核心类库和Linux内核。第三层还包括Android运行时的环境。每个部分的解释如下。

1.程序应用

Android与核心app包一起发布,其中包括电子邮件客户端、SMS短消息程序、日历、地图、浏览器、联系人管理程序等。所有app都是用Java编写的。

2.应用框架

开发人员可以完全访问核心app使用的API框架。app框架架构用于简化组件软件的重用。任何应用都可以发布其功能块,任何其他应用都可以使用其发布的功能块(但是,必须遵守框架的安全限制)。app重用机制允许用户替换组件。

以下所有app都由一系列服务和系统组成,包括:

1) 可扩展视图可用于创建app,包括列表、网格、文本框、按钮,甚至是可嵌入的Web浏览器。

2) 内容提供商使app能够访问另一个app的数据(如联系人数据库),或共享自己的数据。

3) 资源管理器提供对非代码资源的访问,例如本地字符串、图形和布局文件。

4) Notification Manager使app能够在状态栏中显示客户通知信息。

5) 活动管理器用于管理app生命周期并提供常见的导航回退功能。

3.Android库

Android包括一个C/C++库,供Android系统中的各种组件使用。该库通过Androidapp框架为开发人员提供服务。

以下是一些主要的核心库:

1) 系统C库:从BSD继承的标准C系统函数库(libc),专门为基于嵌入式Linux的设备定制。

2) 媒体库:基于PacketVideo OpenCORE;该库支持录制和播放,可以录制许多流行的音频和视频格式,以及静态图像文件,包括MPEG4、H.264、MP3、AAC、JPG和PNG。

3) Surface Manager:它管理显示子系统,并为多个app提供2D和3D层的无缝集成。

4) LibWebCore:一个新的Web浏览器引擎,支持Android浏览器和可嵌入的Web视图。

5) SGL:内置的2D图形引擎。

6) 3D库:基于OpenGL ES 1.0 API;库可以使用硬件3D加速(如果可用)或高度优化的3D软件加速。

7) FreeType:显示位图和矢量字体。

8) SQLite:一个强大的、轻量级的关系数据库引擎,适用于所有app。

4.Android运行时

Android包括一个核心库,它提供了Java编程语言核心库的大部分功能。

每个Androidapp都在自己的进程中运行,并有一个独立的Dalvik虚拟机实例。Dalvik的实现是为了同时高效地运行多个虚拟机。Dalvik虚拟机执行Dalvik可执行的dex文件,该文件经过优化以达到最小内存使用量。虚拟机基于寄存器。所有类都由Java汇编程序编译,然后转换为。dex格式,以便由虚拟机执行。

Dalvik虚拟机依赖于Linux的一些功能,例如线程机制和底层内存管理机制。

5.Linux内核

Android的核心系统服务依赖于Linux内核,如安全性、内存管理、进程管理、网络协议栈和驱动程序模型。Linux内核还充当硬件和软件堆栈之间的硬件抽象层。

,注册后为新手提供免费开发包

相关资讯:
农产品电子商务向企业个人农产品电子贸易方向发展的效益

农产品电子商务向企业个人农产品电子贸易方向发展的效益

查看
Web 3.0技术的基本方向

Web 3.0技术的基本方向

查看
认知

认知

查看
面向对象的

面向对象的

查看
2018-12-25

2018-12-25

查看