• Title of article

    Atomizer: A dynamic atomicity checker for multithreaded programs

  • Author/Authors

    Cormac Flanagan، نويسنده , , Stephen N. Freund، نويسنده ,

  • Issue Information
    دوهفته نامه با شماره پیاپی سال 2008
  • Pages
    21
  • From page
    89
  • To page
    109
  • Abstract
    Ensuring the correctness of multithreaded programs is difficult, due to the potential for unexpected interactions between concurrent threads. Much previous work has focused on detecting race conditions, but the absence of race conditions does not by itself prevent undesired interactions between threads.A more fundamental noninterference property is atomicity. A method is atomic if its execution is not affected by and does not interfere with concurrently-executing threads. Atomic methods can be understood according to their sequential semantics, which significantly simplifies both formal and informal correctness arguments.This paper presents a dynamic analysis for detecting atomicity violations. This analysis combines ideas from both Lipton’s theory of reduction and earlier dynamic race detectors. Experience with a prototype checker for multithreaded Java code demonstrates that this approach is effective for detecting errors due to unintended interactions between threads. In particular, our atomicity checker detects errors that would be missed by standard race detectors. Our experimental results also indicate that the majority of methods in our benchmarks are atomic, indicating that atomicity is a standard methodology in multithreaded programming.
  • Keywords
    Dynamic analysis , Concurrency , Atomicity , reduction
  • Journal title
    Science of Computer Programming
  • Serial Year
    2008
  • Journal title
    Science of Computer Programming
  • Record number

    1080016