做个java程序员n多年了,一直以来没搞明白jvm的内存分配。静下心来琢磨下。
下面的内容全部来自网络,基本无原创。只是学习笔记而已。
1 JVM整体架构
JVM specification中的JVM整体架构。
如下图
主要包括两个子系统和两个组件: Class loader(类装载器) 子系统,Execution engine(执行引擎) 子系统;Runtime data area (运行时数据区域)组件, Native interface(本地接口)组件。
1.1
Class loader子系统的作用 :
根据给定的全限定名类名(如 java.lang.Object)来装载class文件的内容到 Runtime data area中的method area(方法区域)。Javsa程序员可以extends
java.lang.ClassLoader类来写自己的Class
loader。
1.2
Execution engine子系统的作用 :
执行classes中的指令。任何JVM
specification实现(JDK)的核心是Execution engine, 换句话说:Sun 的JDK 和IBM的JDK好坏主要取决于他们各自实现的Execution engine的好坏。每个运行中的线程都有一个Execution
engine的实例。
1.3 Native interface组件 :
与native libraries交互,是其它编程语言交互的接口。
1.4
Runtime data area 组件:
这个组件就是JVM中的内存。 下面对这个部分进行详细介绍。
- 大小: 22.3 KB
- 大小: 11.5 KB
分享到:
相关推荐
主要是JVM内存分配及简单的JVM性能调优
关于java的内存分配问题,jvm的运行原理相关资料总结
JVM初始分配的内存.doc JVM初始分配的内存.doc
个人整理 jvm相关知识 包括内存分配机制 垃圾回收机制 垃圾收集器相关 及 垃圾收集算法
NULL 博文链接:https://younglibin.iteye.com/blog/1959816
1.jvm内存结构及功能概述 2.Jvm Heap 内存结构 3.Jvm 的内存分配
23丨如何优化JVM内存分配?.html
1.1 对象优先在Eden区分配 1.2 大对象直接进入老年代 1.3 长期存活的对象将进入老年代
Jvm对象内存分配理解
详细介绍了JVM 内存管理相关知识 内存空间( VM运行时数据区域) ◦ 内存结构 ◦ 内存空间 内存分配 内存回收(GC) 内存分析工具
JVM初探- 内存分配、GC原理与垃圾收集器,从从提上讲解了jvm中GC的原理、基本的算法和针对不同内存区使用的算法,同时,详细的讲解了当前主要使用的垃圾收集器
JVM内存段分配,Java垃圾回收调优,Heap设定
1、JVM 内存分配图解的 Visio 工程图。 2、直接下载使用、可自行调整和修改
NULL 博文链接:https://bxf12315.iteye.com/blog/1575773
JVM垃圾回收器和内存分配策略
jmap -heap pid可以查看应用程序堆的信息jstat可以打印元空间信息MC :分配到元空间大小MU:已使用的元空间大小 元空间是可以自己扩容的元空间:
JVM初探内存分配GC原理与垃圾收集器共16页.pdf.zip