根据《Java虚拟机规范(第二版)》的规定,结构如下
1)程序计数器
Program Counter Register
是一小块内存空间,他的作用是当前线程所执行的行号指示器。此内存区是唯一一个没有规定OutOfMemoryError情况的区域。
2)Java虚拟机栈
Java Virtual Machine Stack
生命周期与线程相同,,描述的是java方法执行的内存模型。每个方法被执行的时候都会创建一个栈帧。
3)本地方法栈
Native Method Stack
为虚拟机使用到的native方法服务。在Sun HotSpot中,把本地方法栈和虚拟机栈和二为一了。
4)方法区
Method Area
被所有线程共享的一块内存区,存放一被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码等数据。方法区和永久代本质上并不等价,HotSpot只是用永久代实现方法区而已。
5)堆
Heap
被所有线程共享的一块内存区,存放对象实例。
6)运行时常量池
Runtime Constant Pool
是方法区的一部分,用于存放编译器生成的各种字面量和符号。例如:String类的intern()方法
7)直接内存
Direct Memory
并不是虚拟机运行时数据区的一部分,它使用了Native函数库直接分配堆外内存。
- 浏览: 186384 次
- 性别:
- 来自: 北京
最新评论
-
ls0609:
语音实现在线听书http://blog.csdn.net/ls ...
ANDROID语音识别示例 -
AILIKES:
1927105 写道示例中219应该才是虚拟IP多谢指正,21 ...
虚拟IP原理 -
gaoke:
1927105 写道示例中219应该才是虚拟IP是的
虚拟IP原理 -
lubacui:
我居然看完了,貌似有些道理。
如何掌控自己的时间,并改变现状? -
1927105:
示例中219应该才是虚拟IP
虚拟IP原理
相关推荐
#### 一、JVM内存模型概览 JVM(Java虚拟机)内存模型主要由以下几个部分组成:程序计数器、Java虚拟机栈、本地方法栈、Java堆以及方法区(在JDK 8之后称为元空间)。下面将对这几个部分进行详细介绍。 #### 二、...
#### JVM 内存模型概览 JVM 在执行 Java 程序的过程中,将其所管理的内存划分为几个不同的区域,每个区域有其特定的功能和生命周期。理解这些区域如何工作对于深入理解 JVM 至关重要。 ##### 1.1 方法区 (Method ...
### JVM-整体结构原理深度解析 #### 一、JVM简介及跨平台性 ##### 1.1 JVM定义 JVM(Java Virtual Machine),即Java虚拟机,是一种...此外,了解JVM内存模型有助于开发者优化代码性能,避免常见的内存泄漏等问题。
深入理解JVM,意味着掌握其内存模型、垃圾回收机制、类加载机制、性能优化技巧等。此外,熟悉《JVM Specification》和相关的开源项目(如OpenJDK)是进阶学习的宝贵资源。通过实践,如分析JavaCore和dump文件,可以...
JVM的内存模型主要包括以下几个方面: - **Eden区**:年轻代中的主要区域,新创建的对象首先在这里分配。 - **Survivor区**:分为From Survivor Space和To Survivor Space两部分,通过Minor GC进行对象的复制和筛选...
在高级篇和优化篇中,虽然没有提供具体的内容,我们可以推断出,高级篇可能包含了对JVM更深层次的探讨,例如JVM内存模型的高级细节、类加载器的深入讨论、即时编译器(JIT)的工作原理等。而优化篇可能会涵盖JVM性能...
- 了解JVM内存模型:理解Java的内存区域(如堆、栈、方法区等)和垃圾回收机制,有助于更好地使用MAT。 总之,Eclipse Memory Analyzer是Java开发者诊断内存问题不可或缺的工具,它通过丰富的视图和报告,使复杂的...
JVM内存模型主要包括以下组成部分: ##### 2.1 JVM规范 JVM规范定义了JVM的基本结构及其各个组成部分的功能。它包括Classloader子系统、Execution Engine子系统以及Runtime Data Area和Native Interface组件。 ##...
### JVM_GC调优详解 #### 一、JVM体系结构概览 Java虚拟机(JVM)作为Java程序的运行环境,其内部结构复杂且高效。为了更好地理解JVM_GC调优,...同时,掌握JVM内存模型和垃圾回收器的工作原理也是进行有效调优的基础。
Java程序的执行过程涉及到了JVM的内存模型和执行引擎,主要包括以下几个方面: 1. **内存模型**: - **程序计数器**:线程私有的,用来记录当前线程所执行的字节码指令的地址。 - **虚拟机栈**:用于存储局部变量...
JVM还提供了多种垃圾回收算法来自动回收不再使用的对象所占用的内存空间,如标记-清除算法、复制算法等。 #### 异常处理 异常处理是Java程序设计中的一个重要方面。JVM提供了一套异常处理机制,通过try-catch-...
#### 二、JVM内存模型 **2.1 JVM规范** JVM规范定义了JVM的基本架构,包括两个子系统和两个组件: - **Classloader(类装载器)子系统**:负责加载Java类到方法区。 - **Execution Engine(执行引擎)子系统**:...
##### 5.1 JVM内存模型 Java内存模型定义了线程之间的内存可见性规则。它确保了数据的一致性和正确性,是实现高效并发的基础。Java内存模型主要关注三个关键属性:原子性、可见性和有序性。 - **原子性**:指操作...
【深入理解Java虚拟机——JVM知识概览】 在Java编程世界中,Java虚拟机(JVM)扮演着至关重要的角色。它是一个运行Java字节码的虚拟计算机,为Java程序提供了一个跨平台的运行环境。"深入理解Java虚拟机"这本书是...
例如,`2196407-20220513094535367-225410216.png`可能展示了JVM内存模型的概览图,`image-20230420112355076.png`可能描绘了类加载的过程等。 总之,理解Java运行时数据区中的方法区对于优化代码性能、排查内存...
- **内存模型**:阐述JVM中的内存布局以及堆栈等内存区域的管理策略。 - **执行引擎**:解释JVM如何执行字节码指令。 - **垃圾回收机制**:探讨JVM中不同的垃圾回收算法及其实现原理。 - **线程管理**:介绍JVM如何...
#### 一、Java内存模型概览 Java程序的运行依赖于一个精心设计的内存模型,该模型确保了程序在不同环境中的一致性和高效性。Java内存模型主要包括两个部分:栈(Stack)和堆(Heap)。这两部分在功能上有着明显的...
#### 一、Java内存模型概览 Java的内存管理是其核心技术之一,深入了解Java如何管理内存对于开发高质量的应用程序至关重要。Java内存模型主要包括以下几个部分: - **寄存器**:这部分内存由硬件直接支持,通常...