Chopra, N and Pai, R and D’Souza, D (2019) Data Races and Static Analysis for Interrupt-Driven Kernels. In: 28th European Symposium on Programming, ESOP 2019 Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2019, 6 - 11 April 2019, Prague, pp. 697-723.
|
PDF
28th Eur_ETAPS 2019_697-723_2022.pdf - Published Version Download (771kB) | Preview |
Abstract
We consider a class of interrupt-driven programs that model the kernel API libraries of some popular real-time embedded operating systems and the synchronization mechanisms they use. We define a natural notion of data races and a happens-before ordering for such programs. The key insight is the notion of disjoint blocks to define the synchronizes-with relation. This notion also suggests an efficient and effective lockset based analysis for race detection. It also enables us to define efficient “sync-CFG” based static analyses for such programs, which exploit data race freedom. We use this theory to carry out static analysis on the FreeRTOS kernel library to detect races and to infer simple relational invariants on key kernel variables and data-structures.
Item Type: | Conference Paper |
---|---|
Publication: | Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) |
Publisher: | Springer Verlag |
Additional Information: | The copyright for this article belongs to the Authors. |
Keywords: | Embedded systems; Real time systems, Data races; Disjoint blocks; freeRTOS; Happens-before; Kernel libraries; Race detection; Real-time embedded operating systems; Synchronization mechanisms, Static analysis |
Department/Centre: | Division of Electrical Sciences > Computer Science & Automation |
Date Deposited: | 27 Oct 2022 08:48 |
Last Modified: | 27 Oct 2022 08:48 |
URI: | https://eprints.iisc.ac.in/id/eprint/77607 |
Actions (login required)
View Item |