最近一个月接触Android,开始做一些app的开发,通过参考网络上的资料,阅读Android相关的书籍,从无知到了解,也总算是小有心得,今天起 开始慢慢的总结Android的知识,来进一步的加深自己的学习,那么首先来了解一下Android整个的体系结构。

     Android是一种基于Linux内核的开源操作系统,由Google公司和开放手机联盟领导及开发,主要应用于移动设备,如智能手机和平板电脑等,不 过随着Android的普及,目前已经延伸到智能家电、数码产品等领域,目前随着移动时代的到来和智能设备的普及,对Android的学习也日益成为开发 人员必备的功课,市场上对Android的需求也持续高涨。

     我们来通过官方的一张图来熟悉和了解Android的体系结构:

android体系结构分析 简述android体系结构_runtime

     从图中我们看到,Android的整个体系大致分为五部分组成:Applications、Application Framework、Libraries、Android Runtime、Linux Kernel,我们依次来说明。

Applications(应用程序)    Applications表示的是使用Java语言开发的,一系列核心的应用程序,如:电子邮件客户端、短信程序、日历、地图、浏览器、通讯录等。Application Framework(应用框架)
    
Application Framework应用框架,提供了一个开放的开发平台,Android开发人员可以在此利用Android提供的API,创建丰富的应用程序,Andriod app的开发也建立在应用框架的基础上。Libraries(库)
   
Libraries是Android提供的一套类库,可以被Android系统的各个组件调用,它是使用C/C++编写的。开发人员可以通过Android应用框架,对这些Libraries进行使用。 

Android Runtime(运行时)
    
Android Runtime是Android的运行时环境,在这里Dalvik虚拟机处理线程和低级内存管理,与Java的运行时环境JVM(Java虚拟机)有类似的作用,每个Android应用都有自己的进程,该进程属于某个Dalvik虚拟机的实例。

Linux Kernel(Linux内核)

   Android操作系统基于Linux2.6开发,它由Linux内核提供核心系统服务,如安全、存储管理、进程管理、网络栈和驱动模型, Linux Kernel同时也是硬件和软件栈的其余部分之间的一种抽象的概念。