vlambda博客
学习文章列表

3分钟了解Java与Java虚拟机


理解JVM虚拟机意义

  1. 可以让系统活动更高的性能与执行效率

  2. 如果做一个DEMO给10个用户使用,不会出现效率问题,但1000人同时使用时,可能出现问题,及时更换最好的硬件也不能提高程序运行效率,这时候就是虚拟机影响了程序响应速度

  3. 可以写出更高效的代码


JRE组成

    JRE又称为Java运行时环境,主要包含如下两个部分:

  1. Java SE API 子集

  2. Java虚拟机


常见的虚拟机

  1. HotSpot

    2006年java开源,并将HotSpot虚拟机也随之开源,是最优秀的虚拟机之一

  2. EBA JRockit 或者 IBM J9

    专为服务器硬件或者服务器端应用场景高度优化的虚拟机

  3. Azul UM / BEA Liquid VM

    特定硬件平台专有虚拟机,Azul UM在HotSpot基础上大量改进并运行在自家公司的Vega系统上的虚拟机。

  4. Liquid VM

    运行在自家Hypervisor系统上的JRockit VM的虚拟化版本,Liquid VM不需要操作系统支持,他自身实现了一个专用操作系统的必要功能,如文件系统,网络支持等。


OpenJDK 与 OracleJDK区别

  1. OpenJDK 是sun公司2006年末,将java开源的版本;

  2. OracleJDK与OpenJDK遵从不同协议,只影响了注释声明部分,其中大部分代码是一样的;但由于某些代码版权的问题,存在一些差异;如:字体栅格化渲染的实现方式;

  3. 现在OracleJKD 11已经几乎与OpenJDK保持代码完全一致;