012-JVM-jvm规范出处、规范和实现

254 阅读2分钟

对于 java 程序员来说 jvm 十分重要。那么你有么有想过一个问题?jvm 的知识都是从哪里来的?现在市面上的一些有关书籍及知识是从哪里来的?

在 oracle 官网有对 jvm 的规范的文章,找到文档你可读一下,然后再去看市面山的 jvm 知识你会发现全部出自此,所以这里才是 jvm 的根的出处,好的,接下来我们找一下官方文档。

1.1 页面搜索 【java download】


可以看到现在 java 已经更新到 15 了。

1.2 点击【Documentation】

1.3 点击【Specifications】->【Language and VM】

1.4 点击【Specifications】->【Language and VM】

可看到各个版本的 jvm 规范。我们按版本下载或者直接查看即可。关注点放在 jvm 上哦!别放在 java 规范上哦(有兴趣可以看 java 规范)本阶段关注与 jvm。

找到老巢了,如果你不进攻我也没办法了。干就完了。

以上看到的是 jvm 的规范,都是一些规范性的规定。那么现在我们使用的 jvm 是什么,有没有其他的 jvm,按此规范设计的 jvm 有多少呢?

2.1 我们使用的是 Java HotSpot™ 64-Bit Server VM (build 25.201-b09, mixed mode)

  • Java HotSpot™ 我们用的虚拟机叫这个名字
  • Server 表示是服务器版本,也有 Client 版本
  • mixed mode 使用的是解释执行 + jit 及时编译的方式

2.2 还有么有其他的 vm 呢?

jvm 名字说明
HotSpotoracle 官方我用的
JrockitBEA, 曾经号称世界最快,后被 oracle 收购,与 hotspot 做整合
J9IBM 虚拟机
TaobaoVMHotSpot 深度定制版,高手写的
azul zing世界标杆,商业版本
其他 N 多种其他 N 多种

从上面可以看出

  1. jvm 有一套规范 oracle 定的
  2. jvm 有超多实现,即有超级多的产品可以选择
  3. 我们使用的 java8 的 jvm,知道我们在这里面的位置

自律的艰辛总甜过懊悔的苦果!
专注于 java 后端技术及解决方案,善于总结,分享!
自律的艰辛总甜过懊悔的苦果!
专注于 java 后端技术及解决方案,善于总结,分享!
自律的艰辛总甜过懊悔的苦果!
专注于 java 后端技术及解决方案,善于总结,分享!