什么是虚拟机?虚拟机有那几种

往期推荐

APK安装流程及详细步骤

APK打包流程

APK文件结构

Android开发之数据储存

1.1 虚拟机的概念

首先给大家介绍一下什么是虚拟机,这里所讲的虚拟机,可能和大家接触过的有些区别,它是一个运行环境,可以在上面执行相应的文件,比如: class文件、odex文件、oat文件等。

1.2 介绍java虚拟机、dalvik虚拟机和art虚拟机

1.java虚拟机:

java虚拟机运行的是java字节码,java程序经过编译,生成JAVA字节码保存在class文件中,java虚拟机通过解码class文件中内容来运行程序。

java虚拟机基于栈架构,虚拟机需要频繁的从栈上读取写入数据,这个过程需要更多的指令分派与内存访问次数,会耗费很多CPU的时间。

Java虚拟机执行流程图如下:

你可能感兴趣的:(Android逆向从入门到进阶,安卓逆向,逆向,虚拟机,apk,Android)