JDK体系机构和JVM架构解析
JDK体系结构

JDK = 灰蓝色java命令 + JRE核心类库(JVM)
a.java通过javac命令变成a.class文件通过JVM跨平台运行
JVM虚拟机:

class文件进入类装载子系统---->运行时数据区--->字节码执行引擎
堆和栈是所有线程共享
堆:new出来的对象放堆里面

喜闻乐见GC
可达性分析算法 从GC Roots开始找,这一条链全部放到eden
开始minor GC
无限new对象,JVM调优查看:

老年代满了 fullGC 全回收
栈:线程局部变量放入栈区(单独取出一些内存) 一个方法对应一个栈帧
局部变量表:存放局部变量
操作数栈:临时放入数据进行运算
动态链接:
方法出口:
main方法局部变量(new出来的)引用于堆内存
程序计数器:解决多线程问题
方法区用单独物理内存:jdk1.8以前永久代 ,之后元空间 , 存放对象的地址等 常量 静态变量 类信息等
本地方法栈:c/c++语言实现,新老系统相互交互
!!!
JVM调优
目的:减少STW(GC时停止所有线程)

浙公网安备 33010602011771号