CLR 对比 JVM

Posted alps_01

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CLR 对比 JVM相关的知识,希望对你有一定的参考价值。

首先,CLR和JAVA虚拟机(Java Virtual Machine,简称:JVM)并非一个层面的系统。前者可松散地被描述为just-in-time(JIT)优化编译器和垃圾收集器的混合物,而后者仅仅是一个解释器;

其次,早先的JVM使用的是第一代解释器原理,先将java源代码编译成字节码(bytecode),然后通过JVM对bytecode进行实时解释。它是在程序使用的时间解释执行,每次执行都需要重新解释并执行。而CLR是先通过内置的相应语言的编译器将源代码编译为CIL中间代码,然后在程序第一次执行时通过JIT Compilation将中间代码动态编译为可执行机器码。只要该程序驻留在内存中,就不再需要CLR解释,程序的执行效率跟机器码一样快。

随后,广受诟病旧的JAVA JVM也更新换代,提供了JIT选项,但是某些方面较为保守。



作者:王清
链接:https://www.zhihu.com/question/39400401/answer/189344296
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。



以上是关于CLR 对比 JVM的主要内容,如果未能解决你的问题,请参考以下文章

100G QSFP28 CLR4单模光模块的介绍及对比

是否值得付费?Oracle,Open JDK等四大JVM性能全面对比

JVM调优之垃圾定位垃圾回收算法垃圾处理器对比

转载C#之int与Java之Integer的区别

[转帖]是否值得付费?Oracle,Open JDK等四大JVM性能全面对比

Java和Tomcat类加载机制对比分析