![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM
文章平均质量分 93
JVM相关
丨惊蛰丨
这个作者很懒,什么都没留下…
展开
-
JVM学习笔记2.5:垃圾收集器
目录垃圾收集器评估GC的性能指标性能指标:吞吐量性能指标:暂停时间垃圾回收器垃圾回收器发展史7种经典的垃圾收集器与垃圾分代之间的关系垃圾收集器的组合关系Serial/Serial Old回收器:串行回收ParNew收集器:并行回收Parallel Scavenge/Parallel Old收集器:吞吐量优先CMS收集器:低延迟Garbage First(G1)收集器:区域化分代式3.6 低延迟垃圾收集器3.6.1 Shenandoah收集器3.6.2 ZGC收集器垃圾收集器评估GC的性能指标吞吐量:原创 2021-01-13 17:05:20 · 155 阅读 · 0 评论 -
JVM学习笔记0:Java虚拟机概述
目录第1章 Java虚拟机概述1.1 虚拟机与Java虚拟机1.2 JVM1.2.1 JVM的位置1.2.2 JVM的整体结构1.2.3 Java代码执行流程1.2.4 JVM的架构模型1.2.5 JVM的生命周期虚拟机的启动虚拟机的执行虚拟机的退出1.2.6 JVM发展历程Sun Classic VMExact VMoracle :HotSpot VMJRockit--服务端IBM的J9Taobao JVMGraal VM第1章 Java虚拟机概述1.1 虚拟机与Java虚拟机虚拟机:虚拟的计算机原创 2021-01-05 10:05:47 · 223 阅读 · 0 评论 -
JVM学习笔记5:执行引擎
目录第8章 虚拟机字节码执行引擎8.1 概述8.1 Java代码编译和执行过程第8章 虚拟机字节码执行引擎8.1 概述执行引擎属于JVM的下层,里面包括 解释器、及时编译器、垃圾回收器将字节码指令解释/编译为对应平台上的本地机器指令工作流程执行引擎在执行的过程中究竟需要执行什么样的字节码指令完全依赖于PC寄存器。每当执行完一项指令操作后,PC寄存器就会更新下一条需要被执行的指令地址。当然方法在执行的过程中,执行引擎有可能会通过存储在局部变量表中的对象引用准确定位到存储在Java堆区中的原创 2020-12-23 20:05:43 · 95 阅读 · 0 评论 -
JVM学习笔记4:类加载机制
目录第七章 虚拟机类加载机制7.1 概述7.2 类加载时机7.3 类加载的过程7.3.1 加载7.3.2 验证7.3.3 准备7.3.4 解析7.3.5 初始化7.4 类加载器7.5 Java模块化系统第七章 虚拟机类加载机制7.1 概述类加载机制:Java虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型的过程7.2 类加载时机. 加载、验证、准备、初始化和卸载这五个阶段的顺序是确定的,类型的加载过程必须按照这种顺序原创 2020-12-22 20:11:35 · 113 阅读 · 0 评论 -
JVM学习笔记3:类文件结构
目录第6章 类文件结构6.1 Class类文件的结构6.1.1 Magic 与Class文件版本。第6章 类文件结构各种不同平台的Java虚拟机,以及所有平台都统一支持的程序存储格式——字节码(Byte Code)是构成平台、语言无关性的基石。6.1 Class类文件的结构Class文件是一组以8个字节为基础单位的二进制流,各个数据项目严格按照顺序紧凑地排列在文件之中,中间没有添加任何分隔符,这使得整个Class文件中存储的内容几乎全部是程序运行的必要数据,没有空隙存在。当遇到需要占用8个字节以上原创 2020-12-22 16:04:28 · 83 阅读 · 1 评论 -
JVM学习笔记2:垃圾回收算法与相关策略
第3章 垃圾收集器和内存分配策略Garbage Collection的目标是Java堆和方法区,因为这部分内存的分配和回收是动态的,只有在运行时我们才知道这部分会占用多少空间3.1 对象回收在Java堆中,当对象不可能再被任何途径使用时,我们可以判断该对象“已死”,垃圾收集器对堆进行回收时先确定对象的状态3.1.2 引用计数算法在对象中添加一个引用计数器,每当有一个地方引用它时,计数器值加一,引用失效时,计数器值减一,当计数器为0时对象不能再被使用优点:原理简单,判定效率高缺点:有很多例外情原创 2020-11-17 16:40:41 · 240 阅读 · 2 评论 -
JVM学习笔记1:Java内存区域与内存溢出异常
第1章 Java虚拟机概述1.1 虚拟机与Java虚拟机1.2 JVM1.2.1 JVM的位置1.2.2 JVM的整体结构1.2.3 JVM的架构模型1.2.4 JVM的生命周期1.2.5 JVM发展历程第2章 Java内存区域与内存溢出异常2.1 类加载器子系统2.1.1 类的加载过程2.1.2 类加载器的分类2.2 运行时数据区域2.2.1 程序计数器2.2.2 虚拟机栈2.2.3 本地方法栈2.2.4 堆2.2.5 方法区2.2.6 运行时常量池2.2.7 直接内存2.3 HotSpot虚拟机对象.原创 2020-11-02 17:42:30 · 482 阅读 · 1 评论