z-logo
open-access-imgOpen Access
Expressive modular fine-grained concurrency specification
Author(s) -
Bart Jacobs,
Frank Piessens
Publication year - 2011
Publication title -
lirias (ku leuven)
Language(s) - English
Resource type - Conference proceedings
DOI - 10.1145/1926385.1926417
Subject(s) - computer science , concurrency , synchronization (alternating current) , modular design , linearizability , distributed computing , programming language , concurrency control , concurrent computing , data structure , protocol (science) , code (set theory) , simple (philosophy) , computer network , database transaction , medicine , channel (broadcasting) , philosophy , alternative medicine , set (abstract data type) , epistemology , pathology , correctness
Compared to coarse-grained external synchronization ofoperations on data structures shared between concurrentthreads, fine-grained, internal synchronization can offerstronger progress guarantees and better performance. However,fully specifying operations that perform internalsynchronization modularly is a hard, open problem. The state ofthe art approaches, based on linearizability or on concurrentabstract predicates, have important limitations on theexpressiveness of specifications. Linearizability does notsupport ownership transfer, and the concurrent abstractpredicates-based specification approach requires hardcoding aparticular usage protocol. In this paper, we propose a novelapproach that lifts these limitations and enables fully generalspecification of fine-grained concurrent data structures. Thebasic idea is that clients pass the ghost code required toinstantiate an operation's specification for a specific clientscenario into the operation in a simple form of higher-orderprogramming.We machine-checked the theory of the paper using the Coq proofassistant. Furthermore, we implemented the approach in ourprogram verifier VeriFast and used it to verify two challengingfine-grained concurrent data structures from the literature: amultiple-compare-and-swap algorithm and a lock-coupling list.status: publishe

The content you want is available to Zendy users.

Already have an account? Click here to sign in.
Having issues? You can contact us here
Accelerating Research

Address

John Eccles House
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom