jvm
浅笑黄花伊人泪
这个作者很懒,什么都没留下…
展开
-
JIT编译优化点-方法内联
JIT通常JIT的有以下几种手段来优化JVM的性能:1、针对特定CPU型号的编译优化,JVM会利用不同CPU支持的SIMD指令集来编译热点代码,提升性能。像intel支持的SSE2指令集在特定情况下可以提升近40倍的性能。2、减少查表次数。比如调用Object.equals()方法,如果运行时发现一直是String对象的equals,编译后的代码可以直接调用String.equals方法,跳过查找该调用哪个方法的步骤。3、逃逸分析。JAVA变量默认是分配在主存的堆上,但是如果方法...转载 2020-05-16 21:04:18 · 596 阅读 · 0 评论 -
JVM编译过程
0. 相关知识计算机语言的执行方式分为编译型和解释型两种: 编译型语言:指使用专门的编译器,针对特定平台(操作系统)将某种高级语言源代码一次性翻译成可以被该平台硬件执行的机器码(包括机器指令和操作数),并包装成改平台所能识别的可执行性程序的格式,这个转换过程称为编译(Compile)。编译结束后,可能需要对编译好的目标代码进行链接。优点是运行效率高,组装的时候可以实现低层次的代码复用;缺点是不能跨平台。 解释型语言:指使用专门的解释器,对源程序逐行解释成特定的平台上的机器码并立即执行的语言。转载 2020-05-16 20:42:27 · 1850 阅读 · 1 评论 -
jvm整体架构
1.简介 Java平台可分为两部分,即Java虚拟机(Java virtual machine,JVM)和Java API类库。 JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM使得Java实现了跨平台。 引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。2. JVM转载 2020-05-16 20:34:58 · 432 阅读 · 0 评论 -
类加载过程-图解
整体过程:加载-》链接-》初始化第一个过程-加载加载:(classloader->方法区)通过Class全路径名,获取class的二进制字节流将二进制字节内容放入方法区在内存中,生成Class对象代表这个class第二个过程-链接校验:验证字节流合法性、安全性。比如魔术字、版本号元数据验证:校验Class是否符合规范、字节码验证:确保语法语义是否OK符号引用验证,看是否能访问到准备:在方法区为class分配内...原创 2020-05-13 23:07:45 · 322 阅读 · 0 评论