2012
DOI: 10.1007/s10626-012-0139-x
|View full text |Cite
|
Sign up to set email alerts
|

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 lin… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
2

Citation Types

0
59
0
1

Year Published

2013
2013
2023
2023

Publication Types

Select...
6

Relationship

2
4

Authors

Journals

citations
Cited by 34 publications
(60 citation statements)
references
References 45 publications
0
59
0
1
Order By: Relevance
“…The special class of RAS Petri nets that arises in this context is called Gadara nets. The reader is referred to [27] for the formal definition of Gadara nets and for a treatment of their analytical properties in the context of multithreaded programs that use mutually-exclusive locks to control access to shared data. The deadlocks caused by the use of mutuallyexclusive locks are circular-mutex-wait deadlocks, where threads in a set are waiting for one another and none can proceed.…”
Section: Gadara Methodologymentioning
confidence: 99%
See 4 more Smart Citations
“…The special class of RAS Petri nets that arises in this context is called Gadara nets. The reader is referred to [27] for the formal definition of Gadara nets and for a treatment of their analytical properties in the context of multithreaded programs that use mutually-exclusive locks to control access to shared data. The deadlocks caused by the use of mutuallyexclusive locks are circular-mutex-wait deadlocks, where threads in a set are waiting for one another and none can proceed.…”
Section: Gadara Methodologymentioning
confidence: 99%
“…The deadlocks caused by the use of mutuallyexclusive locks are circular-mutex-wait deadlocks, where threads in a set are waiting for one another and none can proceed. Avoidance of circular-mutex-wait deadlocks in multithreaded programs is mapped to the problem of liveness in Gadara nets in [27]. Liveness here refers to the property that every transition is eventually firable from any reachable state of the net.…”
Section: Gadara Methodologymentioning
confidence: 99%
See 3 more Smart Citations