美文网首页Java 杂谈
JVM学习笔记(1)---走进Java

JVM学习笔记(1)---走进Java

作者: 18587a1108f1 | 来源:发表于2018-08-22 09:55 被阅读16次

1.1 Java技术体系

Java不仅仅是一门编程语言,还是一个由一系列计算机软件和规范形成的 技术体系 。这个技术体系提供了完整的用于软件开发和跨平台部署的支持环境。

Sun官方所定义的Java技术体系,按照领域来划分,包括以下几个组成部分:

  • Java程序设计语言
  • 各种硬件平台上的Java虚拟机
  • Class文件格式
  • Java API类库
  • 来自商业机构和开源社区的第三方Java类库

我们把 Java程序设计语言Java虚拟机Java API类库 统称为 JDK (Java Development Environment),JDK是支持Java程序 开发 的最小环境。
我们把 Java API类库中的Java SE API子集Java虚拟机称为 JRE (Java Runtime Environment),JRE是Java程序 运行 的标准环境。

Java技术体系

1.2 Java虚拟机发展史

Sun Classic VM

Sun Classic VM 由Sun公司在1996年发布JDK1.0时发布,是”世界上第一款商用Java虚拟机“。它使用 纯解释器 的方式执行Java代码(解释器和编译器的区别) 。
如果它要使用JIT 编译器,就必须进行外挂,编译器就会接管虚拟机的执行系统,解释器不再工作。由于二者不能配合工作,编译器就需要对所有的方法和代码进行编译,无论其是否有编译的价值。
基于程序响应的压力,编译器又不敢应用编译耗时稍高的优化技术,因此当时“Java很慢”。

Sun HotSpot VM

HotSpot VM 由“Longview Technologies”公司设计,于1997年被Sun公司收购。
HotSpot名称所指的是它的热点代码探测技术。它可以通过执行计数器找到最有编译价值的代码,通知JIT编译器以方法为单位进行编译。
目前,HotSpot是Sun JDK和OpenJDK中所带的虚拟机,是目前使用范围最广的Java虚拟机。

BEA JRockit VM

JRockit为一款专门为服务器硬件和服务器端应用场景高度优化的虚拟机,专注于服务器速度,不关注程序启动速度。JRockit的垃圾收集器和MissionControl服务套件非常优秀。
2008年2009年,Oracle公司收购BEA公司和Sun公司,将Jrockit Vm的优秀特性融合到HotSpot VM上。

其他

还有很多虚拟机,在不同平台上由不同公司推出,这里只选择了目前主流使用的HotSpot的发展历史进行描述,不一一列举。

相关文章

网友评论

    本文标题:JVM学习笔记(1)---走进Java

    本文链接:https://www.haomeiwen.com/subject/spkeiftx.html