RUS  ENG
Full version
JOURNALS // Proceedings of the Institute for System Programming of the RAS // Archive

Proceedings of ISP RAS, 2016 Volume 28, Issue 6, Pages 65–86 (Mi tisp85)

This article is cited in 1 paper

Adjustable method with predicate abstraction for detection of race conditions in operating systems

P. S. Andrianova, V. S. Mutilina, A. V. Khoroshilovabcd

a Institute for System Programming of the RAS
b Moscow Institute of Physics and Technology (State University)
c Lomonosov Moscow State University
d National Research University Higher School of Economics (HSE)

Abstract: The paper presents a configurable method of static data race detection that is trying to keep a balance between resource consumption and a number of false alarms. The method is based on well known Lockset approach. It uses simplified memory model to be fast enough. At the same time it includes advanced techniques aimed to achieve acceptable false alarms rate. The key techniques are thread analysis and predicate abstraction based refinement. The method was implemented in CPALockator tool built on top of CPAchecker framework. The tool was evaluated on Linux kernel modules and it has detected several actual data races, which were approved by developers and were fixed in upstream Linux kernel.

Keywords: static analysis, race condition, kernel of operating system.

DOI: 10.15514/ISPRAS-2016-28(6)-5



Bibliographic databases:


© Steklov Math. Inst. of RAS, 2024