JVM技术简介

JVM技术简介

JVM介绍

​ JVM是Java Virtual Machine的缩写,是一个可以运行JAVA字节码的虚拟计算机他有自己的指令集、内存区域、执行引擎,拥有自己独立的运行机制,是JAVA平台的一部分。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8769NxqT-1654525625983)(C:\Users\彭\AppData\Roaming\Typora\typora-user-images\image-20220606212720497.png)]

其中,图中的

​ JRE(Java Runtime Environment) Java 程序运行时的一些基础库类,同时包含JVM。

​ JDK(Java Development Kit) Java程序开发工具包(包含了jre.jvm工具).

​ JVM是 Java 程序能够实现跨平台的基础(Java的跨平台本质上是通过不同平台的JVM实现的),它的作用是加载Java字节码(bytecode),然后翻译或解释成对应平台的机器码再交由 CPU 执行。如图-2所示:

在这里插入图片描述

​ 程序在执行之前先要把 Java 代码(.java)转换成字节码(.class),JVM 通过类加载器 (ClassLoader)把字节码加载到内存中,但字节码文件是JVM 的一套指令集规范(每一条JAVA指令,Java虚拟机规范中都有详细定义,如怎么取操作数,怎么处理操作数,处理结果放在哪里。),并不能直接交给底 层操作系统去执行,因此需要特定的命令解析器执行引擎(Execution Engine) 将字节码翻译成底层机器码,再交由 CPU 去执行。

市场上主流的JVM

​ JVM是一种规范,基于这种规范,不同公司就对此规范做了具体实现,例如市场上的一些主流JVM如下:

​ 1、HotSpot VM (Sun公司研发,后在2010年由Oracle公司收购)。

​ 2、JRockit VM (BEA公司研发,后在2008年由Oracle公司收购)。

​ 3、J9 VM (IBM 内部使用)。

​ 4、TaobaoJVM(AliJVM团队开发,基于OpenJDK开发了AlibabaJDK)

​ 说明:HotSpot目前是应用最官方,最主要的一款JVM虚拟机。

为什么要学习JVM

深入理解JVM可以帮助我们从平台角度提高解决问题的能力,例如:

  • ​ 有效防止内存泄漏(Memory leak)。

  • ​ 优化线程锁的使用(Thread Lock)

  • ​ 科学进行垃圾回收(Garbage collection)

  • ​ 提高系统吞吐量(throughput)

  • ​ 降低延迟(Delay) 提高其性能(perfoxmance)

oughput)

  • ​ 降低延迟(Delay) 提高其性能(perfoxmance)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值