首页> 外文会议>International Workshop on Verification Model Checking, and Abstract Interpretation >Efficiently Verifiable Conditions for Deadlock-Freedom of Large Concurrent Programs
【24h】

Efficiently Verifiable Conditions for Deadlock-Freedom of Large Concurrent Programs

机译:有效可验证的致命条件 - 大型并发计划的自由

获取原文

摘要

We present two polynomial-time algorithms for automatic verification of deadlock-freedom of large finite-state concurrent programs. We consider shared-memory concurrent programs in which a process can nondeterministically choose amongst several (enabled) actions at any step. As shown in [23], deadlock-freedom analysis is NP-hard even for concurrent programs of restricted form (no nondeterministic choice). Therefore, research in this area concentrates either on the search for efficiently checkable sufficient conditions for deadlock-freedom, or on improving the complexity of the check in some special cases. In this paper, we present two efficiently checkable sufficient conditions for deadlock freedom. Our algorithms apply to programs which are expressed in a particular syntactic form, in which variables are shared between pairs of processes. The first algorithm improves the complexity of the deadlock check of Attie and Emerson to polynomial in all parameters, as opposed to the exponential complexity of. The second algorithm involves a conceptually new construction of a "global wait-for graph" for all processes. Its running time is also polynomial in all its parameters, and it is more discriminating than the first algorithm. We illustrate our algorithms by applying them to several examples of concurrent programs that implement resource allocation and priority queues. To the best of our knowledge, this is the first work that describes polynomially checkable conditions for assuring deadlock freedom of large concurrent programs.
机译:我们提供了两个多项式时间算法,用于自动验证大型有限状态并发程序的死锁自由度。我们考虑共享内存并发程序,其中一个进程可以在任何步骤中不确定地选择几个(已启用的)操作。如[23]所示,即使对于受限制形式的并发计划(无非正式的选择),死锁自由度也是NP-COMPET。因此,在该领域的研究专注于寻找有效检查的足够条件以获得死锁 - 自由,或提高某些特殊情况下检查的复杂性。在本文中,我们为死锁自由提供了两种有效的有效条件。我们的算法适用于以特定的句法表达表示的程序,其中变量是在对过程对之间共享的。第一算法改善了Attie和Emerson对所有参数中的多项式的复杂性检查,而不是指数复杂性。第二种算法涉及所有进程的“全局等待图”的概念上新建。其运行时间在其所有参数中也是多项式,而且比第一算法更具鉴别。我们通过将它们应用于实现资源分配和优先级队列的并发程序的若干示例来说明我们的算法。据我们所知,这是第一项工作,描述了用于确保大型并发计划的死锁自由度的多项式审查条件。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号