
JVM
文章平均质量分 71
土豆面包
这个作者很懒,什么都没留下…
展开
-
JVM学习笔记的内容目录
JVM的内容目录总体框架图:完整的pdf版本和markdowm版本在这里:https://github.com/Colinasda/JVM.git博客内容链接JVM学习笔记(一):JVM的简介、整体架构、架构模型https://blog.youkuaiyun.com/qq_40177015/article/details/114876580JVM学习笔记(二):类加载器子系统、类加载器的分类、双亲委派机制https://blog.youkuaiyun.com/qq_40177015/arti原创 2021-04-04 16:31:13 · 261 阅读 · 1 评论 -
JVM学习笔记(五):方法区 & 运行时常量池
方法区方法区&栈&堆的关系从线程共享的角度来看三者的交互关系概念方法区就是我们常说的永久代(Permanent Generation), 用于存储被 JVM 加载的类信息、常量、静态变量、即时编译器编译后的代码等数据.HotSpot VM 把 GC 分代收集扩展至方法区, 即使用 Java 堆的永久代来实现方法区, 这样 HotSpot 的垃圾收集器就可以像管理 Java 堆一样管理这部分内存, 而不必为方法区开发专门的内存管理器(永久带的内存回收的主要目标是针对常量池的回收原创 2021-04-04 16:26:41 · 524 阅读 · 0 评论 -
JVM垃圾回收&垃圾回收算法
文章目录JVM垃圾回收与算法如何确定垃圾引用计数法可达性分析垃圾回收算法标记清除算法(Mark-Sweep)复制算法(copying)标记整理算法(Mark-Compact)分代收集算法新生代--复制算法老年代--标记整理算法JVM垃圾回收与算法如何确定垃圾引用计数法在 Java 中,引用和对象是有关联的。如果要操作对象则必须用引用进行。因此,很显然一个简单的办法是通过引用计数来判断一个对象是否可以回收。也就是说,引用计数法实际上是通过在对象头中分配一个空间来保存该对象被引用的次数。如果该对象被其原创 2021-04-04 16:17:20 · 120 阅读 · 0 评论 -
JVM学习笔记(四):堆内存结构(年轻代&老年代)、Minor GC & Major GC & Full GC、TLAB、堆空间的参数设置
文章目录堆(Heap)堆的概述堆的内存结构堆空间大小的设置年轻代&老年代对象分配的一般过程Minor GC & Major GC & Full GCMinor GC触发机制老年代GC(Major GC/Full GC)触发机制内存分配策略TLAB(Thread Local Allocation Buffer)为什么有TLAB?什么是TLAB?堆空间的参数设置堆(Heap)堆的概述一个JVM实例只存在一个堆内存,堆也是Java内存管理的核心区域Java堆区在JVM启动时就被创原创 2021-03-16 13:02:04 · 727 阅读 · 0 评论 -
JVM学习笔记(三):运行时数据区之程序计数器、虚拟机栈(栈帧内部结构)、本地方法栈
文章目录运行时数据区程序计数器(PC寄存器)使用PC寄存器存储字节码指令地址的作用?PC寄存器为什么会被设定为线程私有?虚拟机栈Java虚拟机栈特点问题栈的存储单位栈的执行原理栈帧的内部结构局部变量表操作数栈动态链接方法返回地址一些附加信息相关面试题本地方法(Native Method)本地方法栈(Native Method Stack)运行时数据区每个线程:独立包括程序计数器、虚拟机栈、本地方法栈线程间共享:堆、本地方法区(或称堆外内存)程序计数器(PC寄存器)作用:用来存储指向下一条指令的地原创 2021-03-16 12:59:37 · 790 阅读 · 0 评论 -
JVM学习笔记(二):类加载器子系统、类加载器的分类、双亲委派机制
文章目录类加载器子系统(Class Loader)作用类加载过程1.加载2.链接3.初始化类加载器的分类引导类加载器(Bootstrap ClassLoader)自定义类加载器为什么要自定义类加载器?获取ClassLoader的途径双亲委派机制类加载器子系统(Class Loader)作用负责从文件系统或网络中加载class文件,class文件在文件开头有特殊的文件标识CAFE BABEClassLoader只负责class文件的加载,至于它是否可以运行,由执行引擎决定类加载过程1.加载原创 2021-03-16 12:56:34 · 144 阅读 · 0 评论 -
JVM学习笔记(一):JVM的简介、整体架构、架构模型
文章目录JVM特点JVM的整体结构JVM的架构模型基于栈式架构基于寄存器架构发展历程Sun Classic VMSun Hotspot VMJVM特点一次编译,多处运行自动内存管理自动垃圾回收功能JVM的整体结构JVM的架构模型基于栈式架构设计和实现简单,适用于资源受限的系统。不需要硬件支持,可移植性更好。由于跨平台性,Java的指令都是根据栈设计的特点:跨平台性,指令集小,指令多,执行性能比寄存器差基于寄存器架构完全依赖于硬件,可移植性差性能优秀,执行更高效发展历程原创 2021-03-16 12:54:30 · 202 阅读 · 1 评论