什么是虚拟机? 模拟执行某种指令集体系结构的软件。我们常见的虚拟机有VMware,Java虚拟机(具体例如Android的Dalvik虚拟机),Javascript虚拟机V8等。

java虚拟机

基于栈的指令集体系结构,这里的栈是指“求值栈”(又叫做operand stack或者expression stack)。并不是我们常见的调用栈。

基于栈与基于寄存器的体系结构的区别。可以看到,这个有点儿像CPU中的RISC和CISC两种指令集体系结构的区别。

Dalvik就是基于寄存器的java虚拟机实现。

摘自《JVM分享 Java Program in Action ――Java程序