您的位置:首页 > 运维架构 > 网站架构

Android系统架构

2015-11-14 18:31 1056 查看


android的系统架构和其操作系统一样,采用了分层的架构.从架构图看,android分为四个层,从高层到低层分别是应用程序层,应用程序框架层,系统运行库层和linux核心层。

蓝色的代表java程序;黄色的代码为运行JAVA程序而实现的虚拟机;绿色部分为C/C++语言编写的程序库;红色的代码内核(linux内核+drvier).

1.应用程序层

该层提供一些核心应用程序包,Android会同一系列核心应用程序包一起发布,该应用程序包包括电子邮件、短信、日历、地图、浏览器和联系人管理等。所有的应用程序都是使用JAVA语言编写的

2.应用程序框架层

该层是Android应用开发的基础,开发人员大部分情况是在和它打交道。应用程序框架层包括活动管理器、窗口管理器、内容提供者、视图系统、包管理器、电话管理器、资源管理器、位置管理器、通知管理器和XMPP服务十个部分。在Android平台上,开发人员可以完全访问核心应用程序所使用的API框架。并且,任何一个应用程序都可以发布自身的功能模块,而其他应用程序则可以使用这些已发布的功能模块。基于这样的重用机制,用户就可以方便地替换平台本身的各种应用程序组件。

 *
丰富而又可扩展的视图(Views),可以用来构建应用程序, 它包括列表(lists),网格(grids),文本框(text boxes),按钮
 
   (buttons), 甚至可嵌入的web浏览器。
 * 内容提供器(Content Providers)使得应用程序可以访问另一个应用程序的数据(如联系人数据库), 或者共享它们自己的数据
 * 资源管理器(Resource Manager)提供 非代码资源的访问,如本地字符串,图形,和布局文件( layout files )。
 * 通知管理器 (Notification Manager) 使得应用程序可以在状态栏中显示自定义的提示信息。
 * 活动管理器( Activity Manager) 用来管理应用程序生命周期并提供常用的导航回退功能。

3.系统运行库

系统库包括九个子系统,分别是图层管理、媒体库、SQLite、OpenGLEState、FreeType、WebKit、SGL、SSL和libc。Android运行时包括核心库和Dalvik虚拟机,前者既兼容了大多数Java语言所需要调用的功能函数,又包括了Android的核心库,比如android.os、android.net、android.media等等。后者是一种基于寄存器的java虚拟机,Dalvik虚拟机主要是完成对生命周期的管理、堆栈的管理、线程的管理、安全和异常的管理以及垃圾回收等重要功能。

4.Linux内核

Android核心系统服务依赖于Linux2.6内核,如安全性、内存管理、进程管理、网络协议栈和驱动模型。Linux内核也是作为硬件与软件栈的抽象层。驱动:显示驱动、摄像头驱动、键盘驱动、WiFi驱动、Audio驱动、flash内存驱动、Binder(IPC)驱动、电源管理等。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息