Article in Proceedings INPROC-2010-59

BibliographyKeul, Steffen: Static Versioning of Global State for Race Condition Detection.
In: Reliable Software Technologiey – Ada-Europe 2010 15th Ada-Europe International Conference on Reliable Software Technologies, Valencia, Spain, June 14-18, 2010. Proceedings.
University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology.
Lecture Notes in Computer Science; 6106, pp. 111-124, english.
Springer Berlin Heidelberg, June 2010.
ISBN: 978-3-642-13549-1; DOI: 10.1007/978-3-642-13550-7.
Article in Proceedings (Conference Paper).
CR-SchemaD.1.3 (Concurrent Programming)
F.3.2 (Semantics of Programming Languages)
KeywordsSoftware Reengineering; Concurrent Reliable Software; Statische Analyse
Abstract

The implementation of concurrent reliable software systems is very difficult. Race conditions on shared data can cause a program's memory state to become inconsistent and result in unpredictable behavior of the software. Much work has been published on analyses to identify access sites to shared data which do not conform to an accepted synchronization pattern. However, those algorithms usually cannot determine if a computation will use a consistent version of more than one shared data object. In this paper, we present a new static analysis algorithm to identify computations which can potentially load values that were stored independently of each other. These uses of global state are affected by race conditions and may yield undesired values during the execution of the program. We show applicability of an implementation of the analysis on several open-source systems.

Department(s)University of Stuttgart, Institute of Software Technology, Programming Languages and Compilers
Project(s)Bauhaus
Entry dateJune 30, 2010
   Publ. Institute   Publ. Computer Science