上一篇:011-JVM-跨平台的语言和跨语言的平台https://blog.csdn.net/fsjwin/article/details/111405186
对于java程序员来说jvm十分重要。那么你有么有想过一个问题?jvm的知识都是从哪里来的?现在市面上的一些有关书籍及知识是从哪里来的?
1. 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。
找到老巢了,如果你不进攻我也没办法了。干就完了。
2. 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名字 | 说明 |
|---|---|
| HotSpot | oracle官方我用的 |
| Jrockit | BEA,曾经号称世界最快,后被oracle收购,与hotspot做整合 |
| J9 | IBM 虚拟机 |
| TaobaoVM | HotSpot深度定制版,高手写的 |
| azul zing | 世界标杆,商业版本 |
| 其他N多种 | 其他N多种 |
3 总结
从上面可以看出
- jvm有一套规范oracle定的
- jvm有超多实现,即有超级多的产品可以选择
- 我们使用的java8的jvm,知道我们在这里面的位置
下一篇:013-JVM-JVM、JRE、JDK关系https://blog.csdn.net/fsjwin/article/details/111407190