写点什么

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:26601
用户头像

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

关注

评论

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

天津大学、浪潮信息、龙蜥社区等技术专家讲开源,龙蜥大讲堂12月精彩预告提前解锁

OpenAnolis小助手

操作系统 龙蜥社区 龙蜥大讲堂

今日分享 | 初识inBuilder业务查询语言-BQL

inBuilder低代码平台

低代码

中国零售时装品牌商品数字化转型挑战与路径

第七在线

【低代码】低代码平台协同&敏捷场景下的并行开发解决方案探索

京东科技开发者

百度商业系统升级为“百度伴飞”,将释放10倍商业空间、延伸3倍经营时间

极客天地

深入理解 Go 高性能网络框架 nbio

俞凡

golang

Alibaba Cloud Linux:助力太保科技整体云平台0故障,提效30% | 龙蜥案例

OpenAnolis小助手

操作系统 龙蜥社区 龙蜥案例

23 位委员参会,第 28 次龙蜥社区运营委员会圆满结束

OpenAnolis小助手

操作系统 龙蜥社区 龙蜥社区运营委员会

人机协作智能体如何助力人形机器人产业发展?网易伏羲受邀分享前沿观点 | 活动预告

网易伏羲

人工智能 网易伏羲

ETL是什么?浅谈ETL对数据仓库的重要性

谷云科技RestCloud

数据仓库 ETL 数据集成 企业数字化

上千人挑战,用通义灵码从 0 开始打造一款 App 爆火 | 第二课:搭建本机服务

阿里云云效

阿里云 云原生

NocoBase 1.4.0 正式版发布

NocoBase

开源 低代码 零代码 无代码 版本更新

在外包干了七年,废了......

Summer

Java 编程 程序员 面试 架构师

从DevOps状态报告看技术团队的文化建设

京东科技开发者

Fish Speech 1.5 发布,TTS-Arena 排名开源第一;DeepMind Genie 2,一键生成无限虚拟世界

RTE开发者社区

生成式AI重构营销 超7成客户使用百度AI营销服务

极客天地

文小言累计调用量超35亿次,计划接入法律、票务、电商等30+AI服务化功能

极客天地

得物新一代可观测性架构:海量数据下的存算分离设计与实践

得物技术

【案例分享】思牧科技:赋能智能物流行业,中邮信源的零代码数字化之路

明道云

AIGC项目中的【模板进程】方案的设计实践

京东科技开发者

【FAQ】HarmonyOS SDK 闭源开放能力 —Remote Communication Kit

HarmonyOS SDK

harmoyos

21位优秀学生代表颁发结课证书,开放原子校源行(天津大学站)成功举办

OpenAnolis小助手

开源 操作系统 龙蜥高校行

全方位探讨自主可信计算开源实践!龙蜥社区可信计算 SIG MeetUp 邀您报名

OpenAnolis小助手

操作系统 龙蜥社区 可信计算 龙蜥meetup

上千人挑战,用通义灵码从 0 开始打造一款 App 爆火 | 第二课:搭建本机服务

阿里巴巴云原生

阿里云 云原生 通义灵码

文心智能体平台已汇聚15万企业,智能体分发量上涨16倍

极客天地

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