android平台及架构简述
android系统的底层是建立在linux系统之上,是由操作系统、中间件、用户界面和应用软件四层组成。该四层确
保了层与层之间的低耦合,当下层发生改变时,上层应用程序无需做任何改变。(关于android的体系结构可以参考
android官方文档),Android平台采用了整合的策略思想,包括底层Linux操作系统、中间层的中间件和上层的Java
应用程序。
android系统主要部分的组成
应用程序层
应用程序层主要存放一些android的应用程序,比如电子邮件客户端、SMS程序、日历、地图、浏览
器、联系人等等一系列的应用。(当然这些应用都是java编写的)
应用程序框架
当我们去编写应用程序时,必不可少的是一定会去调用一些API,那应用程序框架就是提供开发者
去开发应用程序所需的大量的API。应用程序框架除了作为应用程序开发的基础外,也是软件复用的重要手段。
以下所有的应用程序都由一系列的服务和系统组成,包括:
1、一个可扩展的视图(Views)可以用来创建应用程序,包括列表(lists)、网络(grids)、文本框(text
boxes)、按钮(buttons),甚至是一个可嵌入的Web浏览器。
2、内容管理器(Content Providers)使得应用程序可以访问另一个应用程序的数据(如联系人数据库),或
者共享它们自己的数据。
3、一个资源管理器(Resource Manager)提供非代码资源的访问,如本地字符串、图形和分层文件(layout
files)。
4、一个通知管理器(Notification Manager)使得应用程序可以在状态栏中显示客户通知信息。
5、一个活动类管理器(Activity Manager)用来管理应用程序生命周期并提供常用的导航回退功能。
函数库
android有一套被不同组件所使用的C/C++库的集合。一般应用开发者不能直接去调用这套库集,但可以通
过应用程序框架去调用这些库。
下面列出一些核心的库:
1、系统C库:一个从BSD系统派生出来的标准C系统库,专门为嵌入式linux设备调整过。
2、媒体库:基于PacketVideo的OpenCORE,支持播放一些流行的音频和视频格式,以及查看静态图片。
3、Surface Manager:管理对显示子系统的访问,并对多个应用程序的2D和3D图层机制提供无缝整合。
4、LibWebCore:一个Web浏览器引擎,为android浏览器提供支持。
5、SGL:底层的2D图形引擎。
6、3D libraries:可使用硬件3D加速,也可使用搞定优化的,软件3D加速。
7、FreeType:位图和向量字体显示。
8、SQLite:供所有应用程序使用的,功能强大的轻量级关系数据库。
android运行时
android运行时由两部分组成:android核心库集和Dalvik虚拟机。核心库集提供了java语言核心库所能使用的绝
大部分功能,虚拟机则负责运行android应用程序。
每个android应用程序都运行在单独的Dalvik虚拟机内。
Linux内核
Linux内核提供安全性、内存管理、进程管理、网络协议栈和驱动模型等核心系统服务。Linux内核也是系统硬件
和软件叠层之间的抽象层。
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
转载请注明出处:http://blog.csdn.net/hai_qing_xu_kong/article/details/10995151情绪控