- JVM的位置
JVM是运行在操作系统之上的,它与硬件没有直接的交互。
- JVM的整体结构
- Java代码的执行流程
- JVM的架构模型
-
Java编译器输入的指令流基本上是一种基于栈的指令集架构,另一种指令集架构是基于寄存器的指令集架构。
-
由于跨平台性的设计,Java的指令都是根据栈来设计的。不同平台CPU架构不同,所以不能设计为基于寄存器的。
-
基于栈的指令集架构特点:
优点:跨平台性,指令集小,指令多。
缺点:执行性能比寄存器差。
- 问题:尽管嵌入式平台已经不是Java程序的主流运行平台了(准确来说应该是HotSpotVM的宿主环境已经不局限嵌入式平台了),那么为什么不将架构更换为基于寄存器的架构呢?