1. JDK & JRE
2. Java语言与Java虚拟机
3. Java发展的重大事件
4. 虚拟机与Java虚拟机
5. JVM的整体结构
HotSpot VM 是目前市面上高性能虚拟机的代表作之一。 它采用 [解释器] 与 [即时编译器] 并存 的架构。
- 解释器:保证响应时间。及时对字节码文件逐行解释执行
- JIT:保证性能。针对字节码指令中某些反复执行的指令(热点代码) 再次编译成机器指令(二次编译) 放在方法区中缓存起来,以便之后调用
6. Java代码执行流程
7. JVM的架构模型
Java编译器输入的指令流基本上是一种基于栈的指令集架构;另外还有一类指令集架构则是基于寄存器的指令集架构
- 区分两种指令集架构
- 例 1:
int a = 2; int b = 3; int k = a + b;
- 基于栈的计算流程
0: iconst_2 1: istore_1 2: iconst_3 3: istore_2 4: iload_1 5: iload_2 6: iadd 7: istore_3
- 基于寄存器的计算流程
mov eax, 2 // 将eax寄存器的值设为2 add eax, 3 // 将eax寄存器的值加3
- 基于栈的计算流程
- 例 2