首页 > 其他分享 >现在的安卓12或者是安卓13用的是什么虚拟机ART还是Dalvik?举个比喻

现在的安卓12或者是安卓13用的是什么虚拟机ART还是Dalvik?举个比喻

时间:2023-11-09 13:23:11浏览次数:43  
标签:咖啡 13 ART Dalvik 安卓 咖啡店 咖啡机 虚拟机

Android 5.0(Lollipop)及以后的版本使用的是ART(Android Runtime)虚拟机,而不是早期版本中使用的Dalvik虚拟机。从Android 4.4(KitKat)开始,ART就作为一个实验性的特性出现,并在随后的版本中取代了Dalvik。

 

要用一个生活中的例子来比喻的话,我们可以把虚拟机想象成一家咖啡店的咖啡机。

 

假设你每天早晨去一家咖啡店(Android 设备)购买咖啡(运行应用)。在这家咖啡店初期,他们使用的是一台老式的咖啡机(Dalvik),这台咖啡机每次只能为一个顾客制作一杯咖啡,顾客点了咖啡之后需要等待咖啡制作完成。这台咖啡机虽然可靠,但效率不高,特别是在高峰期时,顾客需要等待的时间会很长。

 

随着时间的推移,咖啡店更新了他们的设备,引入了一台现代化的全自动咖啡机(ART)。这台新的咖啡机具有更高的效率,可以预先处理一些工作(比如说预先磨豆),当顾客点咖啡时,咖啡可以快速制作完成。这不仅提升了顾客的体验,也让咖啡店在高峰期能够处理更多的订单。

 

在这个比喻中,Dalvik的“即时编译”(JIT)类似于顾客点了咖啡后咖啡机开始工作,而ART的“预先编译”(AOT)则类似于咖啡机提前做好了一些准备工作,使得顾客点单后可以更快地得到咖啡。这就是为什么ART能提供更好的性能和流畅的用户体验。

 作者:http://xkrj5.com 纯原创首发,转载保留版权!

标签:咖啡,13,ART,Dalvik,安卓,咖啡店,咖啡机,虚拟机
From: https://www.cnblogs.com/xkrj5/p/17819505.html

相关文章

  • ART还是Dalvik虚拟的原理是什么,跟安卓运行APK有啥关系
    ART(AndroidRuntime)和Dalvik都是Android操作系统中的应用程序运行环境。它们都是虚拟机,用于在Android设备上执行应用程序代码。APK(AndroidPackage)是Android应用程序的打包格式,包含了应用程序的所有文件,包括应用程序代码、资源和元数据。Dalvik虚拟机:原理:Dalvik是一种基于寄存......
  • Dalvik/ART虚拟机是什么,跟安卓运行APK有啥关系,举个常用例子
    Dalvik和ART(AndroidRuntime)都是安卓操作系统中的应用程序虚拟机,它们是Android设备上运行APK文件的关键组成部分。Dalvik虚拟机概念:Dalvik是Android最初使用的虚拟机,它专为Android系统设计,主要用于执行APK中的DalvikExecutable(.dex)文件。工作原理:Dalvik通过使用即时编译(JIT)将......
  • .net 温故知新【13】:Asp.Net Core WebAPI 使用依赖注入DI
    一、使用DI注入在之前的文章中已经讲过DI的概念(.net温故知新:【7】IOC控制反转,DI依赖注入),基于控制台程序演示了DI依赖注入的使用,基于Microsoft.Extensions.DependencyInjection完成。那在WebAPI中如何使用依赖注入呢?首先新建一个WebAPI项目WebAPI_DI,框架.net7,其实webapi项目......
  • 表碎片整理时shrink和move如何选择 --高水位回收 转:http://blog.itpub.net/29821
    整理表碎片通常的方法是move表,当然move是不能在线进行的,而且move后相应的索引也会失效,oracle针对上述不足,在10g时加入了shrink,那这个方法能不能在生产中使用呢?     shrink的一个优点是能在线进行,不影响表上的DML操作,当然,并发的DML操作在shrink结束的时刻会出现短暂的block;s......
  • 【深入理解Java虚拟机】内存分配策略
    本文内容来源于《深入理解Java虚拟机》一书,非常推荐大家去看一下这本书。本系列其他文章:【深入理解Java虚拟机】Java内存区域模型、对象创建过程、常见OOM【深入理解Java虚拟机】垃圾回收机制垃圾收集器与内存分配策略Java技术体系中所提倡的自动内存管理最终可以归结为自动......
  • 13-图
    3.图13.1图结构点集://点结构的描述publicclassNode{publicintvalue;publicintin; //入度publicintout; //出度publicArrayList<Node>nexts;//相邻的点publicArrayList<Edge>edges;//相邻的边publicNode(intvalue){t......
  • Kali 虚拟机网络配置
    1.虚拟机三种网络配置方式1.1桥接模式虚拟机和物理机同时直接连接物理网络(均作为独立主机)1.2NAT模式物理主机作为路由器为虚拟机分配ip地址,虚拟机通过物理主机上网1.3仅主机模式虚拟机仅与物理主机通信,与外部网络隔离,构成内网2.实验2.1Kali虚拟机采用桥接模式;物理机连接校......
  • 虚拟机基础
    什么是虚拟机?虚拟机指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。在虚拟机中,一台或多台客户机可以运行在一台主机上。每个虚拟机都有自己的操作系统,独立于其他虚拟机,即使它们位于同一物理主机上。虚拟机通常运行在服务器上,但也可以运行在桌......
  • Python中的13个搔操作
    字符串操作1.字符串的翻转#方式一s='helloworld'print(s[::-1)#方式二fromfunctoolsimportreduceprint(reduce(lambdax,y:y+x,s))2.判断字符串是否是回文利用字符串翻转操作可以查看字符串是否回文s1='abccba's2='abcde'deffunc(s):ifs==s......
  • hyper-V迁移虚拟机到VMware教程
                                                hyper-V迁移虚拟机到VMware教程一、先在Hyper-V的物理上安装StarWindV2VConverter软件,网官地址:http://starwindsoftware.com.cn/starwi......