没有合适的资源?快使用搜索试试~ 我知道了~
JVM执行引擎1
资源详情
资源评论
资源推荐
/**
* JVM执行引擎
*
* 执行引擎是JVM中最核心的内容之一,描述了一个高层的抽象的方法调用及字节码执行
的概念模型
*
* 这个概念模型是平台独立,与具体的硬件无关,甚至可以执行一些硬件不支持的指令集,
主要是通过软件的形式实现
*
* 虚拟机规范中只是规定执行引擎的统一外观,但是并没有规定具体的实现方式 常见的执
行引擎主要有以下三种实现方式: 1、解释型 2、即时编译型
* 3、解释与即时编译相结合
*
* 运行时栈帧结构 栈帧是用于虚拟机支持方法调用和方法执行的数据结构,它是虚拟机线
程栈栈中的一个元素
*
* 栈帧(Stack Frame)包含以下信息: 1、方法的局部变量表 2、操作数栈 3、动态连
接 4、方法返回地址
*
*
* 局部变量表 局部变量表,是用于存放方法参数及方法内定义的局部变量,他的容量在编
译时就已经确定。
* 方法表中Code属性的max-locals定义了最大容量,虚拟机定义的容量的基本单位是
Slot,但是并没有规定Slot占用多大内存
*
* 虚拟机规范规定
* boolean、byte、char、short、int、float、reference、returnAddress应
该存放一个Slot中
* long、double放在两个Slot中,这个不需要原子性,因为这是线程私有的,不会导致
数据安全的问题
*
* Slot是可以重用的,这样不仅可以节省栈的空间,也可以影响垃圾回收的行为
* 注意:方法内的定义变量并没有默认值,不过这在IDE中编译器一般会提示我们。
*
*
* 操作数栈 操作数栈也称操作栈,是一个FIFO的栈,用于存储各种java数据类型的数据
* 方法开始运行时这个栈是空的,栈中数据的放入及取出都是由方法中指令来完成的
*
* 动态连接
*
* 方法返回地址
*
* 附加信息 这部分规范中并没有定义,虚拟机实现者可以自己决定,如添加调试信息等
*
申增浩
- 粉丝: 20
- 资源: 297
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0