PyPy 和 JVM 的区别
Difference between PyPy and JVM
根据我的理解,默认的 Python 解释器 (CPython) 将源代码编译成字节码,然后将字节码解释成机器码。
另一方面,PyPy 利用 JIT 将经常解释的字节码优化为编译后的机器代码。这与 JVM 有何不同? JVM 是一个解释器+编译器。它将源代码编译为字节码,然后将经常解释的字节码优化为编译后的机器码。
还有其他区别吗?
(CPython)将源代码编译成字节码然后解释字节码
- CPython 可以评估原始源代码,但可以将其编译成字节码以获得更高的解释性能。
- PyPy 也是解释器,但可以将源代码翻译成机器代码(或 C、JVM 字节码、CIL)。
- Java将源代码编译成JVM的机器码。进一步的 JVM 运行 这段代码本身。 JVM 还包括 JIT,它帮助 JVM 将当前正在执行的字节码转换为机器码。 Read more.
根据我的理解,默认的 Python 解释器 (CPython) 将源代码编译成字节码,然后将字节码解释成机器码。
另一方面,PyPy 利用 JIT 将经常解释的字节码优化为编译后的机器代码。这与 JVM 有何不同? JVM 是一个解释器+编译器。它将源代码编译为字节码,然后将经常解释的字节码优化为编译后的机器码。
还有其他区别吗?
(CPython)将源代码编译成字节码然后解释字节码
- CPython 可以评估原始源代码,但可以将其编译成字节码以获得更高的解释性能。
- PyPy 也是解释器,但可以将源代码翻译成机器代码(或 C、JVM 字节码、CIL)。
- Java将源代码编译成JVM的机器码。进一步的 JVM 运行 这段代码本身。 JVM 还包括 JIT,它帮助 JVM 将当前正在执行的字节码转换为机器码。 Read more.