原博客地址为:
https://blog.csdn.net/jason0539/article/details/50440669
仅代表个人理解:
- JVM:Java虚拟机(运行java字节码)
作用:Java源文件(.java)编译成Java字节码(.class)后,JVM虚拟机可以直接运行Java字节码 - DVM:Android虚拟机(运行Delvik字节码),简称 Dalvik虚拟机
作用:Java源文件(.java)编译成Java字节码(.class)后,再把Java字节码转换为Dalvik字节码,最后被打包成Dex可执行文件中,DVM虚拟机运行Dex文件 - JIT:Just In Time,即时编译技术
作用:提高运行速度(Java),Dalvik使用即时编译(JIT),即是在程序运行过程中进行编译。
所以只存活到Android4.4(因为ART出现了) - AOT:Ahead Of Time,预编译技术
作用:提高运行速度(C/C++) - ART:Android虚拟机(Android 4.4发布的ART虚拟机,5.0彻底废弃Dalvik虚拟机)
作用:可替代DVM虚拟机,DVM执行的是Dalvik字节码,ART执行的是是本地机器码