Sciweavers

TACAS
2010
Springer

Preemption Sealing for Efficient Concurrency Testing

13 years 3 months ago
Preemption Sealing for Efficient Concurrency Testing
The choice of where a thread scheduling algorithm preempts one thread in order to execute another is essential to reveal concurrency errors such as atomicity violations, livelocks, and deadlocks. We present a scheduling strategy called preemption sealing that controls where and when a scheduler is disabled from preempting threads during program execution. We demonstrate that this strategy is effective in addressing two key problems in testing industrial-scale concurrent programs: (1) tolerating existing errors in order to find more errors, and (2) compositional testing of layered, concurrent systems. We evaluate the effectiveness of preemption sealing, implemented in the Chess tool, for these two scenarios on newly released concurrency libraries for Microsoft's .NET framework.
Thomas Ball, Sebastian Burckhardt, Katherine E. Co
Added 15 Feb 2011
Updated 15 Feb 2011
Type Journal
Year 2010
Where TACAS
Authors Thomas Ball, Sebastian Burckhardt, Katherine E. Coons, Madanlal Musuvathi, Shaz Qadeer
Comments (0)