android linux简介,1. Android简介系统架构简介

2014092408594492.png

1. Android系统架构

Android分为四层,从高层到低层分别是应用程序层,应用程序框架层android应用程序框架层,系统运行时库层和linux核心层,如下所示:

2.application应用层

此层提供了一些核心应用程序包,例如电子邮件,SMS,日历,地图,浏览器和联系人管理. 同时,开发人员可以使用Java语言来设计和编写自己的应用程序,并且这些程序与那些核心应用程序是平等且彼此友好的

b46d555f1d936d41e59aca3d6f64abde.png

3. 应用程序框架应用程序框架层

这一层是Android应用程序开发的基础. 它为编写应用程序调用的人们提供了API. 常用的类库如下:

四个主要部分分为:

4.Libraries系统库

39057560fe43b612fcc7b2c00a905743.png

大多数系统库都是用C / C ++编写的,所提供的功能由Android应用程序框架调用

5. Android运行时运行时库

包含核心库和Dalvik虚拟机.

核心库: 提供Java编程语言核心库的大多数功能

b347d0a22e4d835c4fd98742b98b296c.png

Dalvik虚拟机(dvm): 每个Java程序都与Java虚拟机密不可分. Android系统还实现了自己的类似于JVM的虚拟机,但更适合嵌入式平台-Dalvik. Dalvik具有与JVM相同的功能,并为Android平台上的Java代码提供了运行时环境. 唯一的区别是dvm执行.dex文件,而jvm执行.class文件.

处理: 编译android程序后,将生成.class文件. 然后,dex工具将.class文件处理为.dex文件,然后将资源文件和.dex文件打包为.apk文件,如下图所示:

dvm的优点是它基于寄存器访问,而不是虚拟堆栈,可以根据硬件进行优化,并且更适合于移动设备.

从5.1 Android 4.4开始,DVM被替换

52b14c441b60e7e1fb1be1825d5eedac.png

由于DVM安装后的APP是字节码,因此每次打开APP时,该字节码都会转换为机器码,从而导致APP的运行效率降低和用户体验差.

因此,从Android 4.4开始,发布了ART(Android运行时)虚拟机来替代Dalvik虚拟机. Android 4.4默认使用DVM,但可以选择ART(如下图所示). 从Android 5.0开始,默认情况下使用ART. 从那时起,就不再使用DVM,ART支持64位并与32位CPU兼容,而DVM仅支持32位CPU.

ART的优势: 安装应用程序后,将执行AOT(提前编译,预编译),字节码被编译为机器代码并存储在本地,因此APP不需要每次都进行编译运行后,APP的运行效率大大提高,功耗也降低了.

ART的劣势: 应用程序的安装时间变长android应用程序框架层,安装后的存储空间占用更多(存储机器代码的原因)

6.linux内核

用于运行应用程序,并包含各种驱动程序以提供对应用程序层的调用.

下一章的学习: 2. Android-sdk目录简介,ADT使用简介,创建helloworld

本文来自电脑杂谈,转载请注明本文网址:

http://www.pc-fly.com/a/jisuanjixue/article-269308-1.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值