期刊名称:International Journal of Software Engineering and Its Applications
印刷版ISSN:1738-9984
出版年度:2013
卷号:7
期号:5
页码:65-76
出版社:SERSC
摘要:Detecting data races in multi-threaded programs is a challenging problem in debugging, because the races could reveal nondeterministic program behavior in execution of such pro- grams. Nondeterministic runtime eects of a race are hard to identify and it is dicult to decide whether the reported data races can appear or not in the actual program executions. Previous techniques for detecting races cannot provide method to locate rst races in par- allel programs with random synchronization including lock/unlock mechnism. This paper presents an algorithm which extracts rst races by replaying the program and checking con- currency between sequenced traced data and candidate accesses, which are from a particular execution of parallel programs. We also present the correctness of our algorithm by showing that all the rst races are included in the traced accesses which are composed of key accesses.
关键词:rst race; race detection; post-mortem analysis; parallel program debugging;concurrent programming; random synchronization