栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

第二篇:JVM之JVM架构和各大虚拟机概述

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

第二篇:JVM之JVM架构和各大虚拟机概述

从第三篇文章开始,写文章顺序都是按着下面这两张图来写的,过程都是按着从上到下的顺序写。

1、JVM的架构模型

总之,咱们的java的指令都是根据栈来设计的,目的就是为了JVM的跨平台性。因为咱们都知道的是,基于寄存器的话,耦合就吧比较高,导致移植性不好。缺点和优点:跨平台性好,指令集比较小(因为是0地址指令集),指令多,执行性能比寄存器较差。 (1)Idea怎么实现反编译

第一步可以先执行你想要反编译的文件,看我的例子
第二步就来看我们的out目录【进去找到你刚才执行的一个文件】

第三步点这里
最后执行一条指令javap -v 你的文件
(2)一个问题


这里的嵌入式系统的话:另外一层含义就是资源受限的,原因主要是

就是它的优点还是在的,优点比较多,移植性好等。它在资源不受限的情况也是可以用的,没有必要硬是给他更换了。 2、JVM的生命周期

假设你在web服务器部署了三个web服务器,就可以用三个虚拟机执行。

具体的方法可以去看一下我们的源代码

记得看一下这运行时数据区域和我们的Runtime类

(1)在idea显示你执行的进程

3、JVM的分类

不管怎么样,前面五个你要记住的

(1)Sun classic VM

记得它是世界最早的一个商用虚拟机它只提供了解释器【也就是没有提供JIT编译器,现在主流的都实现了解释器和编译器的,解释器是边解释边执行的,会使启动速度比较快;而JIT编译器则是先翻译再执行,执行效率比较高】
想我们不是把全部的代码都用JIT呢?因为他等的时间比较多。 (2)Exact VM

它的优点最重要的是:虚拟机可以知道内存中某个位置的数据具体是什么类型。这样的优点你可以这样理解,因为我们虚拟机进行垃圾回收的时候,需要去查找我们的数据是应用类型还是基本类型,它这样可以减少开销。还有它进行热点探测:它只是有了个大概的模型,具体应用是在Hotspot里面来引用了。 (3)HotSpot VM

它是兼容了解释器和JIT编译器,因此它的应用非常广泛,但下面要讲的JRockit Vm则是实现了JIT编译的,它适合于服务器,它这样就效率比较高。 (4)JRockit VM

它是最快的啊,世界上,不要相信IBM的J9
他们两个公司都被Oracle收购后,因此有想把JRockit和Hotspot的优点整合到一起的想法,所有在JDK8吧,就整合到一部分优点在一起了,但是他们两个的架构开始就不一,导致整合很困难,所以整合在一起的内容是有限的。 (5)IBM J9

它现在也是属于IBM公司的,IBM是没有被收购的哦。它比较适合它自己的产品上,但是在其他系统上面使用的话,bug是比较多的。 (6)K VM和CDC/CLDC HotSpot

(7)Azul VM和Liquid VM


(8)Apache Harmony

(9)Microsoft JVM

(10)Taobao JVM

(11)Dalvik VM【是基于寄存器】

apk文件,可以去补习一下。

还有其他的,另外虚拟机都是有不同的好处的,不同的应用场景会有不同的性能。

(12)补充Graal VM【看Oracle公司野心】

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/709182.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号