文章目录
- 一、什么是JVM
- 二、优点
- 三、比较
- 四、学习路线
一、什么是JVM
定义:java程序的运行环境
 首先,我们要知道,JVM是一套规范,运行java程序的一套规范。
 那么,我们学习过java的人都知道,接口规范的实现类是很多的。
 JVM也是一样,有很多公司实现了这套规范。
例如:
 Hotspot:目前使用的最多的 Java 虚拟机。
 Jrocket:原来属于BEA 公司,曾号称世界上最快的 JVM,后被 Oracle 公司收购,合并于 Hotspot
 J9: IBM 有自己的 java 虚拟机实现,它的名字叫做 J9. 主要是用在 IBM 产品(IBM WebSphere 和 IBM 的 AIX 平台上)
 TaobaoVM: 只有一定体量、一定规模的厂商才会开发自己的虚拟机,比如淘宝有自己的 VM,它实际上是 Hotspot 的定制版,专门为淘宝准备的,阿里、天猫都是用的这款虚拟机。
 LiquidVM: 它是一个针对硬件的虚拟机,它下面是没有操作系统的(不是 Linux 也不是 windows),下面直接就是硬件,运行效率比较高。
 zing: 它属于 zual 这家公司,非常牛,是一个商业产品,很贵!它的垃圾回收速度非常快(1 毫秒之内),是业界标杆。它的一个垃圾回收的算法后来被 Hotspot 吸收才有了现在的 ZGC。
二、优点
一次编译,处处运行
 自动内存管理,垃圾回收机制
三、比较
JDK、JRE、JVM的区别
 
四、学习路线

 1、JVM内存结构
 2、GC:垃圾回收器
 3、Java Class:Java字节码
 4、ClassLoader:类加载器
 5、JIT Compiler:即时编译器



















