JVM基础概念

JVM基础概念

什么是JVM

JVM:Java virtual machine,Java虚拟机,它是一种规范。是虚构出来的一台计算机。它可以将二进制字节码根据不同的操作系统转为当前操作系统识别的的字节码指令(汇编语言),从而实现跨平台。并有很好的内存管理功能(分为栈、堆、方法区等。)
jvm发展到现在,已经不仅仅是Java语言的一部分,它已经建立了自己的生态圈。成为一个标准规范。任何语言只要能将其编译为class文件格式,那么都可以在JVM中运行。
jvm规范:https://docs.oracle.com/javase/specs/jvms/se14/html/index.html

Java从编码到执行


常见的JVM实现

  • Hotspot
    oracle官方提供的,现在jdk默认提供的jvm实现。我们安装了jdk之后,通过命令:java -version 可以看出来。
  • Jrockit
    它是BEA公司出品,曾经号称世界上最快的JVM。后来被oracle收购,最终合并于hotspot。现在我们所使用的JVM是它们两个的结合。
  • J9
    IBM制作的JVM
  • Microsoft VM
  • Taobao VM(hotspot深度定制版)
  • LinquidVM (直接针对硬件的JVM)
  • azul zing (最新垃圾回收的顶级标杆,昂贵的费用)
  • 等等

   转载规则


《JVM基础概念》 lendea 采用 知识共享署名 4.0 国际许可协议 进行许可。
 上一篇
类加载器 类加载器
简介我们一直都知道java源码经过编译,变为.class后缀名的字节码,经过类加载器加载进虚拟机,然后进行使用。那么我们有考虑过什么是类加载器,类加载器从哪儿加载,什么时候去加载,加载到哪里。本文将逐一解答这些问题。 什么是类加载器类加载器
2020-11-13
下一篇 
Java进程导致CPU使用达到了100%,如何排查,定位,解决该问题? Java进程导致CPU使用达到了100%,如何排查,定位,解决该问题?
背景开发生产中,有时候我们会碰到告警,CPU过高,超过100%,这个时候我们应该怎么办? 解决方案java进程导致CPU过高定位耗费CPU的进程top -c命令,显示进程列表。然后输入P(大写),按照CPU排序。如果是Java进程引起的CP
2020-11-13
  目录