声明:本博客仅仅是一个初学者的学习记录、心得总结,其中肯定有许多错误,不具有参考价值,欢迎大佬指正,谢谢!想和我交流、一起学习、一起进步的朋友可以加我微信Liu__66666666

这是简单学习一遍之后的记录,后期还会修改。

一、什么是JVM

Java虚拟机(英语:Java Virtual Machine,缩写为JVM),一种能够运行Java bytecode虚拟机,以堆栈结构机器来进行实做。最早由Sun所研发并实现第一个实现版本,是Java平台的一部分,能够运行以Java语言写作的软件程序

Java虚拟机有自己完善的硬体架构,如处理器堆栈寄存器等,还具有相应的指令系统。JVM屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。通过对中央处理器(CPU)所执行的软件实现,实现能执行编译过的Java程序码(Applet与应用程序)。

作为一种编程语言的虚拟机,实际上不只是专用于Java语言,只要生成的编译文件符合JVM对加载编译文件格式要求,任何语言都可以由JVM编译运行。此外,除了Oracle,也有其他开源或闭源的实现。

二、常见JVM简介

  1. Sun Classic VM(Desperated)

    • 第一款商用JVM
    • 使用纯解释器来执行代码。
  2. Exact VM

    • Exact Memory Management 准确式内存管理
    • 编译器喝解释器混合工作以及两级及时编译器
    • 只在Solaris平台发布
  3. HostSpot VM(现在java用的就是它)

  4. KVM

    • 简单、轻量、高度可移植
    • 在手机平台运行
  5. JRockit

    • BEA公司的产品
    • 世界上最快的JVM
    • 专注服务端应用
  6. J9

  7. Dalvik (这个是安卓的vm)

  8. MS JVM

  9. taobao VM

最新文章

  1. MYSQL中UNIX时间戳与日期的转换
  2. PHP面向对象_重载新的方法(parent::)
  3. angular.element的常用方法
  4. [杂谈] There is a Doctor in My Computer.
  5. MySQL里面的子查询实例
  6. ZOJ 1029 Moving Tables
  7. 动态加载dll,并创建类对象放入到list中。
  8. [freemarker篇]04.简单介绍-基本数据类型
  9. python解惑之 __file__ 与argv[0]
  10. CodeForces 10C. Digital Root
  11. 【19道XSS题目】不服来战!
  12. Ajax&jQuery教案总结
  13. R语言数据框中,用0替代NA缺失值
  14. LeetCode之“链表”:Sort List
  15. Windows系统IntelliJ IDEA安装配置
  16. js-function复制变量值和传递参数
  17. Altium Designer 正反面布元器件
  18. P4013 数字梯形问题 网络流二十四题
  19. js,indexOf()、lastIndexOf()
  20. 取值:form表单取值、input框绑定取值

热门文章

  1. vulnhub-XXE靶机渗透
  2. Spring MVC内容协商实现原理及自定义配置【享学Spring MVC】
  3. Java生产者消费者的三种实现
  4. js获取(包括中文)字符串长度与截取字符串
  5. Nginx介绍与反向代理
  6. QFramework 使用指南 2020(三):脚本生成(1)基本使用
  7. Setup Factory 9 简单打包
  8. (数据科学学习手札67)使用Git管理Github仓库
  9. 深度好文,springboot启动原理详细分析
  10. Android Studio安卓学习笔记(三)Android用户界面的设计布局与组件(一)用户界面布局设计(1)