美文网首页
粗浅理解JVM

粗浅理解JVM

作者: 有寻_ | 来源:发表于2019-01-07 18:16 被阅读2次

Java语言写的源程序通过Java编译器,编译成与平台无关字节码程序(.class文件,也就是0,1二进制程序),然后在OS之上的Java解释器中解释执行,而JVM是java的核心和基础,在java编译器和os平台之间的虚拟处理器。

image.png

注:JVM(java虚拟机)包括解释器,不同的JDK虚拟机是相同的,解释器不同。

  • JVM执行程序的过程:
    加载.class文件->管理并分配内存->执行垃圾收集

注:JRE(java运行时环境)由JVM构造的java程序的运行环境

image.png
  • JIT:
    Java程序最初是仅仅通过解释器解释执行的,即对字节码逐条解释执行,这种方式的执行速度相对会比较慢,尤其当某个方法或代码块运行的特别频繁时,这种方式的执行效率就显得很低。于是后来在虚拟机中引入了JIT编译器(即时编译器),当虚拟机发现某个方法或代码块运行特别频繁时,就会把这些代码认定为Hot Spot Code(热点代码),为了提高热点代码的执行效率,在运行时,虚拟机将会把这些代码编译成与本地平台相关的机器码,并进行各层次的优化,完成这项任务的正是JIT编译器。
    二者各有优势:当程序需要迅速启动和执行时,解释器可以首先发挥作用,省去编译的时间,立即执行;当程序运行后,随着时间的推移,编译器逐渐会返回作用,把越来越多的代码编译成本地代码后,可以获取更高的执行效率。解释执行可以节约内存,而编译执行可以提升效率。

相关文章

  • 粗浅理解JVM

    Java语言写的源程序通过Java编译器,编译成与平台无关的字节码程序(.class文件,也就是0,1二进制程序)...

  • 粗浅理解181224

    当前状态 NB网络是新兴的窄带通信设备所用的网络,目前正在大力发展,但是无论是设备数目还是基站数目短时间内都无法比...

  • GreenDao理解(粗浅,帮助理解)

    优点: 性能高,号称Android最快的关系型数据库 内存占用小 库文件比较小,小于100K,编译时间低,而且可以...

  • 分布式Java读书笔记二:JVM

    第3章 深入理解JVM 深入理解JVM JVM标准结构 JVM负责装载class文件并执行,因此,首先要掌握的是J...

  • JVM

    栈容量由-Xss指定深入理解JVM—JVM内存模型 JVM内存模型和JVM参数的关系

  • jvm垃圾回收机制探析

    最近比较粗浅的接触了一下JVM,发现有很多东西还是非常有意思的,并不像之前的印象,觉得JVM相关的东西生涩难懂。本...

  • 对JVM的理解

    对jvm的理解,

  • 对OKRs粗浅的理解

    O和KR的不同 O指的是Objectives(目标),O是要是有挑战性的,如果是板上钉钉的事情就是不够的;KRs指...

  • 关于政德的粗浅理解

    今天下午在济宁政德学院听取了刘峰教授的讲座—《不忘初心使命,加强政德修养》,初次接受这类培训,难以理解透...

  • 关于promise的粗浅理解

    定义 在JavaScript的世界中,所有代码都是单线程执行的。 由于这个“缺陷”,导致JavaScript的所有...

网友评论

      本文标题:粗浅理解JVM

      本文链接:https://www.haomeiwen.com/subject/skhprqtx.html