【发布时间】:2018-04-19 14:10:40
【问题描述】:
我在某处读到“执行引擎”是 JVM 架构的一部分。
q.1) 请确认 JVM 内部执行引擎的角色。
q.2) JVM 和 JIT 是执行引擎的两个独立组件吗?或者,JIT 只是 JVM 的组件?
q.3) JVM 和 JIT 有什么区别?
【问题讨论】:
我在某处读到“执行引擎”是 JVM 架构的一部分。
q.1) 请确认 JVM 内部执行引擎的角色。
q.2) JVM 和 JIT 是执行引擎的两个独立组件吗?或者,JIT 只是 JVM 的组件?
q.3) JVM 和 JIT 有什么区别?
【问题讨论】:
虚拟机
规范,其中指定了 Java 虚拟机的工作方式。但实现提供者独立选择算法。它的实现由 Sun 和其他公司提供。
一个实现它的实现被称为 JRE(Java 运行时环境)。
Runtime Instance 每当你在命令提示符下写java命令来运行java类,JVM的实例就会被创建。
JVM执行以下操作:
Loads code
Verifies code
Executes code
Provides runtime environment
JVM 提供以下定义:
Memory area
Class file format
Register set
Garbage-collected heap
Fatal error reporting etc.
JLT
在 Java 编程语言和环境中,即时 (JIT) 编译器是将 Java 字节码 转换为可直接发送到处理器的指令的程序。
编写 Java 程序后,源语言语句由 Java 编译器编译成字节码,而不是包含与特定硬件平台处理器匹配的指令的代码。 字节码 是独立于平台的代码,可以发送到任何平台并在该平台上运行。
【讨论】:
JIT 在 Execution Engine 中,以提高解释效率。
【讨论】: