Eliminating concurrency bugs in multithreaded software: An approach based on control of Petri nets

7Citations
Citations of this article
3Readers
Mendeley users who have this article in their library.
Get full text

Abstract

We describe the Gadara project, a research effort whose goal is to eliminate certain classes of concurrency bugs in multithreaded software by controlling the execution of programs at run-time. The Gadara process involves three stages: modeling of the source code at compile time in the form of a Petri net, feedback control synthesis, and control logic implementation into the source code. The feedback control logic is synthesized using techniques from supervisory control of discrete event systems, where the specification captures the avoidance of certain types of concurrency bugs, such as deadlocks. We focus on the case of circular-wait deadlocks in multithreaded programs employing mutual exclusion locks for shared data. The application of the Gadara methodology to other classes of concurrency bugs is briefly discussed. © 2013 Springer-Verlag.

Cite

CITATION STYLE

APA

Lafortune, S., Wang, Y., & Reveliotis, S. (2013). Eliminating concurrency bugs in multithreaded software: An approach based on control of Petri nets. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 7927 LNCS, pp. 21–28). https://doi.org/10.1007/978-3-642-38697-8_2

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free