JVM详解:基本定义
目录
参考:
- 链接1:
- 链接2:五分钟认清三款主流JVM (opens new window)
# JVM的定义
JVM(Java Virtual Machine:Java虚拟机)是一种用于计算设备的规范,是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。
引入Java虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。

# 主流的JVM
Sun丨HotSpot

Longview Technologies 公司在 1999 年首次发布了虚拟机 HotSpot,它也是最初开发出这款虚拟机产品的公司,在 1997 年时, Sun 公司将 Longview Technologies 公司收购,从此之后 HotSpot 也就归属于 Sun 公司,Sun JDK 1.3 及其之后的 JDK 版本内默认的虚拟机均为 HotSpot,在 JDK 1.3 之前是 Classic VM(1.2 时与 Hotsopt 并存过渡,之后被替代)
Oracle 在 2009 年将 Sun 公司收购,目前为止 HotSpot 属于 Oracle,也是被使用最多、最广泛的虚拟机。
BEA丨JRockit

JRockit 是除 HotSpot 之外另一款响当当的 VM,起初归属于 BEA 公司。BEA 在 2002 年收购的了此虚拟机的开发商,这款虚拟机在相当一段时间里获称世界上速度最快的 Java 虚拟机,它是专注于服务器端应用的虚拟机,特别需要提出的是,JRockit VM 的垃圾收集算法相比其它所有虚拟机表现更佳。
Oracle 在 2008 年收购了 BEA 公司,JRockit 与 HotSpot 同属于 Oracle,目前为止 Oracle 一直在推进 HotSpot 与 JRockit 两款各有优势的虚拟机进行融合互补。
IBM丨J9
