Android的系统架构采用了分层架构的思想,如图1所示。从上层到底层共包括四层,分别是应用程序程序层、应用框架层、系统库和Android运行时和Linux内核。

图1:Android系统架构图

android 系统平台的架构_第1张图片

每层功能简要介绍如下:

一 应用程序层

该层提供一些核心应用程序包,例如电子邮件、短信、日历、地图、浏览器和联系人管理等。同时,开发者可以利用Java语言设计和编写属于自己的应用程序,而这些程序与那些核心应用程序彼此平等、友好共处。

二 应用程序框架层

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

三 系统库和Android运行时

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

四 Linux内核

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

总结:

1 Android的系统架构采用分层架构的思想,架构清晰,层次分明,协同工作。

2 Android的系统架构不仅从宏观上认识了Android系统,同时,也给我们的学习与实践指明了方向。若是从事Android应用开发,那应该研究Android的应用框架层和应用程序层;若是从事Android系统开发,那应该研究Android的系统库和Android运行时;若是从事Android驱动开发,那应该研究Android的Linux内核。总之,找准切入点,实践出真知。


更多相关文章

  1. Android架构分析之基于Android系统的C应用程序开发
  2. [原]Android应用程序消息处理机制(Looper、Handler)分析
  3. Android 属性系统 Property service 设定分析
  4. 【Android】Android intent 系统调用大全
  5. 转:RTC搭建android下三层应用程序访问服务器MsSql-服务器端
  6. 老罗的Android之旅——Android应用程序的Activity启动过程简要介
  7. 【读书笔记】Android 输入系统
  8. android进程在管理器中被杀死
  9. Android音频系统之AudioPolicyService的启动及audio_policy.conf

随机推荐

  1. Android(安卓)NDK开发中引入OpenCV库
  2. Android监听HOME键的最简单的方法
  3. Android解析微博小尾巴
  4. android 关于gallery 的平滑代码滚动
  5. Android(安卓)O 新特性介绍:自适应图标(Ada
  6. android WebView结合javascript相互调用
  7. 如何获取Android设备唯一识别码
  8. android 实现圆形进度条
  9. Android(安卓)Studioto同步失败的解决笔
  10. android 计算器,纯手打,功能实现了,bug可能