【24h】

On Interference Abstractions

机译:关于干扰抽象

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

摘要

Interference is the bane of both concurrent programming and analysis. To avoid considering all possible interferences between concurrent threads, most automated static analysis employ techniques to approximate interference, e.g., by restricting the thread scheduler choices or by approximating the transition relations or reachable states of the program. However, none of these methods are able to reason about interference directly. In this paper, we introduce the notion of interference abstractions (IAs), based on the models of shared memory consistency, to reason about interference efficiently. IAs differ from the known abstractions for concurrent programs and cannot be directly modeled by these abstractions. Concurrency bugs typically involve a small number of unexpected interferences and therefore can be captured by small IAs. We show how IAs, in the form of both over- and under-approximations of interference, can be obtained syntactically from the axioms of sequential consistency. Further, we present an automatic method to synthesize IAs suitable for checking safety properties. Our experimental results show that small IAs are often sufficient to check properties in realistic applications, and drastically improve the scalability of concurrent program analysis in these applications.
机译:干扰是并发编程和分析的祸根。为了避免考虑并发线程之间的所有可能的干扰,大多数自动静态分析采用了近似干扰的技术,例如通过限制线程调度程序的选择或通过近似过渡关系或程序的可到达状态。但是,这些方法都不能直接推理干扰。在本文中,我们基于共享内存一致性模型介绍了干扰抽象(IA)的概念,以有效地进行干扰推理。 IA与并发程序的已知抽象有所不同,因此无法直接通过这些抽象进行建模。并发错误通常涉及少量意外干扰,因此可以由小型IA捕获。我们展示了如何以顺序一致性公理从句法上获得干扰的过高和过低形式的IA。此外,我们提出了一种自动方法,可以合成适合检查安全性的IA。我们的实验结果表明,较小的IA通常足以检查实际应用程序中的属性,并大大提高了这些应用程序中并发程序分析的可伸缩性。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号