背景:Android4.2之前,安卓手机系统的应用程序均在Dalvik Java的虚拟机上执行,这样的执行模式还要依靠一个编译器来实现与应用程序的沟通。应用程序每次执行时,都须要将程序内的代码转变为机器码才干执行,这无形中多附加了一道手续,这就造成了手机耗电相对较快。占用内存大,用久了会卡顿的现象。

前言:KitKat(奇巧巧克力):雀巢的巧克力棒产品,近期Google宣布最新4.4版Android将命名为"KitKat"

One of the greatest features of Android 4.4.x KitKat, also probably the most under-reported one, is the next generation Android RunTime (ART).

翻译:Android4.4.x KitKat 最显著的特征之中的一个就是下一代的Android Run Time(ART),也许也是下一个即将被广为关注的特征

What is ART?

翻译:什么是ART? (艺术)

When you start any apps on your Android device, the system actually takes some time and effort to compile the app package to machine code so your device can understand and execute. It does this Just in Time of execution. So as
you run apps on your device, it actually keeps doing these resource intensive tasks in the background and this is a major reason why people notice Android apps are a bit sluggish when compared to their iOS counterparts.

翻译:当你在你的Android设备上启动随意app程序,系统都会耗费一些时间和精力(资源)去把该app包文件编译成机器码,以便你的设备能够理解并执行。这个过程在程序执行时执行。所以当你在你的设备上执行你的app程序,其实,在后台也同一时候执行着这些非常耗费资源的任务。这也是和苹果IOS系统相比,在Android系统上执行app程序会让人感觉的有些缓慢的主要原因。

This is, until you switch to the new Android RunTime (ART).

翻译:这个问题会一直存在,除非你换到新的Android Run Time。

With ART enabled, machine code compilations are done Ahead of Time during app installation. So when you run apps on your device, it can skip all that and simply executes the code directly.

翻译:在ART启用的情况下,机器码的编译会在app程序安装过程中提前编译完毕。这样当你在你的设备上执行你的app程序,它能够跳过编译的过程,直接执行编译好的机器码。

The result? Reports show that ART yields performance improvements of around 10% to 20% on average. On the other hand it also boosts battery life because your device now does a lot less resource intensive machine code compiling.
Take into considerations ART is currently a preview technology in Android 4.4.x KitKat so it can only get better and better in upcoming Android releases.

翻译:这样做的结果是什么呢?报告显示ART使得操作性能平均提高10%到20%。而还有一方面。这也延长了电池的使用时间。

由于如今你的设备大大降低了运行编译机器码这一耗费资源的行为。

考虑到ART眼下仅仅是运用在Android4.4.X KitKat版本号上。因此在未来公布的Android版本号中ART仅仅会越来越好。

英文原文截取自: http://www.mobilehiddencamera.com/

翻译时间:2014年6月23日

