...
首页> 外文期刊>ACM Transactions on Programming Languages and Systems >Interprocedural Context-Unbounded Program Analysis Using Observation Sequences
【24h】

Interprocedural Context-Unbounded Program Analysis Using Observation Sequences

机译:使用观察序列的移植内容无界面的程序分析

获取原文
获取原文并翻译 | 示例
   

获取外文期刊封面封底 >>

       

摘要

A classical result by Ramalingam about synchronization-sensitive interprocedural program analysis implies that leachability for concurrent threads running recursive procedures is undecidable. A technique proposed by Qadeer and Rehof, to bound the number of context switches allowed between the threads, leads to an incomplete solution that is, however, believed to catch "most bugs" in practice, as errors tend to occur within few contexts. The question of whether the technique can also prove the absence of bugs at least in some cases has remained largely open.Toward closing this gap, we introduce in this article the generic verification paradigm of observation sequences for resource-parameterized programs. Such a sequence observes how increasing the resource parameter affects the reachability of states satisfying a given property. The goal is to show that increases beyond some "cutoff" parameter value have no impact on the reachability-the sequence has converged. This allows us to conclude that the property holds for all parameter values.We applied this paradigm to the context- unbounded program analysis problem, choosing the resource to be the number of permitted thread context switches. The result is a partially correct interprocedural reachability analysis technique for concurrent shared-memory programs. Our technique may not terminate but is able to both refute and prove context-unbounded safety for such programs. We demonstrate the effectiveness and efficiency of the technique using a variety of benchmark programs. The safe instances cannot be proved safe by earlier, context-bounded methods.
机译:通过Ramalingam有关同步敏感的过程间程序分析一个经典的结果意味着,浸出运行递归过程并发线程是不可判定。由卡迪尔和Rehof提出了一种技术,开往上下文的数量交换机允许的线程之间,导致一个不完整的解决方案,然而,认为在实践中抓住“最错误”,因为错误往往几个环境内发生。的技术是否也可以证明,至少没有错误的在某些情况下的问题基本上保持open.Toward填补这一差距,我们在本文中介绍观测序列为资源参数的程序一般验证模式。这样的顺序观察如何提高资源参数影响满足给定属性状态的可达性。我们的目标是超越表现出一些“截止”参数值增加对可达性,序列没有影响收敛。这让我们得出这样的结论属性适用于所有参数values.We应用这个模式的上下文无限程序分析问题,选择资源是允许的线程上下文开关的数量。其结果是用于同时共享存储器中的程序的部分正确过程间可达性分析技术。我们的技术可能不会终止,但能够既反驳,证明上下文无限的安全性这样的程序。我们证明使用各种基准程序的技术的有效性和效率。安全情况下不能被证明由早期,上下文界定方法是安全的。

著录项

获取原文

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号