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

Java虚拟机的基本结构

jvm它包含以下部分

第一个:类加载系统

类加载子系统,负责类的加载。类加载器有三种类型:引导类加载器、扩展类加载器、应用程序类加载器。

第二个:运行时数据区

 包含了程序计数器、Java虚拟机栈、本地方法栈、堆 、方法区。

        程序计数器:记录当前线程所执行的字节码指令的位置,线程私有

        Java虚拟机栈:局部变量、操作数栈、动态连接、方法返回地址,线程私有

        本地方法栈:为本地方法服务,存储相关执行信息,线程私有

        堆:存储对象实例和数组,所有线程共享

        方法区:存放常量、静态变量、类的信息,所有线程共享

第三个:执行引擎

执行引擎负责将JVM加载的字节码转换为机器指令执行,支持跨平台兼容性。包含了解释器、即时编译器、垃圾回收器

第四个:本地接口

本地接口是Java虚拟机与本地代码交互的桥梁,允许Java调用C/C++等编写的本地方法,用于性能优化或底层系统交互。访问底层操作系统API、调用硬件驱动、集成遗留系统代码库等场景中使用。

第五个:元空间 (JDK8及之后的版本)

        jdk8引入的概念,它是用来存储类的元数据的区域,取代了之前的永久代(PermGen)。

下面是整理的脑图

相关文章:

  • 日语学习-日语知识点小记-构建基础-JLPT-N4阶段(18):条件形 文法
  • Gartner《Container发布与生命周期管理最佳实践》学习心得
  • libwebsockets:高性能跨平台WebSocket库实践指南
  • Vue基础(8)_监视属性、深度监视、监视的简写形式
  • 《全球短剧正版授权通道,助力平台出海与流量变现》
  • HashMap中put()方法的执行流程
  • 联邦学习图像分类实战:基于FATE与PyTorch的隐私保护机器学习系统构建指南
  • Python-77:古生物DNA序列血缘分析
  • 指针运算典型例题解析
  • AI生成视频推荐
  • List接口
  • PySide6 GUI 学习笔记——常用类及控件使用方法(常用类边距QMarginsF)
  • RT-Thread 深入系列 Part 4:组件包管理与软件框架
  • Java动态代理超详细解析:三步+内存图(堆栈分析)
  • Linux进程间信号
  • ts装饰器
  • 从杰夫・托尔纳看 BPLG 公司的技术创新与发展
  • LeetCode 39 LeetCode 40 组合总和问题详解:回溯算法与剪枝优化(Java实现)
  • Python爬虫实战:获取woodo网各类免费图片,积累设计素材
  • [题解]2023CCPC黑龙江省赛 - Folder
  • 马鞍山市原常务副市长黄化锋一审获刑11年,涉案金额三千余万元
  • 中国社科院:网文市场超430亿元,作者破3000万人
  • 印度证实印巴已同意停火
  • 安徽亳州涡阳县司法局党组书记刘兴连落马
  • 上海:企业招用高校毕业生可享受1500元/人一次性扩岗补助
  • 本科生已发14篇SCI论文被指由其教授父亲挂名,重庆大学成立工作组核实