jvm

JVM 系列 执行引擎

开启JVM探索新篇章

Posted by lichao modified on November 14, 2019

在不同的虚拟机实现中,执行引擎在执行Java代码时可能会有解释执行(通过解析器执行)和编译执行(通过即时编译器产生本地代码执行)两种选择,也可能两者兼备

运行时栈帧结构

栈帧存放了方法的局部变量表、操作数栈、动态连接和方法返回地址等信息。每个方法从调用开始到执行完成的过程,都对应着一个栈帧在虚拟机栈中从入栈到出栈的过程。

局部变量表

是一组变量值存储空间,用于存放方法参数和方法内部定义的局部变量

long 和double的非原子性协定:把一次long和double数据类型读写分割为两次32为读写;

操作数栈

它是一个后进先出的栈,它的每一个元素可以是任意的Java数据类型