- 为什么一定要JVM?
因为JAVA是一门高级程序语言,符合人的使用习惯,但不符合电脑的理解(二进制)。因此需要在硬件上时对java程序进行转化。 - 怎么转化?
转化就是将java转换为指令序列,叫java字节码(.class),.class文件加载到JVM。由JVM进行解释和执行。JVM不仅仅能执行JAVA程序转换的字节码,kotlin啥的转化为字节码都能用。 -
JVM
image.png
JVM是运行在操作系统之上的,它与硬件没有直接的交互。
- 重见的JVM
- Sun Classis VM: 世界上第一款商用的虚拟机,已经完全淘汰。
- HotSpot VM: Sun JDK和OpenJDK中所带的虚拟机,也是目前使用范围最广的Java虚拟机。最初由一家名为“Longview Technologies”的小公司设计,后被Sun公司收购。
- Jrockit: 由BEA公司开发的专注于服务器端应用的虚拟机。号称世界上最快的虚拟机。优势在于其垃圾收集器和MissionControl服务套件。BEA Jrockit Mission Control在2005年12月推出,它是一组以极低的开销来监控、管理和分析生产环境中的应用程序的工具。它包括三个独立的应用程序:内存泄露检测器(Memory Leak Detector),JVM运行时分析器(Runtime Analyzer)和管理控制台(Management Console)。
- J9 :J9由IBM公司开发,曾广泛应用于IBM公司系统内部及IBM小型机上。现已经捐献给Eclipse基金会。
网友评论