Dynamic Analysis of ARINC 653 RTOS with LLVM

06/03/2021
by   Vitaly Cheptsov, et al.
0

Existing standards for airborne-embedded software systems impose a number of requirements applicable to the software development cycle of hard real-time operating systems found in modern aircraft. The measures taken are meant to reduce the risks of undesired consequences, but have strongly varying costs. Dynamic instrumentation and static analysis are common practices used to automatically find software defects, from strictly non-conforming code constructions to memory corruptions or invalid control flow. LLVM analyser and sanitizer infrastructure, while regularly applied to general-purpose software, originally was not thought to be introduced to heavily restricted environments. In this paper we discuss the specifics of airborne systems with regards to dynamic instrumentation and provide practical considerations to be taken into account for the effective use of general-purpose instrumentation tools. We bring a complete LLVM stack support to JetOS, a prospective onboard real-time operating system currently being developed at ISP RAS in collaboration with GosNIIAS. As an example, we port AddressSanitizer, MemorySanitizer, and UndefinedBehaviorSanitizer and provide the details against the caveats on all relevant sides: a sanitizer, a compiler, and an operating system. In addition we suggest uninvolved optimisations and enhancements to the runtimes to maximise the effects of the tools.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
04/24/2018

Toward a Better Understanding of How to Develop Software Under Stress - Drafting the Lines for Future Research

The software is often produced under significant time constraints. Our i...
research
07/10/2018

Parallel Architecture Hardware and General Purpose Operating System Co-design

Because most optimisations to achieve higher computational performance e...
research
10/25/2022

Functional Simulation of Real-Time Quantum Control Software

Modern quantum computers rely heavily on real-time control systems for o...
research
11/22/2021

Survey of Control-Flow Integrity Techniques for Embedded and Real-Time Embedded Systems

Computing systems, including real-time embedded systems, are becoming in...
research
01/25/2010

On the Design of an Optimal Multiprocessor Real-Time Scheduling Algorithm under Practical Considerations (Extended Version)

This research addresses the multiprocessor scheduling problem of hard re...
research
11/13/2015

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

We introduce a controlled concurrency framework, derived from the Owicki...
research
11/24/2017

Towards an executable semantics of automobile RTOS standard and its application to conformance verification

The automobile Real-Time Operating System (RTOS) is hard to design and i...

Please sign up or login with your details

Forgot password? Click here to reset