#JVM

CMS 三色标记法

并发标记下用户线程改引用会导致对象漏标。记录三色标记法的原理,以及 CMS 用增量更新、G1 用原始快照各自解决漏标问题。

CMS 三色标记法

简述 G1 垃圾回收器和 OOM 问题的排查

整理 G1 的常用 JVM 参数,以及 OOM 排查中用到的 jps、jmap、pmap、perf 等命令,并弄清 RSS 与 VSZ 的区别。

简述 G1 垃圾回收器和 OOM 问题的排查

手写一个简单的 JVM(二):模拟运行 JVM

接上篇,把解析出的字节码放进模拟的运行时数据区:方法区、虚拟机栈、栈帧与局部变量表,实现指令分派并跑通一个 1+2 的加法。

手写一个简单的 JVM(二):模拟运行 JVM

手写一个简单的 JVM(一):解析 Class 文件

从 javap 的输出出发,对照 JVM 规范逐个字段拆解 Class 文件的二进制结构:magic、常量池、访问标记、字段与方法表,并用 Java 代码解析出来。

手写一个简单的 JVM(一):解析 Class 文件