Eraser: A Dynamic Data Race Detector for Multi-Threaded Programs.
by Michael Burrows, Greg Nelson, Patrick Sobalvarro, Stefan Savage, Thomas Anderson
url show details
Details
address: | New York | url: | http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.47.9973; http://geyer.lcs.mit.edu/~jchapin/6853/Papers/eraser.ps | type: | misc | year: | 1997 | note: | Co-published in {\em Operating Systems Review}, {\bf 31}(5). | series: | Operating Systems Review | journal: | ACM Trans. Comput. Syst | annote: | Stefan Savage (Department of Computer Science and Engineering; University of Washington , Seattle); Michael Burrows (Digital Equipment Corporation; Systems Research Center); Greg Nelson (Digital Equipment Corporation; Systems Research Center); Patrick Sobalvarro (Digital Equipment Corporation; Systems Research Center); Thomas Anderson (Computer Science Division; University of California , Berkeley); | abstract: | Multi-threaded programming is difficult and error prone. It is easy to make a mistake in synchronization that produces a data race, yet it can be extremely hard to locate this mistake during debugging. This paper describes a new tool, called Eraser, for dynamically detecting data races in lock-based multi-threaded programs. Eraser uses binary rewriting techniques to monitor every shared memory reference and verify that consistent locking behavior is observed. We present several case studies, including undergraduate coursework and a multi-threaded Web search engine, that demonstrate the effectiveness of this approach. 1 Introduction Multi-threading has become a common programming technique. Most commercial operating systems support threads, and popular applications like Microsoft Word and Netscape Navigator are multi-threaded. Unfortunately, debugging a multi-threaded program can be difficult. Simple errors in synchronization can produce timing-dependent data races that can take weeks ... | number: | 4 | volume: | 15 | pages: | 391--411 | booktitle: | SOSP | publisher: | ACM Press | editor: | Michel Ban{\^a}tre and Henry M. Levy and William M. Waite | month: | aug # "~01 |
|
|
You need to log in to add tags and post comments.