JVM整理

一,基本概念

JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。

引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。

二,JVM内存结构分析(又名:java运行时数据区)

线程共享:堆,方法区

线程私有:栈,程序计数器

 


内存结构图

堆内存细分

 


堆内存

注意:jdk1.8以后,永久代不再存在于堆内存中了,而是转移到了方法区,成为了元空间meteSpace

栈内存细分

 


栈内存

三,JMM(java内存模型)

 


 

四,当前流行的JVM

①:sun公司的HotSpot

②:EBA的jRocket(现在已被sun公司收购)

③:IBM公司的J9

五,GC时堆内存迭代过程

 


 

六,几种垃圾回收器和垃圾回收算法

 


 

七,类加载流程

 


 

八,类加载器的向上依赖

 


 

九,类加载时的两种机制

①:全盘负责委托机制

 


 

②:双亲委托加载机制

 


 

十,GC流程图详解

 


 
posted @ 2019-09-03 15:16  舒眉问卷  阅读(70)  评论(0编辑  收藏  举报