前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Android开发中的ART、JIT、AOT、Dalvik都指的是什么

Android开发中的ART、JIT、AOT、Dalvik都指的是什么

作者头像
xiangzhihong
发布2022-11-30 15:18:49
1.5K0
发布2022-11-30 15:18:49
举报
文章被收录于专栏:向治洪

在Android开发中,经常会遇到ART、AOT、JIT、Dalvik等概念,有些人傻傻的分不清楚,今天就给大家总结下这些基本的概念。

ART

ART模式英文全称为Android runtime,谷歌Android 4.4系统新增的一种应用运行模式,与传统的Dalvik模式不同,ART模式可以实现更为流畅的安卓系统体验,对于大家来说,只要明白ART模式可让系统体验更加流畅,不过只有在安卓4.4以上系统中采用此功能。

Dalvik

Dalvik是Google公司自己设计用于Android平台的Java虚拟机,Dalvik虚拟机是Google等厂商合作开发的Android移动设备平台的核心组成部分之一,它可以支持已转换为.dex格式的java应用程序的运行,.dex格式是专为Dalvik设计的一种压缩格式,适合内存和处理器速度有限的系统。每一个Dalvik应用作为一个独立的Linux进程执行,在有限的内存中允许同时运行多个虚拟机的实例。独立的进程可以防止在虚拟机崩溃时所有程序都被关闭。

由于Dalvik每次执行代码,都需要Dalvik将dex代码翻译为微处理器指令,然后交给系统处理,这样效率不高。

JIT

JIT是在2.2版本提出的,目的是为了提高Android的运行速度,一直存活到4.4版本,因为在4.4之后两种运行时环境共存(JIT 和 ANR),可以相互切换,但是在5.0+,Dalvik虚拟机则被彻底的丢弃,全部采用ART。

AOT

AOT是"Ahead Of Time"的缩写,指的就是ART(Anroid RunTime)这种运行方式。

推出AOT的其中原因之一是JIT即时编译的缺陷。前面介绍过,JIT是运行时编译,这样可以对执行次数频繁的dex代码进行编译和优化,减少以后使用时的翻译时间,虽然可以加快Dalvik运行速度,但是还是有弊病,那就是将dex翻译为本地机器码也要占用时间,所以Google在4.4之后推出了ART,用来替换Dalvik。

Android 4.4版本以后,Android讲Dalvik替换为ART模式。ART的策略与Dalvik不同,在ART 环境中,应用在第一次安装的时候,字节码就会预先编译成机器码,使其成为真正的本地应用。之后打开App的时候,不需要额外的翻译工作,直接使用本地机器码运行,因此运行速度提高。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-09-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • ART
  • Dalvik
  • JIT
  • AOT
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档