概念:Android 虚拟机

Android中的Dalvik虚拟机(DVM)和Android运行时(ART)都是运行在内存中的。它们是Android操作系统的一部分,为Android应用提供了一个管理执行代码的环境。具体来说:

Dalvik虚拟机 (DVM):Dalvik是一种注册式虚拟机,曾经是Android设备上运行应用程序字节码的主要环境。对每个Android应用程序启动一个新的DVM实例,每个DVM实例都有自己的内存空间,DVM负责执行.dex格式的字节码文件,这些文件是Java类文件转换而来的。DVM通过即时编译(JIT,Just-In-Time)将字节码转换成对应设备的机器码。

Android运行时 (ART):在Android 4.4版本引入,从Android 5.0(Lollipop)起取代了DVM成为官方的运行时环境。ART同样为每个应用程序提供独立的执行空间,但它使用预先编译(AOT,Ahead-Of-Time)的方式将应用的字节码转化为机器码,并在安装应用时进行这个过程,以提高运行效率。ART还提供更好的垃圾收集机制和开发者调试支持。

这些虚拟机都运行在设备主内存(RAM)中,负责管理应用的执行,包括内存分配、垃圾收集、线程同步等任务。它们作为连接应用程序和底层硬件及操作系统之间的桥梁,使得开发者能够编写出可以在各种硬件配置上运行的应用程序。在运行时,ART或DVM会为应用程序代码分配内存空间,并且应用程序的执行、数据存储、堆栈调用等都是在这片内存空间中进行。这段内存空间是独立的,使得每个应用程序被隔离,以确保安全和稳定性。

相关推荐
qq_352018682 分钟前
android 状态栏高度获取
android
AirDroid_cn16 分钟前
安卓15平板分屏比例能到1:9吗?极限分屏设置教程
android·智能手机
菜鸟国国38 分钟前
还在为 Compose 屏幕适配发愁?一个 Density 搞定所有机型!
android
卡尔特斯39 分钟前
Android Studio 代理配置指南
android·前端·android studio
sunbofiy2344 分钟前
去掉安卓的“读取已安装应用列表”,隐私合规
android
cch89181 小时前
DCATAdmin后台框架极速上手
android
Ehtan_Zheng1 小时前
ActivityMetricsLogger 深度剖析:系统如何追踪启动耗时
android
用户69371750013842 小时前
Android 开发,别只钻技术一亩三分地,也该学点“广度”了
android·前端·后端
唔662 小时前
原生 Android(Kotlin)仅串口「继承架构」完整案例二
android·开发语言·kotlin
一直都在5722 小时前
MySQL索引优化
android·数据库·mysql