Treffer: Goldilocks: A Race-Aware Java Runtime.

Title:
Goldilocks: A Race-Aware Java Runtime.
Authors:
Elmas, Tayfun1 telmas@ku.edu.tr, Qadeer, Shaz2 qadeer@microsoft.com, Tasiran, Serdar1 stasiran@ku.edu.tr
Source:
Communications of the ACM. Nov2010, Vol. 53 Issue 11, p85-92. 8p. 4 Diagrams, 1 Chart.
Database:
Business Source Elite

Weitere Informationen

We present Goldilocks, a Java runtime that monitors program executions and throws a DataRaceException when a data race is about to occur. This prevents racy accesses from taking place, and allows race conditions to be handled before they cause errors that may be difficult to diagnose later. The DataRaceException is a valuable debugging tool, and, if supported with reasonable computational overhead, can be an important safety feature for deployed programs. Experiments by us and others on raceaware Java runtimes indicate that the DataRaceException may be a viable mechanism to enforce the safety of executions of multithreaded Java programs. An important benefit of DataRaceException is that executions in our runtime are guaranteed to be race free and thus sequentially consistent as per the Java Memory Model. This strong guarantee provides an easy-to-use, clean semantics to programmers, and helps to rule out many concurrency- related possibilities as the cause of errors. To support the DataRaceException, our runtime incorporates the novel Goldilocks algorithm for precise dynamic race detection. The Goldilocks algorithm is general, intuitive, and can handle different synchronization patterns uniformly. [ABSTRACT FROM AUTHOR]

Copyright of Communications of the ACM is the property of Association for Computing Machinery and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)