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

JVM 概述

JVM概述

image-20240528220016247

JVM的全为 Java Virtual Machine,但是目前的 JVM 已经不再与任何语言进行深度耦合了,其本质就是运行在计算机上的程序,职责是运行处理 Java 字节码文件。

JVM 功能

解释和运行

JVM 会对字节码文件中的指令,实时的解释为机器码,在计算机上执行。

内存管理

  1. JVM 会自动为对象、方法等分配内存。
  2. JVM 的自动垃圾回收机制,会及时回收不再使用的对象,减少内存不必要的占用。

即时编译(JIT:Just In Time)

JVM 会对热点代码进行优化,可以大大提升 Java 代码的执行效率。

因为 Java 语言为了支持跨平台特性,需要进行实时解释。

image-20240528220934811

一份同样的字节码文件,在Windows、Linux等不同的操作系统,会根据其环境的JDK,将字节码解释成该系统能够执行的机器码,然后才会交给底层的操作系统去执行。正因如此,如果 Java 不做任何处理,其性能不如 C、C++ 等语言。

image-20240528221323212

为了解决这个问题,Java 会将热点代码字节码指令(即会被多次执行的代码片段),将其解释优化成机器码之后先保存在内存中一份,等到下一次执行的时候,就直接从内存中取出已经编译好的机器码直接使用,这样就会大大提高效率。

常见的JVM

名称作者支持版本社区活跃度(github star)特性适用场景
HotSpot
(Oracle JDK版)
Oracle所有版本高(闭源)使用最广泛,稳定可靠,社区活跃JIT支持Oracle JDK默认虚拟机默认
HotSpot
(Open JDK版)
Oracle所有版本中(16.1k)同上开源,Open JDK默认虚拟机对JDK有二次开发需求
GraalVMOracle11,17,19企业版支持8高(18.7k)多语言支持高性能、JIT、AOT支持微服务、云原生架构需要多语言混合编程
Dragonwell JDK
龙井
Alibaba标准版8,11,17扩展版11,17低(3.9k)基于OpenJDK的增强高性能、bug修复、安全性提升JWarmup、ElasticHeap、Wisp特性支持电商、物流、金融领域对性能要求比较高
Eclipse OpenJ9
(原IBMJ9)
IBM8,11,17,19,20低(3.1k)高性能、可扩展JIT、AOT特性支持微服务、云原生架构

JVM 的组成

image-20240529111251563
  • 类加载器:加载 class 字节码文件中的内容到内存中。
  • 运行时数据区:负责管理 JVM 使用到的内存,例如创建对象和销毁对象时的内存管理。
  • 执行引擎:将字节码文件中的指令解释为机器码,同时使用即时编译器优化性能。
  • 本地接口:JVM 有的采用 C/C++ 语言进行编写,所以需要调用本地提供的已经编译的方法,这些方法并不存在于字节码文件中。

相关文章:

  • 基于Java,SpringBoot,Vue,HTML家政服务预约系统设计
  • C语言学习之两个数值交换的算法
  • SOME/IP中”客户端消费“及”服务端提供”的解析
  • MCP 集合网站
  • Kotlin集合操作陷阱与突围:如何优雅地边遍历边修改MutableList
  • TestNG 单元测试详解
  • Spring Boot循环依赖全解析:原理、解决方案与最佳实践
  • DDS波形发生器仿真及技术原理
  • rabbitmq引入C++详细步骤
  • Go之Slice和数组:深入理解底层设计与最佳实践
  • 边缘计算场景下的模型轻量化:TensorRT部署YOLOv7的端到端优化指南
  • 云原生周刊:K8s 中的 GPU 共享
  • 【Pandas】pandas DataFrame iterrows
  • WPF 中的元素继承层次结构 ,以下是对图中内容的详细说明:
  • 若依RBAC权限控制SpringSecurity(自用)
  • WPF GDI 画 晶圆Mapping图
  • CSS 美化页面(三)
  • MegaTTS3: 下一代高效语音合成技术,重塑AI语音的自然与个性化
  • 浏览器运行Pytorch无法启用显卡
  • poll为什么使用poll_list链表结构而不是数组 - 深入内核源码分析
  • “女乘客遭顺风车深夜丢高速服务区”续:滴滴永久封禁两名涉事司机账号
  • “五一”假期逛上海车展请提前购票,展会现场不售当日票
  • 这就是上海!
  • 五一假期如何躺赚利息?来看国债逆回购操作攻略
  • 新经济与法|如何治理网购刷单与控评?数据合规管理是关键
  • 俄外长与美国务卿通电话,讨论俄美关系及乌克兰问题