Java核心篇之JVM战场

本文介绍了JVM的基础知识,包括JVM作为一个字节码指令执行引擎的角色,它与CPU的关系,以及如何执行字节码指令。接着详细阐述了JVM的核心概念,如字节码规范、Method与Attribute的关系,以及JVM如何描述Java类文件。通过这些内容,读者可以更深入地理解JVM的工作原理。
摘要由CSDN通过智能技术生成

JVM前置知识

1.JVM是一个字节码指令执行引擎
1)类似计算机的cpu,cpu就是机器指令的执行引擎
2)注意:JVM是编译后的class文件指令的执行引擎,而不是java文件源程序的执行引擎
3)所以,JVM可以服务于Java以外的编程语言,只要编程语言编译出来的指令文件符合字节码指令规范
2.CPU和JVM的关系
1)CPU是机器指令的执行引擎
2)JVM是C语言写的,JVM也可以理解为C程序,其运行之前需要编译成机器指令
3)启动JVM,就可理解为CPU执行机器指令(JVM编译后的机器指令)
3.机器指令和字节码指令的关系
1)机器指令是CPU解释和执行
2)字节码指令是JVM解释和执行
3)JVM解释的方式:把每一个字节码指令映射成一组机器指令
3.JVM如何执行字节码指令
1)在CPU按顺序执行机器指令时,每次执行前都会记录当前指令到CS:IP寄存器
2)但执行到某条机器指令时,指令作用是修改CS:IP寄存器的值,则CPU跳到另一段机器指令去执行(JVM运行字节码指令的关键)
3)JVM编译之后就是机器指令,启动JVM,就是CPU执行JVM编译过后的机器指令
4)启动的JVM能执行相应的脚本命令,例如字节码运行脚本:java Test.class(JVM执行字节码指令的入口)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值