DocumentCode :
2443228
Title :
Axis: Automatically fixing atomicity violations through solving control constraints
Author :
Liu, Peng ; Zhang, Charles
Author_Institution :
Dept. of Comput. Sci. & Eng., Hong Kong Univ. of Sci. & Technol., Hong Kong, China
fYear :
2012
fDate :
2-9 June 2012
Firstpage :
299
Lastpage :
309
Abstract :
Atomicity, a general correctness criterion in concurrency programs, is often violated in real-world applications. The violations are difficult for developers to fix, making automatic bug fixing techniques attractive. The state of the art approach aims at automating the manual fixing process but cannot provide any theoretical reasoning and guarantees. We provide an automatic approach that applies well-studied discrete control theory to guarantee deadlocks are not introduced and maximal preservation of the concurrency of the original code. Under the hood, we reduce the problem of violation fixing to a constraint solving problem using the Petri net model. Our evaluation on 13 subjects shows that the slowdown incurred by our patches is only 40% of that of the state of the art. With the deadlock-free guarantee, our patches incur moderate overhead (around 10%), which is a worthwhile cost for safety.
Keywords :
Petri nets; concurrency control; program debugging; Axis; Petri net model; atomicity violation automatic fixing; automatic bug fixing techniques; concurrency programs; control constraints solving; deadlock-free guarantee; discrete control theory; general correctness criterion; Cognition; Computer bugs; Concurrent computing; Equations; Mathematical model; System recovery; Vectors;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Software Engineering (ICSE), 2012 34th International Conference on
Conference_Location :
Zurich
ISSN :
0270-5257
Print_ISBN :
978-1-4673-1066-6
Electronic_ISBN :
0270-5257
Type :
conf
DOI :
10.1109/ICSE.2012.6227184
Filename :
6227184
Link To Document :
بازگشت