JVM执行模式与即时编译(JIT)

作者: Jacquie葭葵 | 来源:发表于2018-11-12 14:53 被阅读8次

JVM执行模式与即时编译(JIT)

参考:https://www.cnblogs.com/lyhero11/p/5080306.htmlhttps://www.aliyun.com/jiaocheng/1331387.html

JVM编译执行过程

执行模式

#查看虚拟机执行模式
java -version
#解释模式
-Xint
#编译模式
-Xcomp
#混合模式
-Xmixed

解释执行
翻译一句执行一句,不加筛选的将全部代码编译成机器码,不论其执行效率是否有编译价值。
.java----javac.exe编译器---->.class------java.exe解释执行器---->加载到JVM中执行
编译模式
混合模式
在翻译成.class时,经过JIT环境变量进行判断,是否属于“热点代码”(多次调用的方法,或循环等)。
如是,走JIT编译为具体硬件处理器(如sparc、intel)机器码。如否,则直接由解释器解释执行

编译方式

1、动态编译(dynamic compilation)指的是“在运行时进行编译”;与之相对的是事前编译(ahead-of-time compilation,简称AOT),也叫静态编译(static compilation)。
2、JIT编译(just-in-time compilation)狭义来说是当某段代码即将第一次被执行时进行编译,因而叫“即时编译”。JIT编译是动态编译的一种特例。JIT编译一词后来被泛化,时常与动态编译等价;但要注意广义与狭义的JIT编译所指的区别。
3、自适应动态编译(adaptive dynamic compilation)也是一种动态编译,但它通常执行的时机比JIT编译迟,先让程序“以某种式”先运行起来,收集一些信息之后再做动态编译。这样的编译可以更加优化。

相关文章

  • JVM执行模式与即时编译(JIT)

    JVM执行模式与即时编译(JIT) 参考:https://www.cnblogs.com/lyhero11/p/5...

  • Java性能调优实战》笔记(二)JVM优化、设计模式优化

    文章目录 一、JVM优化 1.1 即时编译器JIT   类编译加载执行过程:   初始化完成后,类在调用执行过程中...

  • JIT即时编译原理

    JIT是什么 JIT中文名是即时编译。代码执行一般分为解析执行和编译执行。编译执行又分为运行前编译和运行时编译。 ...

  • 小师妹学JVM之:JIT中的LogCompilation

    简介 我们知道在JVM中为了加快编译速度,引入了JIT即时编译的功能。那么JIT什么时候开始编译的,又是怎么编译的...

  • JIT和AOT

    前端编译、JIT、AOT简单解释JIT详细解释编译技术探讨 JVM中涉及JIT编译的参数大方法执行效率低的原因--...

  • 有关JIT你需要知道的

    JVM对代码执行的优化可分为运行时(runtime)优化和即时编译器(JIT)优化。运行时优化主要是解释执行和动态...

  • JVM5:JIT即时编译

    JIT Compiler(即时编译器)全称为Just In Time,为JVM的一部分。众所周知,JIT技术可以提...

  • ART、AOT、JIT、Dalvik之间的关系

    JIT与Dalvik JIT是"Just In Time Compiler"的缩写,就是"即时编译技术",与Dal...

  • JVM专题

    1.JVM内存区域 1.1jvm的执行方式 解释执行与编译执行相结合解释执行就是边翻译为机器码边执行。即时编译(编...

  • Dart 基础

    JIT 与 AOT Dart 是少数同时支持 JIT(Just In Time,即时编译)和 AOT(Ahead ...

网友评论

    本文标题:JVM执行模式与即时编译(JIT)

    本文链接:https://www.haomeiwen.com/subject/hoccfqtx.html