- 3
- 0
- 约 10页
- 2015-09-23 发布于江苏
- 举报
深入Java虚拟机——本地方法栈.doc
深入Java虚拟机——本地方法栈
本地方法栈
前 面提到的所有运行时数据区都是在Java虚拟机规范中明确定义的,除此之外,对于一个运行中的Java程序而言,它还可能会用到一些跟本地方法相关的数据 区。当某个线程调用一个本地方法时,它就进入了一个全新的并且不再受虚拟机限制的世界。本地方法可以通过本地方法接口来访问虚拟机的运行时数据区,但不止 于此,它还可以做任何它想做的事情。比如它甚至可以直接使用本地处理器中的寄存器,或者直接从本地内存的堆中分配任意数量的内存等等。总之,它和虚拟机拥 有同样的权限(或者说能力)。
本地方法本质上是依赖于实现的,虚拟机实现的设计者们可以自由地决定使用怎样的机制来让Java程序调用本地方法。
任 何本地方法接口都会使用某种本地方法栈。当线程调用Java方法时,虚拟机会创建一个新的栈帧并压入Java栈。然而当它调用的是本地方法时,虚拟机会保 持Java栈不变,不再在线程的Java栈中压入新的帧,虚拟机只是简单地动态链接并直接调用指定的本地方法。可以把这看作是虚拟机利用本地方法来动态扩 展自己。就如共Java虚拟机是的实现在按照其中运行的Java程序的吩咐,调用属于虚拟机内部的另一(动态链接的)方法。
如果某个虚拟机 实现的本地方法接口是使用C连接模型的话,那么它的本地方法栈就是C栈。我们知道,当C程序调用一个C函数时,其栈操作都是确定的。传递给该函数的参数
您可能关注的文档
- 治班策略【已修改】.ppt
- 治理公路三乱的调查与思考.doc
- 洋务运动课件 师夷长技以制夷.ppt
- 洛阳市高中教师教师资格认证培训(教育心理学).ppt
- 流通领域商品质量监管工作探索.doc
- 浅析唐宋时期散文的特点和对唐宋之前散文的发展和继承.doc
- 浅析对南通市农村养老保障问题的思考.doc
- 浅析凡尔赛园林与极简主义园林的关系.ppt
- 浅析网页色彩应用.doc
- 浅议现行教师的不良教风与管理策略.doc
- 2026年山东省滨州市惠民县中考化学一模试卷(含答案).pdf
- 2026年山东省济南市历城区中考化学二模试卷(含答案).pdf
- 2026年山东省烟台市福山区中考化学模拟试卷(含答案).pdf
- 2026年山东省临沂市郯城县中考化学一模(含答案).pdf
- 2026年四川省德阳市中江县中考化学二诊试卷(含答案).pdf
- 2026年四川省绵阳市梓潼县中考化学二模试卷(含答案).pdf
- 2026年新疆乌鲁木齐市沙依巴克区中考化学适应性试卷(含答案).pdf
- 2026年重庆市永川区中考化学质检试卷(含答案).pdf
- 2026年重庆市第一中学校中考化学全真模拟试卷(二)(含答案).pdf
- 安徽池州市第二中学等校2025-2026学年高一下学期期中物理试卷A(含答案).pdf
原创力文档

文档评论(0)