首页> 外文会议>Euromicro International Conference on Parallel, Distributed, and Network-Based Processing >VerCors: A Layered Approach to Practical Verification of Concurrent Software
【24h】

VerCors: A Layered Approach to Practical Verification of Concurrent Software

机译:VerCors:并行验证并行软件的分层方法

获取原文

摘要

This paper discusses how several concurrent program verification techniques can be combined in a layered approach, where each layer is especially suited to verify one aspect of concurrent programs, thus making verification of concurrent programs practical. At the bottom layer, we use a combination of implicit dynamic frames and CSL-style resource invariants, to reason about data race freedom of programs. We illustrate this on the verification of a lock-free queue implementation. On top of this, layer 2 enables reasoning about resource invariants that express a relationship between thread-local and shared variables. This is illustrated by the verification of a reentrant lock implementation, where thread-locality is used to specify for a thread which locks it holds, while there is a global notion of ownership, expressing for a lock by which thread it is held. Finally, the top layer adds a notion of histories to reason about functional properties. We illustrate how this is used to prove that the lock-free queue preserves the order of elements, without having to reverify the aspects related to data race freedom.
机译:本文讨论了如何在分层方法中组合几种并发程序验证技术,其中每一层特别适合于验证并发程序的一个方面,从而使并发程序的验证变得实用。在底层,我们结合使用隐式动态框架和CSL样式的资源不变量,以推断程序的数据竞争自由度。我们将在无锁队列实现的验证中对此进行说明。最重要的是,第2层使有关资源不变性的推理成为可能,该不变性表达了线程局部变量和共享变量之间的关系。这通过重入锁实现的验证来说明,其中线程局部性用于指定对其持有锁的线程,同时存在全局所有权概念,表示持有该线程的锁。最后,顶层添加了历史概念来推理功能特性。我们将说明如何使用它来证明无锁队列保留元素的顺序,而不必重新验证与数据竞争自由有关的方面。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号