JIT机器特定操作和静态二进制之间的区别

时间:2011-04-12 16:13:25

标签: compiler-construction static jit

JIT的支持者列出的一个“胜利”是,它可以根据运行代码的机器的CPU生成特定于机器的汇编指令。

这与静态编译文件有什么不同?如果静态编译的文件将在给定的机器上运行,它必须在某一时刻生成/使用该机器的CPU的机器代码。为什么JIT版本更好或更快?

1 个答案:

答案 0 :(得分:1)

因为JIT对每个系统的要求都不同。

如果我们提供静态编译的二进制文件,它只适用于与该系统兼容的系统。 Java试图与平台无关。

因此,您不必提供静态编译的二进制文件(仅适用于一个),而是提供可在任何JVM中使用的字节码,并允许JIT在需要时将其转换为已编译的代码。