码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 面试题 | jvm内存分区(上)程序计数器、虚拟机栈、本地方法栈


    最近看了寒食君jvm系列视频,讲jvm内存分区,记录一波。
    主要内容是:1.jvm内存分区的划分:按线程共享和线程独占的性质划分:堆和方法区属于线程共享的;程序计数器、虚拟机栈(可以理解为java方法栈)、本地方法栈(被native关键字修饰的方法栈)属于线程独占的
    2.以上分区的作用及相关重点,对栈帧有详解

    寒食君-【精讲JVM】程序计数器、虚拟机栈、本地方法栈这块彻底玩儿明白了

    jvm内存分区又称jvm内存模型
    在这里插入图片描述

    一、jvm内存分区介绍

    方法区:略
    堆:存放对象
    虚拟机栈:java方法栈,与本地方法栈的对应的概念
    本地方法栈:被native关键字修饰的方法栈
    程序计数器:存放当前线程将要执行的指令地址

    栈帧详解:
    栈帧结构:局部变量区、动态链接、操作数栈、方法返回值
    栈帧结构可以通过javap反编译class文件后观察。javap是JDK自带的反汇编器,可以通过反编译生成汇编代码
    栈帧是什么?可以理解为方法调用的抽象,在jvm中,方法会被封装成栈帧。程序运行对应的是方法的调用,方法的调用对应的是栈帧的出入栈
    栈帧的各个结构的作用:
    1.局部变量区:存放局部变量信息
    2.动态链接:动态链接对应类加载过程中的“解析”过程,将静态引用替换成直接引用。这个动态链接只会发生在多态的场景,因为非多态场景的引用替换可以直接在类加载的过程中解决掉、不必等到程序运行时解决
    3.操作数栈:什么是操作数,可以理解为要操作的变量。为啥需要个栈保存这些变量,出入栈做运算方便??操作数栈直接会有块共享区域,为了解决操作数栈A的返回值恰好是操作数栈B的入参这样的场景,这是一种优化体现
    4.方法的返回值:得到方法的返回值后会相应地把操作数值改掉

    感受:
    联系硬件内存理解jvm的内存分区会好理解一点;
    javap反汇编命令没用过

    二、实验

    实验javap反编译器观察汇编语言

    其他博客参考

    添加链接描述

  • 相关阅读:
    软件构造 | Equality in ADT and OOP
    统信UOS桌面操作系统安装教程
    Ubuntu 系统安装 VS Code 并配置 C++ 环境
    【Vue原理解析】之异步与优化
    DAO 的使用原则和适用范围
    昨晚直播小鱼搞了个开源库之FishProtocol,目前已经两颗星
    vue 封装Form 表单组件
    2.10 PE结构:重建重定位表结构
    Mysql基础篇(Mysql数据类型)
    Python吴恩达深度学习作业15 -- YOLO原理及应用(自动驾驶——汽车检测)
  • 原文地址:https://blog.csdn.net/xianyu_x/article/details/121803032
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号