关于JVM运行时的内存分布有大量文章写过,没必要重复,在一个博客上看到下面这张图,很好地说清楚了JVM运行时内存各区域的细节,拿来引用一下。
下图来自JVM Internals 这篇文章。里面总结了JVM基本的一些知识,很全面,值得看下。
JVM的基础知识分布
1. JVM运行时内存分布以及各区域的组件细节 -- Program Counter -- JVM栈 -- Frame -- Local Variables table -- Operation Stack -- Return value -- Current Class Constant Pool Reference -- Heap -- Young Generation -- Eden -- S0 -- S1 -- Old Generation -- Non Heap -- 永久代 -- 方法区 -- Class元数据 -- 运行时常量池 -- String Table -- Code Cache
2. Class文件结构及各部分细节
3. Java指令集各指令
4. ClassLoader 层次结构 / 加载细节 / 原理
5. GC的基本原理 / 各种GC收集器算法
6. JVM调优 / 各种工具
7. Java对象模型OOP-Klass
8. JVM线程模型
9. 字节码增强技术 -- ASM / Javassist / Cglib / Java Proxy / Instrument
|
|