美文网首页
深入JVM内核原理-11.JVM字节码执行

深入JVM内核原理-11.JVM字节码执行

作者: 笨鸡 | 来源:发表于2019-08-13 23:23 被阅读0次

1.概要

  • javap
  • 简单的字节码执行过程
  • 常用的字节码
  • 使用ASM生成Java字节码
  • JIT及其相关参数

2.javap

  • class文件反汇编工具
public class Calc {
    public int calc() {
        int a = 500;
        int b = 200;
        int c = 50;
        return (a + b) / c;
    }
}
  • javap -verbose Calc
javap1.png
javap2.png
javap3.png

3.简单的字节码执行过程

简单的字节码执行过程1.png
简单的字节码执行过程2.png

4.常用的字节码

常用的字节码1.png
常用的字节码2.png
常用的字节码3.png
常用的字节码4.png
常用的字节码5.png
常用的字节码6.png
常用的字节码7.png
常用的字节码8.png
常用的字节码9.png

5.使用ASM生成Java字节码

  • ASM
    • java字节码操作框架
    • 可以用于修改现有类或者动态产生新类
    • 用户
      • AspectJ
      • Clojure
      • Spring
      • CGlib
        • hibernate
  • 模拟实现AOP字节码织入
    • 在函数开始部分或者结束部分嵌入字节码
    • 可用于进行鉴权、日志等
    ASM字节码生成1.png

6.JIT及其相关参数

  • 字节码执行性能较差,所以可以对于热点代码编译成机器码在执行,在运行时的编译,叫做JIT Just-In-Time
  • JIT的基本思路是,将热点代码,就是执行比较频繁的代码,编译成机器码。
JIT1.png
JIT2.png
JIT3.png

相关文章

  • 深入JVM内核原理-11.JVM字节码执行

    1.概要 javap 简单的字节码执行过程 常用的字节码 使用ASM生成Java字节码 JIT及其相关参数 2.j...

  • JVM知识精粹

    1.jvm执行字节码文件 流程:jvm通过类加载器加载字节码文件----字节码校验器---翻译字节码(解释执行,反...

  • DVM执行 java 程序的工具

    jvm 执行字节码原理:java 程序运行时,是由一个 java 虚拟机来解释 java 字节码的,它将这些字节码...

  • Java并发机制的底层原理

    Java程序执行:Java代码→Java字节码→字节码被类加载器加载到JVM里,JVM执行字节码→转化为汇编指令在...

  • Java并发底层实现原理

    Java代码在编译后变成字节码,字节码被类加载器加载到JVM,JVM解析执行字节码,转化为机器码在CPU上执行,J...

  • Android动态加载技术基础之JVM,DVM,ART的区别

    JVM和DVM的区别 DVM和 JVM 执行的字节码文件的区别JVM执行的字节码文件是.class文件,而DVM上...

  • Java并发机制的底层实现原理

        Java代码在编译后会变成Java字节码,字节码被类加载器加载到JVM里,JVM执行字节码,最终需要转化为...

  • 深入JVM字节码执行引擎

    我们都知道,在当前的Java中(1.0)之后,编译器讲源代码转成字节码,那么字节码如何被执行的呢?这就涉及到了JV...

  • 并发 - Java并发机制的底层实现原理

    一、概述 Java代码在编译后会变成Java字节码,字节码被类加载器加载到JVM里,JVM执行字节码,最终需要转化...

  • 深入JVM内核 目录

    深入JVM内核 目录 深入JVM内核1 初识JVM深入JVM内核2 JVM运行机制深入JVM内核3 常用JVM配置...

网友评论

      本文标题:深入JVM内核原理-11.JVM字节码执行

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