当前位置: 首页 > web >正文

八股---7.JVM

1. JVM组成

1.1 JVM由哪些部分组成?运行流程?

难易程度:☆☆☆        出现频率:☆☆☆☆

  • Java Virtual Machine:Java程序的运行环境(java二进制字节码的运行环境)
  • 好处:一次编写,到处运行;自动内存管理,垃圾回收机制

  • JVM  <---> 操作系统(windows、linux)<---> 计算机硬件(cpu、内存条)
    java跨平台是因JVM屏蔽了操作系统的差异,真正运行代码的不是操作系统

JVM 主要由四个部分组成: 运行流程:
Java 编译器(javac)将 Java 代码转换为字节码(.class 文件)

1. 类加载器(ClassLoader)

  • 负责加载 .class 文件,将 Java 字节码加载到内存中,并交给 JVM 执行

2. 运行时数据区(Runtime Data Area)

  • 管理JVM使用的内存主要包括:

  • 方法区(Method Area):存储类的元数据、常量、静态变量等。

  • 堆(Heap):存储所有对象和数组,垃圾回收器主要回收堆中的对象。

  • 栈(Stack):每个线程都有一个栈,用于存储局部变量、方法调用等信息。

  • 程序计数器(PC Register):每个线程有一个程序计数器,指示当前线程正在执行的字节码指令地址。

  • 本地方法栈(Native Method Stack):支持本地方法的调用(通过 JNI)。

3. 执行引擎(Execution Engine)

  • 负责执行字节码,包含:
  • 解释器:逐条解释执行字节码。

http://www.xdnf.cn/news/12819.html

相关文章:

  • 基于 React Native for HarmonyOS5 的跨平台组件库开发指南,以及组件示例
  • Cursor 编辑器, 使用技巧,简单记录一下
  • 求解一次最佳平方逼近多项式
  • 算法题(164):贴海报
  • 电力系统时间同步系统之三
  • 在 Java 中!(逻辑非)和 ||(逻辑或)的优先级关系
  • 生成模型从自回归到变分自动编码器
  • 【PhysUnits】15.18 Unit基础结构 (unit.rs)
  • 无需登录即可使用的Web应用网站
  • CMS、G1、ZGC、Shenandoah 的全面对比
  • 淘晶驰的串口显示屏T0 T1 K0 X2 X3 X5之间有何区别 各自的优势是啥 划分的依据是啥
  • 获取环境变量的两种方式:getenv()和environ
  • Nginx Stream 层精准定位ngx_stream_geoip_module
  • 指针的定义与使用
  • Mybatis-Plus的LambdaWrapper
  • 嵌入式面试高频(5)!!!C++语言(嵌入式八股文,嵌入式面经)
  • 将数据库表导出为C#实体对象
  • EMC测试
  • 6月7日day47打卡
  • [ACTF2020 新生赛]Include 1(php://filter伪协议)
  • 嵌入:AI 的翻译器
  • golang常用库之-go-i18n库(国际化)
  • 26、跳表
  • SEO长尾词优化实战策略
  • 【大模型原理与技术-毛玉仁】第五章 模型编辑
  • leetcode刷题日记——二叉搜索树中第 K 小的元素
  • MIT 6.S081 Lab 11 networking
  • RD-Agent-Quant:一个以数据为中心的因素与模型联合优化的多智能体框架
  • CANoe trace里面显示的Time 具体是什么意思
  • Python抽象基类实战:构建广告轮播框架ADAM的核心逻辑