JVM 小白学习之三 :java的虚拟机产品

本文介绍了Java虚拟机的发展历程,包括Sun Classic VM、Exact VM、HotSpot VM、KVM、JRockit、J9、Azul VM、Liquid VM、Dalvik VM和Microsofjt JVM。HotSpot VM作为最广泛使用的JVM,源自Longview Technologies,而Dalvik VM是Android平台的核心部分。各个JVM各有特点,如JRockit以其高性能和MissionControl服务套件著称,而Azul VM则针对大规模硬件资源进行优化。
摘要由CSDN通过智能技术生成

文章目录

java的虚拟机发展

  1. Sun Classic VM
    世界上第一款商用的虚拟机,java1.0发版的时候使用的虚拟机, 但其现在已经淘汰,技术非常落后,截止码字时间。只能使用纯解释器的方式来执行java代码,如果要使用git编译器,需要使用外挂。如果使用git编译器,其会完全结果虚拟机系统,解释器便停止工作了。
  2. Exact VM
    1. Exact Memory Management 准确试内存管理,jdk1.2的时候
    2. 编辑器和解释器混合工作以及两级即时编译器,只有高性能虚拟机的特性
    3. 只在Solaris平台发布
    4. 英雄气短,存在的时间比较短
  3. HotSpot VM
    1. 它是Sun JDK和OpenJDK中所带的虚拟机,也是目前使用范围最广的Java虚拟机。
      但不一定所有人都知道的是,这个目前看起来“血统纯正”的虚拟机在最初并非由Sun公司开发,而是由一家名为“Longview Technologies”的小公司设计的;甚至这个虚拟机最初并非是为Java语言而开发的,它来源于Strongtalk VM,而这款虚拟机中相当多的技术又是来源于一款支持Self语言实现“达到C语言50%以上的执行效率”的目标而设计的虚拟机,Sun公司注意到了这款虚拟机在JIT编译上有许多优秀的理念和实际效果,在1997年收购了Longview Technologies公司,从而获得了HotSpot VM。

    2. 继承了sun公司最初的两款虚拟机的优点,热点代码检测、

    3. 随着java一起风靡全球。

  4. KVM (Kilobyte)
    1. 简单,轻量,高度可移植
    2. 嵌入式虚拟机,可以在手机平台运行
  5. JRockit
    1. BEA 2008被oracle收购。
    2. 世界上最快的java虚拟机(宣传语)
    3. 专注服务端应用
    4. 优势
      1. 垃圾收集器
      2. MissionControl服务套件
        BEA JRockit Mission Control,用来诊断并指出根本原因,该工具的开销非常小,因此可以是用它来寻找生成环境中的系统内存泄漏。
        BEA JRockit Mission Control(以下简称为JRMC)于2005年12月面世,并从JRockit R26.0.0版本开始捆绑了这个工具套件。它是一组以极低的开销来监控、管理和分析生产环境中的应用程序工具,它包括了三个独立的应用程序:内存泄漏监测器(Memory Leak Detector)、JVM运行时分析器(Runtime Analyzer) 和 管理控制台 (Management Console)
  6. J9
    1. IBM由生产
    2. 最初的名字是: IBM Technology for Java virtual Machine IT4j
    3. 类似于Hotspot,其开发目的是作为IBM各种Java产品的执行平台。
  7. Azul VM
    1. 高性能的Java虚拟机,在HotSpot的基础上进行改进
    2. 运行于Azul Systems公司的专有硬件Vega系统上的Java虚拟机,每个Azul VM实例都可以管理至少数十个CPU和数百GB内存的硬件资源,并提供在巨大内存范围内实现可控的GC时间的垃圾收集器、为专有硬件优化的线程调度等优秀特性。
  8. Liquid VM
    1. 高性能的Java虚拟机
    2. Liquid VM即是现在的JRockit VE(Virtual Edition),它是BEA公司开发的,可以直接运行在自家Hypervisor系统上的JRockit VM的虚拟化版本,Liquid VM不需要操作系统的支持,或者说它自己本身实现了一个专用操作系统的必要功能,如文件系统、网络支持等。由虚拟机越过通用操作系统直接控制硬件可以获得很多好处,如在线程调度时,不需要再进行内核态/用户态的切换等,这样可以最大限度地发挥硬件的能力,提升Java程序的执行性能。
  9. Dalvik VM
    1. 其是安卓平台核心的组成部分之一,Google公司自己设计用于Android平台的Java虚拟机
    2. 首要区别于java虚拟机,Dalvik 基于寄存器,而 JVM 基于栈。基于寄存器的虚拟机对于更大的程序来说,在它们编译的时候,花费的时间更短。
  10. Mircrosoft JVM
    1. 只能运行在window平台下,是window平台下运行速度最快的虚拟机。
    2. 存在时间比较短。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值