Title
Concurrency bugs in multithreaded software: modeling and analysis using Petri nets
Abstract
In this paper, we apply discrete-event system techniques to model and analyze the execution of concurrent software. The problem of interest is deadlock avoidance in shared-memory multithreaded programs. We employ Petri nets to systematically model multithreaded programs with lock acquisition and release operations. We define a new class of Petri nets, called Gadara nets, that arises from this modeling process. We investigate a set of important properties of Gadara nets, such as liveness, reversibility, and linear separability. We propose efficient algorithms for the verification of liveness of Gadara nets, and report experimental results on their performance. We also present modeling examples of real-world programs. The results in this paper lay the foundations for the development of effective control synthesis algorithms for Gadara nets.
Year
DOI
Venue
2013
10.1007/s10626-012-0139-x
Discrete Event Dynamic Systems
Keywords
Field
DocType
Concurrent software,Deadlock analysis,Modeling,Petri nets
Linear separability,Petri net,Concurrency,Computer science,Deadlock,Modeling language,Process architecture,Software,Distributed computing,Liveness
Journal
Volume
Issue
ISSN
23
2
0924-6703
Citations 
PageRank 
References 
14
0.76
34
Authors
8
Name
Order
Citations
PageRank
Hongwei Liao11159.58
Yin Wang2813.62
Hyoun Kyu Cho3524.37
Jason Stanley4393.48
Terence Kelly581353.23
StéPhane Lafortune61738181.23
Scott Mahlke74811312.08
Spyros A. Reveliotis836429.24