Finding Concurrency Errors in Sequential Code -OS-level, In-Vivo Model Checking of Process Races
While thread races have drawn huge attention from the research community, little has been done for process races, where multiple - possibly sequential - processes access a shared resource, such as a file, without proper synchronization. The authors present a preliminary study of real process races and show that they are numerous, dangerous, and difficult to detect. To address this problem, they present the design of RACEPRO, an in-vivo model checking system for automatically detecting process races in deployed systems, along with preliminary results from a RACEPRO prototype. To the best of their knowledge, they are the first to study real process races, and RACEPRO is the first system to detect the m.