Rak*_*dav 0 java compiler-construction interpreter jit
我研究了在不同的处理器架构上执行Java的地方.如果它将使用编译器,那么将存在一些(机器代码)指令,这些指令将特定于处理器架构并且Java将取决于平台.但由于java使用解释器,因此它独立于处理器架构.
我的问题是java如何使用JIT(Just In Time)编译器?处理器的体系结构不会影响它吗?如果它不影响它,那为什么不影响它?
不只有一个JIT编译器.每个架构都有一个不同的架构,因此有一个用于Windows 32位,一个用于Windows 64位等.
您的Java代码在所有平台上都是相同的.它由Java编译器编译成字节代码.所有平台的字节代码也相同.
现在我们在Windows 32位上运行Java程序.JVM启动并解释字节代码并将其转换为该体系结构的机器代码.请注意,该JVM专门用于此体系结构.
如果我们在另一个体系结构上运行您的程序,JVM的另一个变体将用于解释字节代码.
这就是您下载JRE时看到所有这些不同下载链接的原因: