Обнаружение состояний гонки в Java-программах на основе синхронизационных контрактов

Authors

  • Vitaliy Trifanov

Keywords:

concurrency, data race, automatic bugs detection

Abstract

Data races occur in parallel programs when several threads perform concurrent accesses to the same location of shared memory without consistent synchronization. Data races are one of the most hardly detectable multithreading errors. A lot of research in the area of automatic data race detection has been held during last twenty years, but, for example, no full-fledged dynamic data race detector for Java-applications, applicable to industrial systems (hundreds and thousands classes), still exists. In this article an idea of dynamic data race detection based on synchronization contracts is proposed. Synchronization contracts assist to exclude certain, uninteresting from the view of data race detection (for example, code of standard libraries), parts of application form the analysis scope, making data race detection process flexibly manageable. By-turn, it makes possible to reduce overhead significantly without loss of precision. An implementation of this idea and evaluation of resulting tool are also introduced.

Downloads

Published

2012-08-31

Issue

Section

Software Engineering

How to Cite

[1]
“Обнаружение состояний гонки в Java-программах на основе синхронизационных контрактов”, Comput. Tools Educ., no. 4, Aug. 2012, Accessed: Oct. 24, 2026. Available: http://cte.eltech.ru/ojs/index.php/kio/article/view/1313

Most read articles by the same author(s)