A Modeling Concept for Formal Verification of OS-Based Compositional Software.

Leandro Batista Ribeiro,Florian Lorber,Ulrik Nyman,Kim Guldstrand Larsen,Marcel Baunach
DOI: https://doi.org/10.1007/978-3-031-30826-0_2
2023-01-01
Abstract:The use of formal methods to prove the correctness of compositional embedded systems is increasingly important. However, the required models and algorithms can induce an enormous complexity. Our approach divides the formal system model into layers and these in turn into modules with defined interfaces, so that reduced formal models can be created for the verification of concrete functional and non-functional requirements. In this work, we use Uppaal to (1) model an RTOS kernel in a modular way and formally specify its internal requirements, (2) model abstract tasks that trigger all kernel functionalities in all combinations or scenarios, and (3) verify the resulting system with regard to task synchronization, resource management, and timing. The result is a fully verified model of the operating system layer that can henceforth serve as a dependable foundation for verifying compositional applications w.r.t. various aspects, such as timing or liveness.
What problem does this paper attempt to address?