知识大全 JVM内存组成及分配
Posted 知
篇首语:做一个俗人,要知世俗而不俗世,知世故而不世故。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 JVM内存组成及分配相关的知识,希望对你有一定的参考价值。
JVM基础:JVM内存组成及分配 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
java内存组成介绍 堆(Heap)和非堆(Non heap)内存 按照官方的说法 Java 虚拟机具有一个堆 堆是运行时数据区域 所有类实例和数组的内存均从此处分配 堆是在 Java 虚拟机启动时创建的 在JVM中堆之外的内存称为非堆内存(Non heap memory) 可以看出JVM主要管理两种类型的内存 堆和非堆 简单来说堆就是Java代码可及的内存 是留给开发人员使用的 非堆就是JVM留给 自己用的 所以方法区 JVM内部处理或优化所需的内存(如JIT编译后的代码缓存) 每个类结构(如运行时常数池 字段和方法数据)以及方法和构造方法 的代码都在非堆内存中 组成图◆ 方法栈&本地方法栈 线程创建时产生 方法执行时生成栈帧 ◆ 方法区 存储类的元数据信息 常量等 ◆ 堆 java代码中所有的new操作 ◆ native Memory(C heap) Direct Bytebuffer JNI Compile GC; 堆内存分配 JVM初始分配的内存由 Xms指定 默认是物理内存的 / ;JVM最大分配的内存由 Xmx指 定 默认是物理内存的 / 默认空余堆内存小于 %时 JVM就会增大堆直到 Xmx的最大限制 空余堆内存大于 %时 JVM会减少堆直到 Xms的最小限制 因此服务器一般设置 Xms Xmx相等以避免在每次GC 后调整堆的大小 对象的堆内存由称为垃圾回收器的自动内存管理系统回收
非堆内存分配 JVM使用 XX:PermSize设置非堆内存初始值 默认是物理内存的 / ;由XX:MaxPermSize设置最大非堆内存的大小 默认是物理内存的 / JVM内存限制(最大值) JVM内存的最大值跟操作系统有很大的关系 简单的说就 位处理器虽然 可控内存空间有 GB 但是具体的操作系统会给一个限制 这个限制一般是 GB GB(一般来说Windows系统下为 G G Linux系统 下为 G G) 而 bit以上的处理器就不会有限制了 cha138/Article/program/Java/hx/201311/26886
相关参考
详解JVM内存结构组成 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 你对JVM内存结构是否了解
JVM内存模型及垃圾收集策略解析(1) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一JVM内
SomeofthedefaultvaluesforSunJVMsarelistedbelow
JVM内存模型及垃圾收集策略解析(2) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 二JAVA
JVM内存溢出的两大类型及解决方案 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 你知道如何解决
深入了解JVM内存结构 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 你对JVM内存结构是否熟悉
MyEclipse内存不足之JVM内存浅谈 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! MyE
JVM内存结构 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! ()类装载子系统 装载连接初始化
深入Java底层:内存屏障与JVM并发详解 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 内存屏
JVM运行时内存空间结构 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! JVM执行Java程序的