Controlled Owicki-Gries Concurrency: Reasoning about the Preemptible eChronos Embedded Operating System

11/13/2015
by   June Andronick, et al.
0

We introduce a controlled concurrency framework, derived from the Owicki-Gries method, for describing a hardware interface in detail sufficient to support the modelling and verification of small, embedded operating systems (OS's) whose run-time responsiveness is paramount. Such real-time systems run with interrupts mostly enabled, including during scheduling. That differs from many other successfully modelled and verified OS's that typically reduce the complexity of concurrency by running on uniprocessor platforms and by switching interrupts off as much as possible. Our framework builds on the traditional Owicki-Gries method, for its fine-grained concurrency is needed for high-performance system code. We adapt it to support explicit concurrency control, by providing a simple, faithful representation of the hardware interface that allows software to control the degree of interleaving between user code, OS code, interrupt handlers and a scheduler that controls context switching. We then apply this framework to model the interleaving behavior of the eChronos OS, a preemptible real-time OS for embedded micro-controllers. We discuss the accuracy and usability of our approach when instantiated to model the eChronos OS. Both our framework and the eChronos model are formalised in the Isabelle/HOL theorem prover, taking advantage of the high level of automation in modern reasoning tools.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
08/31/2012

A Hardware Time Manager Implementation for the Xenomai Real-Time Kernel of Embedded Linux

Nowadays, the use of embedded operating systems in different embedded pr...
research
10/14/2015

Fine-Grained Energy Modeling for the Source Code of a Mobile Application

Energy efficiency has a significant influence on user experience of batt...
research
08/21/2020

SOTER on ROS: A Run-Time Assurance Framework on the Robot Operating System

We present an implementation of SOTER, a run-time assurance framework fo...
research
01/20/2021

Load-Balancing for Improving User Responsiveness on Multicore Embedded Systems

Most commercial embedded devices have been deployed with a single proces...
research
03/01/2021

Run-time Performance Monitoring of Heterogenous Hw/Sw Platforms Using PAPI

In the era of Cyber Physical Systems, designers need to offer support fo...
research
10/25/2022

Modular Software for Real-Time Quantum Control Systems

Real-time control software and hardware is essential for operating quant...
research
06/03/2021

Dynamic Analysis of ARINC 653 RTOS with LLVM

Existing standards for airborne-embedded software systems impose a numbe...

Please sign up or login with your details

Forgot password? Click here to reset