【24h】

Sealed Calls in Java Packages

机译:在Java包中的密封呼叫

获取原文

摘要

Determining the potnetial targets of virtual method invocations is essential for inter-procedural optimizations of object-oriented programs. It is generally hard to determine such targets accurately. The problem is especially difficult for dynamic languages such as Java, because additional targets of virtual calls may appear at runtime. Current mechanisms that enable inter-procedural optimizations for dynamic languages, repeatedly validate the optimizations at runtime. this paper addresses this predicament by proposing a novel technique for conservative devirtualization analysis, which applies to a significant number of virutal calls in Java programs. Unlike previous work, our technique requires neither whole program analysis nor runtime information, and incurs no rutnime overhead. Our solution is very efficient to compute and is based on a newly introudce,d seemingly un-related security feature of Java file archives. On average, our analysis "seals" (safely devirtualizes) about 39
机译:确定虚拟方法调用的POTNETIAL目标对于面向对象程序的过程间优化至关重要。通常很难准确地确定这些目标。对于Java等动态语言,问题尤其困难,因为在运行时可能会出现额外的虚拟呼叫目标。当前机制,使动态语言能够进行程序间优化,重复验证运行时的优化。本文通过提出一种用于保守的续航分析的新技术来解决这种困境,这适用于Java程序中的大量恶作剧呼叫。与以前的工作不同,我们的技术既不需要整个方案分析,也不需要运行时信息,并在没有rutnime开销。我们的解决方案非常有效地计算且基于新Interounce,D看起来无效的java文件档案安全功能。平均而言,我们的分析“密封”(安全致命化)约39

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号