Skip to main content

Crustacea in space - co-operative RUST and C embedded applications in space - theory and practice

Running

Running

Organisational Unit
Implementation progress
0%
21 December 2022

Duration: 18 months

Objective

Rust provides a rich set of inherent language features like type safety, memory safety, threading and dependency management that make it a good candidate for implementing critical software applications. The Institute for Software Technology of the German Aerospace Center (DLR) proposes an Early Tech project which evaluates the theoretical and practical implications of the Rust programming language for on-board software development. Our focus will be on the dependability according to the objectives defined in ECSS-E-ST-40C and ECSS-Q-ST-80C. We will evaluate the quality aspects on a simple prototype implementation in order to demonstrate the impact on an existing code base. We plan to implement a representative set of functions in Rust for a common on-board software task (e.g. AOCS or CDH). We compare the Rust implementation with common C programming paradigms in terms of e.g. type safety, memory safety, developer friendliness and ease of integration with existing C code. On-board software runs on embedded real-time targets. RTEMS is a widely used RTOS in the European space industry. Our plan is to submit our changes to RTEMS as patches to provide a starting point for further developments. Evaluation of software assurance activities necessary for on-board software development in the context of Rust is an essential part of this proposal. We will focus on three key aspects: First, streamlining and automation of the development process that would help to lower the development effort and allow higher flexibility of the software life-cycle. Second, the functional safety aspects of Rust and its relation to the quality standards. Last, we will apply the test automation solutions for the V&V in terms of tooling and available frameworks. The results of this Early Tech project will be a set of recommendations for the introduction of Rust in future on-board software development activities.

Contract number
4000140242
Programme
OSIP Idea Id
I-2022-01162
Related OSIP Campaign
New concepts for onboard software development
Main application area
Generic for multiple space applications
Budget
174639€
CRUSTACEA IN - SPACE - CO-OPERATIVE RUST AND C EMBEDDED APPLICATIONS IN SPACE - THEORY AND PRACTICE