Android:What is ART?的更多相关文章

  1. Android L 使用ART能提高多少性能?

    点击打开链接 刚刚结束的 Google I/O 大会上,Android 下一代操作系统「L」带来不少惊喜.新系统运行更快.更省电. 然而开发者对这个新系统也有颇多疑问,比如新的运行模式 ART 对开发 ...

  2. Android执行时ART载入类和方法的过程分析

    在前一篇文章中.我们通过分析OAT文件的载入过程,认识了OAT文件的格式,当中包括了原始的DEX文件. 既然ART运行时运行的都是翻译DEX字节码后得到的本地机器指令了.为什么还须要在OAT文件里包括 ...

  3. Android执行时ART载入OAT文件的过程分析

    在前面一文中,我们介绍了Android执行时ART,它的核心是OAT文件.OAT文件是一种Android私有ELF文件格式,它不仅包括有从DEX文件翻译而来的本地机器指令.还包括有原来的DEX文件内容 ...

  4. 【原创】【Android】揭秘 ART 细节 ---- Garbage collection

      背景 Dalvik :http://zh.wikipedia.org/wiki/Dalvik%E8%99%9A%E6%8B%9F%E6%9C%BA ART :http://source.andro ...

  5. Android里的 ART、JIT、AOT、Dalvik之间有什么关系?

    ART.JIT.AOT.Dalvik之间有什么关系? JIT与Dalvik JIT是"Just In Time Compiler"的缩写,就是"即时编译技术", ...

  6. Android Dalvik、ART及APK编译过程

    0.1 先对Dalvik以及ART做简单介绍: 什么是Dalvik: Dalvik是Google公司自己设计用于Android平台的Java虚拟机.dex格式是专为Dalvik应用设计的一种压缩格式, ...

  7. Android ART运行时与Dalvik虚拟机

    这几天在做一个项目时需要在Android中使用OSGi框架(Apache Felix),于是在一个android 4.4.2 版本系统的某品牌的平板上实验. 实验内容很简单:把felix包里的feli ...

  8. ART:Android 摆脱卡顿的希望?

    与 iOS 相比,Android 的用户体验有个相对糟糕的开始.在很长的时间里,界面一直丑小鸭,卡顿也是挥不去的痛.不过,在 Google 的全力推动,以及硬件厂商的响应下,Android 还是跨越各 ...

  9. Android ART

    这几天在做一个项目时需要在Android中使用OSGi框架(Apache Felix),于是在一个android 4.4.2 版本系统的某品牌的平板上实验.实验内容很简单:把felix包里的felix ...

随机推荐

  1. Linux目录结构和常用命令

    源地址:http://www.cnblogs.com/JCSU/articles/2770249.html 一.Linux目录结构 你想知道为什么某些程序位于/bin下,或者/sbin,或者/usr/ ...

  2. 96 Stocks APIs: Bloomberg, NASDAQ and E*TRADE

      Our API directory now includes 96 stocks APIs. The newest is the Eurex VALUES API. The most popula ...

  3. 常用的JQuery数字类型验证正则表达式

    var regexEnum = {  intege:"^-?[1-9]//d*$",     //整数  intege1:"^[1-9]//d*$",     ...

  4. MinGW MinGW-w64 TDM-GCC等工具链之间的差别与联系

    不当之处,尽请指正. 同样点: 一. 他们都是用于编译生成Windows应用程序的工具链. 二. 他们都是基于gcc的. 不同之处(仅仅说大的): 一.项目之间的关系 1. MinGW应该是最先诞生的 ...

  5. 为了树莓派IIraspberrypi安装emacs+ecb+cedet+session+color-theme+cscope+linum

    类似这篇文章写的不多,为了避免以后大家转来转去而忽略了写文章的时间,这些特别加上是2014年6月28日,省的对不上一些软件的版本号(下文中有些"最新"的说法就相应这个时间).假设转 ...

  6. 【MongoDB】The description of index(一)

    From this blog, we start to talk about the index in mongo Database, which is similar to the traditio ...

  7. fusionchart实现ZoomLine 源码 破解版 能够导出

    近期画油量曲线须要用到ZoomLine官网看了好几天.如今整理出来供大家參考使用 zoomline.html源码 <!DOCTYPE HTML PUBLIC "-//W3C//DTD ...

  8. 修改emlog后台登录路径的方法(转)

    emlog后台登录地址的目录名称默认为admin,并且官方没有提供自定义后台登录入口名字的功能,这多少让我们觉得有些不安全,毕竟暴露一个网站的后台不是一件安全的事,今天就给您说下修改方法,增加一下网站 ...

  9. jQuery 自学笔记—5 遍历

    什么是遍历? jQuery 遍历,意为“移动”,用于根据其相对于其他元素的关系来“查找”(或选取)HTML 元素.以某项选择开始,并沿着这个选择移动,直到抵达您期望的元素为止. 下图展示了一个家族树. ...

  10. Linux内核——进程管理与调度

    进程的管理与调度 进程管理 进程描写叙述符及任务结构 进程存放在叫做任务队列(tasklist)的双向循环链表中.链表中的每一项包括一个详细进程的全部信息,类型为task_struct,称为进程描写叙 ...