SimRacer: An automated framework to support testing for process-level races

Tingting Yu, Witawas Srisa-An, Gregg Rothermel

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

18 Scopus citations

Abstract

Faults introduced by races are difficult to detect because they usually occur only under specific execution interleavings. Numerous program analysis and testing techniques have been proposed to detect races between threads. Little work, however, has addressed the problem of detecting and testing for process-level races, in which two processes access a shared resource without proper synchronization. In this paper, we present SIMRACER, a novel testing-based framework that allows engineers to effectively test for process-level races. SIMRACER first computes potential races based on runtime traces obtained by running existing tests on target processes, and then it controls process scheduling relative to the potential races so that real races can be created. We implemented SIMRACER on a commercial virtual platform that is widely used to support hardware/software co-design. We then evaluated its effectiveness on sixteen real-world applications containing known process-level races. Our results show that SIMRACER is effective at detecting process-level races, and more effective than traditional stress testing techniques at detecting faults caused by those races.

Original languageEnglish
Title of host publication2013 International Symposium on Software Testing and Analysis, ISSTA 2013 - Proceedings
Pages167-177
Number of pages11
DOIs
StatePublished - 2013
Event22nd International Symposium on Software Testing and Analysis, ISSTA 2013 - Lugano, Switzerland
Duration: Jul 15 2013Jul 20 2013

Publication series

Name2013 International Symposium on Software Testing and Analysis, ISSTA 2013 - Proceedings

Conference

Conference22nd International Symposium on Software Testing and Analysis, ISSTA 2013
Country/TerritorySwitzerland
CityLugano
Period7/15/137/20/13

Keywords

  • Concurrency
  • Data Race
  • Kernels
  • Processes
  • Testing

ASJC Scopus subject areas

  • Software

Fingerprint

Dive into the research topics of 'SimRacer: An automated framework to support testing for process-level races'. Together they form a unique fingerprint.

Cite this