【译】Android系统简介

时间:2014-08-31 15:46:41   收藏:0   阅读:317

简介 

本文主要介绍Android的基础知识和体系结构,本文主题:

背景

Android简介

Android是基于linux内核为智能手机和平板设计的操作系统。Android最初是由Andy Robin在二十一世纪初创建,后被Google收购,并在2005年被命名Android。Android被“开放手机联盟”所属,由Google维护。

Android最大的优势是其开源,目前有大量的设备支持Android系统,而且已经构造了Android生态系统。

第一款Android手机G1是由HTC生产,Google的android团队在同期也发布了Android SDK 1.0版本。Android版本历史:

bubuko.com,布布扣

 Android和其他移动平台

下图是Android系统和其他移动平台的简介:

bubuko.com,布布扣

下面是些为什么选择Android的原因(译者没有好的词汇,此处保留原词汇):

为什么开发者需要关心Android系统或应用的开发?

Android成长的非常迅速,由于Android开源,开发者可以深入了解android相关API的设计和使用,并有机会为android社区做贡献。

同时开发者也可使用开源的工具来构建Android应用程序;当前,Android系统已经广泛应用于手机,平板电脑,电视,手表和汽车等领域;因此,这对于开发者来说,Android有一个宽广的市场。

Android体系结构

bubuko.com,布布扣

 Linux Kernel

 Android系统在底层是依赖于Linux 2.6内核来进行安全管理、内存管理、进程管理、网络管理和驱动模型管理。Linux Kernel层由各种驱动组成,如摄像头,WiFi和视频等。

尽管Android底层使用Linux Kernel,但也不是完全使用,Android也针对性的在原有内核基础上进行了一些封装或修改。

Android Libraries

以下是Android Libraries层封装的主要模块:

以下是Android设备提供的核心API包:

 Android Runtime

 Android应用程序及其Application Framework几乎都是使用JAVA来开发的。不同于JVM虚拟机,Android使用的是另一运行时虚拟机Dalvik。

Dalvik和JVM关键区别在于Dalvik是基于寄存器(register)的,而JVM是基于堆栈(statck)的;Dalvik是为了在小内存和低CPU设备上运行而设计,同时也考虑多个应用程序同时运行时的效率;

(注意: Dalvik使用底层的linux kernel来管理内存和线程)

 在Android 4.4中,引入了新的虚拟机ART(android run time),ART在APP安装的时候把APP编译成本地代码(native code)。ART可以大幅的提高程序的运行效率,因为不需要APP在每次运行时JIT做just in time compilation。

(注意: 使用ART在安装的时候耗时比Dalvik要长,但其带来的好处是显而易见的)

ART的主要特色:

 Application Framework

 Application Framework提供了各种开发Android App的APIs。这一层有很多文档可以去了解,而且推荐开发者去深入了解,这样,才容易创建出很多有创新性的和很好的应用。

Android提供了一个开发的开发环境,开发者可以免费使用这些APIs,比如后台运行服务,通知,读取位置信息等。

Applications

 Applications是android体系结构最顶层的一层,我们所开发的应用程序大都是在这一层,而且是使用JAVA开发;下面是这层默认有的一些层序:

 

PS:花了大半天的时间,断断续续才翻译了这么多。原文实在是有点长,这里先到此为止,后面再续一篇。

 

备注: 

1. 本文在翻译过程中有所删减;

2. 关键词汇没有翻译,一面混淆理解;

3. 原文:http://www.codeproject.com/Articles/802449/Article

本文版本历史:

初始版  2014.08.31

原文:http://www.cnblogs.com/codesee/p/3947399.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!