JVM
2021-01-14 23:05:27 0 举报
JVM的一些内存结构、堆、栈、pc寄存器、类加载器结构
作者其他创作
大纲/内容
Method Area
Linking
内存动态分配
执行引擎
年轻代(Young/New generation)
JVM结构—简图
?
方法区
MethodArea
PC Registers for Thread1
引导类加载器
JVM跨语言的平台
Stack Frame
PC Registers
LV OS DL RA
Class Files
执行引擎Execution Engine
HeapArea
Java API
分析器
操作数栈
JavaScript
本地方法栈Native Method Stack
VMS
扩展类加载器
方法区Method Area
线程A
加载阶段
幸存者0区
class reference
线程3
初始化
Mac版JVM
Thread2
字节码文件
field reference
Stack Area
Target Code Generator
本地方法库
本地方法接口
PC
JRuby
类加载子系统
方法3
Native Method Stack
栈帧内部结构
老年代(Tenrue/Old Generation)
load link initialize
Groovy
Class Loader SubSystem
PC Registers for Threadn
堆heap
运行时数据区(Runtime Data Area)
Clojure
Resolve
栈帧
Verify
Code Optimizer
BootStrapClassLoader
方法1
永久代(Permanent generation)
Operand Stack
机器指令
运行时常量池
老年代
准备
Profiler
Native Method Interface(JNI)
解释器
动态连接
栈帧2
Thread3
链接Linking
Spring
方法2
本地方法栈
编译器
线程2的PC寄存器
Thread1
S1(to)
Runtime Data Area
string constant
Stack
伊甸园区
jdk7的堆空间
线程共享和线程私有结构
PC Registers for Thread2
invoke dynamic
SpringMVC
程序计数器Program Counter Register
一些附加信息
栈帧3
Heap
堆空间(Heap Space)
Win版JVM
栈帧1
Dynamic Linking
...
ApplicationClassLoader
解析
操作系统
class文件
Mac操作系统
类加载器子系统Class Loader
N
当前栈帧
垃圾收集技术
装载类HelloLoader了吗
幸存者1区
用户User
Minor GC
栈帧4
局部变量表
汇编语言
Java程序
JVM
链接阶段
结束
Y
Initalization
Return Value
Native Method Library
Thread
NMS
run engin
系统类加载器
Linux操作系统
高级语言
Jython
Java虚拟机
链接
Scala
Kotlin
Native Stack
解析Resolution
running data area
MajorGC
Mybatis
我们写的应用程序
类的加载过程
类加载子系统的作用
类型信息
代码优化器
垃圾回收器
方法区(元空间)
本地方法接口Native Method Interface
方法4
JVM结构—详细图
ExtensionClassLoader
伊甸园(Eden)
PC Register
线程n的PC寄存器
线程1的PC寄存器
Java VS C++
堆
method reference
验证
方法返回地址
S0(form)
jdk8的堆空间
帧数据区
虚拟机栈
类加载器子系统
Linux版JVM
运行时数据区
Prepare
验证Verification
本地方法接口、本地方法库
硬件(如:CPU等)
Garbage Collection
初始化HelloLoader
目标代码生成器
Windows操作系统
CPU
引入运行时数据区
Local Variables
Execution Engine
ClassLoaderSubSystem
中间代码生成器
HelloLoader装载顺利
PC寄存器
Current Class Constant Pool Reference
Struts
Interpreter
栈顶
方法区和栈的关联结构
Java语言的跨平台性
栈底
Java
Intermediate CodeGenerator
线程1
准备Preparation
调用HelloLoader.main()
JVM的位置
GC
C++
name and type
开始
抛出异常
初始化Initialization
numberic constant
方法与栈帧
线程2
Loading
元空间(Meta space)
加载Loading
0 条评论
下一页