写点什么

OpenJDK 上可以进行动态调用了

  • 2008-09-04
  • 本文字数:744 字

    阅读完需:约 2 分钟

John Rose 宣布了“国际动态调用日(International InvokeDynamic Day)”,以此来庆祝其通过’invokedynamic’指令首次成功调用了动态方法:

今天凌晨,JVM 首次针对 invokedynamic 指令处理了一个完全的引导周期、链接常量池入口、创建具体的调用地址对象、寻找并调用每个类的引导方法、将具体的调用地址链接到方法句柄,然后通过方法句柄重新高速调用链接的调用地址 999 次。尽管方法签名一样,但调用者所指的方法名与被调用的是不同的。链接是通过随机的、引导方法中手写的 Java 代码来实现的。

“invokedynamic”指令是为多语言虚拟机(叫做’ Da Vinci Machine ’)所计划的众多特性之一。Da Vinci 中所有计划的增强特性都在 MLVM 站点的子项目部分进行了描述。动态调用也是 JSR-292 的一部分, InfoQ 早前已经对其进行了讨论,同时它也是对一些针对核心 Java VM 的实验性的 Da Vinci 工作的一种改编。John Rose 所发表的声明表明’invokedynamic’首次运行在 OpenJDK hotspot 虚拟机上。

动态调用是针对 JVM 的动态语言开发者最期望的特性之一。 Gilad Bracha 在InfoQ 上讨论过动态调用背后的理论以及为何它是一种必要增强的原因。

JRuby 的领导者 Charles Oliver Nutter 就 John Rose 的声明发表了以下看法:

太棒了…待今明两天 JRuby 1.1.4 发布后我就要进行一次动态调用。正好用它作为秋季会议的演示。

Groovy 的项目经理 Guillaume Laforge 用简单的一句话表示祝贺:

香槟!:-)

但是对于动态调用来说还有很长的一段路要走。当然,动态语言(如 JRuby 和 Groovy)必须适时利用新的指令。Rose 指出对于核心实现来说依旧还有很多工作需要完成:

至于 JVM 代码,它只工作在 x86/32 上;下一步工作就是将汇编码移到正确的文件中并完成对 x86/64 和 SPARC 的支持。

查看英文原文: Dynamic Invocation Runs on OpenJDK

2008-09-04 07:26475
用户头像

发布了 88 篇内容, 共 264.2 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

硬盘监测和系统优化工具推荐Sensei 注册激活版

胖墩儿不胖y

Mac软件 优化软件 系统清理工具

天翼云智算基础设施平台“云骁”,驱动智算产业创新发展

Geek_2d6073

Kubernetes 漫游:etcd

Phoenix

花见Live Wallpaper 4K Pro for mac(4k视频壁纸)

展初云

Mac 动态壁纸软件 Mac视频壁纸

EndNote 21 文献管理工具 Mac激活版 支持m1

加油,小妞!

文献管理 EndNote 21

Mac模拟飞行驾驶游戏:X-Plane 12 for Mac

彩云

X-Plane 12 飞行模拟游戏

开发看体育在线直播系统平台:多维内容和多元互动打造“有趣”观赛体验

软件开发-梦幻运营部

感恩有你|恭喜 OpenTiny Vue 开源组件库喜迎1000+star!!!

OpenTiny社区

开源 前端 UI组件库

sublime text for Mac 注册激活版 附 激活码 支持M1

加油,小妞!

代码编辑器 sublime text

3D建模软件Rhino 8 for Mac(犀牛)

展初云

Mac 建模软件 Rhino 8 犀牛

好用的图片处理工具 JixiPix Pastello Pro激活最新版

mac大玩家j

Mac软件 图像处理工具 图像编辑器

【腾讯云云上实验室】用向量数据库——实现高效文本检索功能

熬夜磕代码、

数据库、

专业矢量图片转换工具 Vector Magic免激活最新

胖墩儿不胖y

Mac软件 矢量图软件

Macbook 电池最大充电限制工具:AlDente Pro for Mac

加油,小妞!

AlDente Pro

SourceTree for Mac 最新激活 支持M1

彩云

sourcetree SourceTree Mac

Rectangle Pro for Mac 窗口布局增强工具

繁星

Rectangle Pro for Mac

Sensei for Mac(系统优化工具)

展初云

Mac Mac软件 系统优化工具

macos好玩的游戏:星际争霸母巢之战汉化激活版最新

mac大玩家j

mac游戏 星际争霸母巢之战破解版

数字城市运行监测主题指标设计思路探讨

Geek_37rwst

Git客户端:SourceTree for Mac中文版

繁星

sourcetree Git客户端

2023-11-25:用go语言,给定一个数组arr,长度为n,表示n个格子的分数,并且这些格子首尾相连, 孩子不能选相邻的格子,不能回头选,不能选超过一圈, 但是孩子可以决定从任何位置开始选,也可以

福大大架构师每日一题

福大大架构师每日一题

云HIS医院信息化管理系统源码:集团化管理,多租户机制,满足医院业务需求

源码星辰

源码 Java’ 云计算,

OpenJDK上可以进行动态调用了_Java_R.J. Lorimer_InfoQ精选文章