深入了解JVM——编译器优化

Posted 在咖啡里溺水的鱼

tags:

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

本文为 《深入理解Java虚拟机》第十章内容的学习笔记,部分内容经过二次加工。若对相关知识感兴趣,推荐购书深入阅读。若认为文章涉嫌侵权,请联系作者及时删除。
本作品采用 知识共享署名-非商业性使用-相同方式共享 3.0 中国大陆许可协议 (CC BY-NC-SA 3.0 CN) 进行许可 。非商业性质转载请注明作者和出处,禁止商业性质转载。
开源创造世界

概述

Java语言的 编译期 是一段不确定的过程,可以是前端编译器把java文件转变成class文件的过程;也可以是指虚拟机的后端运行编译器(JIT编译器,Just In Time Compiler)把字节码转变成机器码的过程;还可以是使用静态提前编译器(AOT编译器,Ahead Of Time Compiler)直接把java文件编译成本地机器代码的过程。

比较有代表的各类编译器:
- 前端编译器:Sun的Javac、Eclipse JDT中的增量式编译器 ECJ
- JIT编译器:HotSpot VM的C1、C2编译器
- AOT编译器:GNU Compiler for the Java GCJ、Excelsior JET

编译期优化主要为前端编译器的优化。

以上是关于深入了解JVM——编译器优化的主要内容,如果未能解决你的问题,请参考以下文章

深入了解JVM——运行期优化

深入了解JVM——运行期优化

深入了解JVM——类文件结构

深入了解JVM——虚拟机字节码执行引擎

深入了解JVM——虚拟机字节码执行引擎

深入了解JVM——虚拟机类加载机制