首页 > 系统相关 >JVM内存结构

JVM内存结构

时间:2023-05-25 14:44:55浏览次数:35  
标签:私有 虚拟机 线程 内存 JVM 方法 结构

JVM内存结构由五部分组成:

:java堆是所有线程共享的一块内存,几乎所有的对象实例和数组都要在堆中分配内存,因此该区域也经常发生垃圾回收操作。

方法区:存放已被加载的类信息。比如:常量、静态变量等。

虚拟机栈:线程私有的,每个方法执行时都会创建一个栈帧,用来存储局部变量、操作数、动态链接以及方法返回等信息。当线程请求的栈深度超出了虚拟机允许的最大深度就会抛出StackOverFlowError错误。

本地方法栈:线程私有的。保存的是native方法的信息,当JVM创建的线程执行native方法时,JVM不会在虚拟机栈中创建栈帧,而是简单的动态链接并直接调用该方法。

程序计数器:线程私有的。是一块很小的内存,用来记录当前线程执行的行号,也就是记录当前线程执行到哪一行代码。

标签:私有,虚拟机,线程,内存,JVM,方法,结构
From: https://www.cnblogs.com/yhb-blogs/p/17431145.html

相关文章

  • 学习日记——选择结构
    1.if选择结构①基本if选择结构定义:某种场景下需要实现某个条件下执行某个操作,而某个条件下不执行某个操作结构:If(){}②if-else选择结构定义:无法实现多分支的场景结构:if(){}else{}③多重if选择结构定义:有多个条件(3个条件及以上的场景)结构:if(){ }else{} ④嵌套......
  • 深度学习进阶篇-预训练模型[2]:Transformer-XL、Longformer、GPT原理、模型结构、应用
    深度学习进阶篇-预训练模型[2]:Transformer-XL、Longformer、GPT原理、模型结构、应用场景、改进技巧等详细讲解1.Transformer-XL:AttentiveLanguageModelsBeyondsaFixed-LengthContext1.1.Transformer-XL简介在正式讨论Transformer-XL之前,我们先来看看经典的Transform......
  • 结构体、共用体、枚举类型
    12.0本章内容导读之前已经来过一堆数据了,本周又来了一堆数据,这堆数据和之前来过的那堆数据有何不同呢?如果说前面来的都是清一色的陆战队的话,那么本周则是海陆空一起来了,它更强大了。本周,我们要介绍几种新的数据类型:结构体、共用体和枚举类型。结构体的应用主要体现在可以用于精......
  • 设计模式(二)结构型
    1、代理模式创建一个代理对象来控制对另一个对象的访问,以提供额外的功能或限制。1publicinterfaceFoodService{2FoodmakeChicken();3FoodmakeNoodle();4}56publicclassFoodServiceImplimplementsFoodService{7publicFoodmakeChic......
  • 【一文教你学会动态内存管理】
    1.为什么会存在动态内存分配?2.动态内存函数的介绍2.1malloc函数和free函数2.2calloc函数2.3realloc3.常见的动态内存错误3.1对NULL指针的解引用操作3.2对动态开辟空间的越界访问3.3对非动态开辟内存使用free释放3.4使用free释放一块动态开辟内存的一部分3.5对同一块动......
  • 学习笔记-JVM
    JVM的位置JVM是运行在操作系统上的虚拟机,存在于JRE当中JVM的类型HotSpotSun公司用的基本都是这个JRockitBEAJ9VMIBMJVM的体系结构本地方法接口JNIJNI的作用拓展java的使用,融合不同的编程语言为java所用最初是C/C++因为最初java诞生......
  • linux下查看电脑运行内存及CPU
    1、查看系统内存大小的详细信息,可以查看总内存,剩余内存、可使用内存等信息cat/proc/meminfo2、查看系统的CPU型号、类型以及大小cat/proc/cpuinfo......
  • LINUX系列-服务器cpu和内存篇
    一系统内存过高排查方法1、使用top命令查看当前服务器上所有进行使用内存情况,可以使用shift+m按键,将进程按照内存使用情况排序。如若某个进程占用过多内存,使用kill<pid>终止该进程。2、检查是否有内存泄漏情况。psaux--sort=-%mem该命令可按照内存使用率高低进行......
  • 结构体强制转换导致的内存对齐问题
    在开发ethercat协议栈邮箱通讯的过程中遇到一个BUG,主站协议栈传过来的邮箱数据包是正确的,但是到FOE服务处理时,使用结构体引用的方式处理时发现数据是不对的。如下所示1UINT8MailboxServiceInd(TMBXMBXMEM*pMbx)2{3UINT8result;45/*onlyFoEisallow......
  • 3 处理器体系结构
    现代微处理器可以称得上是人类创造出的最复杂的系统之一。一块手指甲大小的硅片上,可以容纳一个完整的高性能处理器、大的高速缓存,以及用来连接到外部设备的逻辑电路。从性能上来说,今天在一块芯片上实现的处理器已经使20年前价值1000万美元、房间那么大的超级计算机相形见绌了。即......