RTEMS Qualification Data Package for safety-critical space missions
The RTEMS real-time operating system has been established in industry and especially spaceflight for decades.
With this year's introduction of the RTEMS Qualification Data Package, embedded brains is now taking a further step towards safety-critical space projects. This makes RTEMS the first real-time operating system that is suitable for multicore operation, open source and safety qualified at the same time.
The Qualification Data Package contains a detailed functional specification with associated validation tests. These are executed on the customer's hardware, the test results are directly evaluated and recorded in a document. The result is a high level of security, with the certainty that the operating system will function properly. The test report also contains performance data that can be used to estimate the expected runtime characteristics of the application.
What is RTEMS?
RTEMS is a professional Open Source ‘hard’ real-time OS with high flexibility. It has minimal resource demands and provides maximum performance, particularly on small and medium-size systems. It is available for a broad range of processors and provides all common interfaces and drivers for embedded systems. Originally designed more than 25 years ago for military applications the single-core version, it was enhanced with an SMP multi-core version in 2015.
- Code transparency
- Independent in use
- ECSS Space qualified (Cat.C, tailored Cat.B)
- Automated Test Suite
- 100% code and branch coverage
- Continuously developed for over 30 years
- Broad range of BSPs, interfaces and drivers
- Used in various industries
- Symmetrical Multiprocessing (SMP) using 2 to 24 cores
- High performance
- OS operating with less than 100KB of memory+
Why QDP? A case study
Suppose you are starting a project for the European Space Agency (ESA) with RTEMS being chosen as the OS platform. Usually ESA requires the software development to be compliant with ECSS standards (ECSS-E-ST-40C and ECSS-Q-ST-80C Rev.1). From the ECSS point of view, RTEMS is a reusable software component in your software development. The QDP contains a set of documents which show that the RTEMS feature set of the QDP was developed according to ECSS software development standards and has been verified on your hardware to be fit for use in criticality category D, C or B (without ISVV). The ECSS software development standards contain requirements also present in IEC 61508, ISO 26262, DO-178, DO-330, DO-333, and the Galileo Software Standard (GSWS).
In projects unrelated to ESA, ECCS conformity is normally not required. QDPs are yet very valuable for such projects. The QDPs contain a detailed functional specification with associated validation tests. The tests will execute on your hardware with the test results getting evaluated and reported in a document. This will provide you a high degree of confidence that the operating system works flawlessly. The test report contains performance data which can be used to estimate the expected runtime characteristics of the application.
What do QDPs include?
The QDPs are a complete Software Development Kit (SDK) tailored for your specific hardware. The key element is a set of ECSS-specific documents such as:
- Software Requirements Specification (SRS)
- Interface Control Document (ICD)
- Software Verification Report (SVR)
- Software Product Assurance Milestone Report (SPAMR)
- Software Validation Specification (SVS)
- Software Validation Report
The validation tests are run on your target hardware and the validation report is generated from the obtained test results. The QDPs contain the source code of all components (including the cross-compiler) required to develop applications using RTEMS on your target hardware. The tools and the deployed RTEMS for your hardware are provided as a binary distribution. Documentation for RTEMS and example programs are included to help you getting started with your application development.
RTEMS qualification services
- Qualification Data Packages (QDPs) for various architectures, SoCs, Modules and On-Board Computers (OBC)
- Extensions of Qualification Data Packages (QDPs)
-POSIX API (mutex, semaphore, condition variables, threads, message queue)
-Device Drivers (e.g., CAN, SpaceWire, MIL-STD-1553)
-Event recording and Eclipse Trace Compass
- Qualification Support for application software
-Preparation of ECSS Documents
- Independent Software Verification and Validation (ISVV). Required for ECSS Cat. B and Cat. A qualification
Tailored QDPs and their benefits for customers
- QDPs are adapted to customer requirements
- Source synchronisation with rtems community in RTEMS Community git repo
- Customer specific improvements and extensions
- RTEMS code bug tracking
- Gnu Toolchain bug tracking
- Long term maintenance
- Fast Development / Qualification Cycle