`
alph0618
  • 浏览: 54736 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

jvm内存结构图

    博客分类:
  • java
 
阅读更多



 从图可以看出,jvm内存模型由三部分组成:

  • 堆:存放对象实例、数组;
  • 方法区:也叫持久代,存放类的信息(类名、方法、字段)、静态变量、编译后的代码;
  • 本地方法栈:也叫线程栈,存放引用(指向对象或数组在堆中的位置)、基本类型变量。

堆内存划分:

  • 新生代,包含了Eden区和Survivor区;
  • 老年代。

各区存放对象:

  • Eden区:存放新建的或短期的对象;
  • Survivor区:存放回收过后幸存下来的对象;
  • 老年代:存放长期存活的对象。

内存管理

只有垃圾收集器才能释放分配在堆中的对象和数组,工作流程如下:

1、新对象和数组分配到新生代的Eden区;

2、新生代发生Major GC时,对象或数组如果仍然存活,则会从Eden区移到Survivor区;

3、Major GC通常会导致应用线程暂停,它会在两个区中移动对象,如果对象仍然存活,并达到设定的年龄后,将会从新生代移到老年代;

4、当老年代进行垃圾回收时,会同时触发持久代也进行一次回收。同样,在发生Full GC的时候也会触发这两个回收。

 

 

 

  • 大小: 208.4 KB
分享到:
评论

相关推荐

    jvm的内存结构图的ppt模型分析.zip

    理解JVM内存结构对于优化Java程序至关重要。例如,合理设置新生代和老年代的比例,可以提高垃圾回收效率;控制栈帧大小和数量,能防止栈溢出;而了解直接内存的使用,可以帮助减少系统内存压力。 此外,JVM内存管理...

    jvm的内存结构图的ppt模型分析

    jvm的内存结构图,详细的介绍了jvm运行的模型流程,包括jvm运行的五大内存分布。通过什么是jvm什么是java编程程序的=中的三个兄弟jdk.jvm和jre的区别

    JVM内存结构详解

    文章目录一、你了解JVM内存结构吗在这之前需要知道JVM内存结构图——JDK1.81.1、程序计数器1.2、虚拟机栈(JVM Stack)1.1.1、java.lang.StackOverflowError问题1.3、本地方法栈1.4、元空间(MetaSpace)1.4.1、...

    JVM内存日志

    本文将深入探讨JVM内存结构、`jmap`工具的使用以及如何分析`dump.txt`文件中的内存日志。 1. JVM内存结构: - **堆内存**:这是JVM最大的内存区域,用于存储对象实例。堆内存分为新生代(Young Generation)、老...

    JVM内存配置优化

    在进行JVM内存配置优化之前,我们需要了解Java虚拟机(JVM)的内存结构。Java的逻辑内存模型大致分为几个部分: 1. **堆内存(Heap)**:主要用于存储对象实例、数组等引用类型的数据。在Java中使用`new`关键字创建的...

    Java 虚拟机JVM内存模型

    JVM规范定义了JVM的内存结构,包括类加载器、执行引擎、运行时数据区域等。规范确保不同厂商的JVM实现可以兼容同一Java程序。 ##### 2.2 Sun/Oracle JVM Sun/Oracle是JVM的主要开发者之一,其JVM实现以性能优异著称...

    JVM内存分析工具.7z

    IBM提供的ga456、ha456与jca457工具就是这样的利器,它们可以帮助开发者深入理解JVM内存的使用情况,找出内存泄漏或过度消耗内存的问题。 首先,ga456工具全称为"Garbage Collector and Memory Analyzer",它是一个...

    (三)MATJVM 内存分析工具.MAT JVM 内存分析工具

    在进行MAT JVM内存分析时,我们首先要理解JVM内存的基本结构,它主要分为堆内存(Heap)和非堆内存(Non-Heap)。堆内存又细分为新生代(Young Generation)、老年代(Old Generation)和永久代(Permanent ...

    浅析JVM内存结构和6大区域

    其实对于我们一般理解的计算机内存,它算是CPU与计算机打交道频繁的区域,所有数据都是先经过硬盘至... JVM内存的分配结构示意图  下面将逐一介绍下各个区域所做的工作及其充当的功能。  PC Register(PC寄存器)

    JVM图解-JVM指令-JVM原型图.rar

    在这个压缩包中,"JVM图解.png"可能是对JVM内部结构的可视化表示,"JVM图解"可能是一个详细的文档,解释了JVM的工作原理,而"JVM指令手册 中文版"则提供了JVM可执行的所有指令的详细信息。下面,我们将深入探讨JVM的...

    JVM详细解说图.zip

    JVM的详细解说图通常会展示其内部结构、工作原理以及如何执行Java程序的关键过程。在这个“JVM详细解说图.zip”压缩包中,包含了一张名为“微信图片_20210709194300.png”的图片,我们可以从这个图片中探讨几个重要...

    Jvm堆栈dump文件分析

    3. **类加载器分析**:展示类加载器层次结构,查找类加载问题,如类循环引用导致的内存泄漏。 4. **GC日志分析**:与垃圾收集(Garbage Collection, GC)相关的日志分析,帮助优化垃圾回收策略,减少不必要的停顿...

    JVM内存泄露

    ### JVM内存泄露详解 #### 一、引言与背景 在现代软件开发中,Java作为一种广泛应用的编程语言,因其自动垃圾回收机制而受到青睐。然而,尽管Java虚拟机(JVM)内置了垃圾回收功能,但内存泄露问题仍然普遍存在。...

    JVM 监控 调优 工具

    本文将深入探讨JVM内存结构、监控工具及其在调优和GC优化中的应用。 **JVM内存机构** JVM内存主要分为以下几个区域: 1. **堆内存(Heap)**:这是JVM中最大的一块内存区域,主要用于存储对象实例。堆被进一步...

    JVM思维导图(包含所有JVM知识)

    1. **JVM内存模型** - **对象创建与内存分配**:JVM根据对象大小和生命周期将其分配到堆内存的不同区域。小对象通常在Eden区创建,大对象直接进入老年代。对象的大小包括对象头、实例数据和对齐填充。 - **指针...

    JVM 体系结构详解

    JVM的体系结构涉及多个组件,包括类加载器、运行时数据区、执行引擎等。本文将详细介绍JVM的体系结构,以便更好地理解和应用Java技术。 首先,JVM是一种抽象的计算机架构,它基于栈式架构设计,拥有自己的指令集和...

    第04章 面向对象(上) 11 完整内存结构图与main方法详解

    面向对象编程是Java语言的核心特性,本章将深入探讨这一概念的上半部分,特别是针对“完整内存结构图”和“main方法”的详尽解析。内存结构图是理解程序运行时数据存储的关键,而main方法则是Java应用程序的入口点。...

    一点一滴探究JVM之内存结构

    我一直尝试着用不一样的文字来写博客!原因很简单,你讲的知识书上都有,那么每个人为什么不选择...今天的一点一滴探究JVM系列,打算复习一下jvm内存结构!至于学习这块知识的好处?一,从面试的角度来看,你了解jvm

    img JVM调优实战.pdf

    在对Java虚拟机(JVM)进行调优的过程中,我们首先需要理解JVM内存的工作原理以及各个内存区域的作用。JVM内存管理是整个Java应用程序性能优化的重要部分,它涉及对内存的分配、使用和回收的精细控制。 JVM内存可以...

Global site tag (gtag.js) - Google Analytics