一、JVM和Java体系结构( 五 )


如果使用JIT编译器,就需要进行外挂 。但是一旦使用了JIT编译器,JIT就会接管虚拟机的执行系统 。解释器就不再工作 。解释器和编译器不能配合工作 。
现在内置了此虚拟机
普通代码使用解释器;热点代码使用JIT编译器,然后缓存起来 。
10.2、Exact VM
为了解决上一个虚拟机问题,jdk1.2时,sun提供了此虚拟机 。
Exact:准确式内存管理
具备现代高性能虚拟机的雏形
只在平台短暂使用,其他平台上还是 vm
10.3、sun公司的 VM
历史
目前占有绝对的市场地位,称霸武林 。
从服务器、桌面到移动端、嵌入式都有应用 。
名称中的指的就是它的热点代码探测技术 。
10.4、BEA的
专注于服务器端应用
大量的行业基准测试显示, JVM是世界上最快的JVM 。
优势:全面的Java运行时解决方案组合
2008年,BEA被收购 。
表达了整合两大优秀虚拟机的工作,大致在JDK8中完成 。整合的方式是在的基础上,移植的优秀特性 。
高斯林:目前就职于谷歌,研究人工智能和水下机器人
10.5、IBM的J9
全称:IBMfor Java,简称IT4J,内部代号:J9
市场定位与:接近,服务器端、桌面应用、嵌入式等多用途VM
广泛用于IBM的各种Java产品 。
目前,有影响力的三大商用虚拟机之一,也号称是世界上最快的Java虚拟机 。
2017年左右,IBM发布了开源9VM,命名为,交给基金
会管理,也称为
10.6、KVM和CDC/CLDC
在Java ME产品线上的两款虚拟机为:CDC/CLDCVM
KVM()是CLDC-HI早期产品
目前移动领域地位尴尬,智能手机被和ioS二分天下 。
KVM简单、轻量、高度可移植,而向更低端的设备上还维持自己的一片市场
所有的虚拟机的原则:一次编译,到处运行 。
10.7、Azul VM
前面三大“高性能Java虚拟机”使用在通用硬件平台上
这里和BEAVM是与特定硬件平台绑定、软硬件配合的专有虚拟机
Azul VM是Azul 公司在基础上进行大量改进,运行于Azul 公司的专有硬件vega系统上的Java虚拟机 。
每个实例都可以管理至少数十个CPU和数百GB内存的硬件资源,并提供在巨大内存范围内实现可控的GC时间的垃圾收集器、专有硬件优化的线程调度等优秀特性 。
2010年,Azu1 公司开始从硬件转向软件,发布了自己的zing JVM,可以在通用x86平台上提供接近于Vega系统的特性 。
10.8、 VM
高性能Java虚拟机中的战斗机 。
BEA公司开发的,直接运行在自家系统上
VM即是现在的 VE( ),不需要操作系统的支持,或者说它自己本身实现了一个专用操作系统的必要功能,如线程调度、文件系统、网络支持等 。
随着虚拟机终止开发, VM项目也停止了 。
10.9、
也曾经推出过与JDK1.5和JDK1.6兼容的Java运行平台
它是IBM和Intel联合开发的开源JVM,受到同样开源的的压制,Sun坚决不让?获得JCP认证,最终于2011年退役,IBM转而参与
虽然目前并没有 被大规模商用的案例,但是它的Java
类库代码吸纳进了 SDK 。
10.10、 JVM
微软为了在IE3浏览器中支持Java ,开发了 JVM 。
只能在平台下运行 。但确是当时下性能最好的Java VM 。
1997年,Sun以侵犯商标、不正当竞争罪名指控微软成功,赔了sun很多
钱 。微软在 SP3中抹掉了其VM 。现在上安装的jdk
都是 。
10.11、
由材队发布 。阿里,国内使用Java最强大的公司,覆盖云计算、金融、物流、电商等众多领域,需要解决高并发、高可用、分布式的复合问题 。有大量的开源产品 。
基于开发了自己的定制版木,简称AJDK 。是整个阿里Java体系的基石 。