Tools List
This page lists known tools that may be used to develop safety critical Rust code. The list is maintained by the subcommittee, and while we try to keep information up to date, this list is provided as is without any legal guarantees. Please get in touch with the tool authors and vendors before starting your project..
If you want to add or update the list, please open an issue on the safety-critical-rust-consortium repository, or on the Rust Zulip safety-critical-consortium channel.
Rust Tooling for use in Safety Critical Projects
Tool Categories
- Package Managers
- Compilers
- Static Analysis
- Formal Verification
- Test Runners
- Code Coverage
- Debuggers
- Profilers
- Requirements Traceability
Tracked standards
| Standard | Levels | Description |
|---|---|---|
| ISO 26262 | ASIL A ASIL B ASIL C ASIL D | Road vehicles - Functional safety |
| DO-178C | DAL E DAL D DAL C DAL B DAL A | Software Considerations in Airborne Systems and Equipment Certification |
| IEC 62304 | Class A Class B Class C | Medical device software - software life cycle processes |
| IEC 61508 | SIL 1 SIL 2 SIL 3 SIL 4 | Functional Safety of Electrical/Electronic/Programmable Electronic Safety-related Systems |
| EN 50128 | SIL 1 SIL 2 SIL 3 SIL 4 | Railway applications - Communication, signalling and processing systems - Software for railway control and protection systems |
Package Managers
Compilers
Open-source qualified Rust compiler toolchain for safety- and mission-critical systems
Details
Pre-qualified binaries and support are available with monthly/yearly subscriptions. Qualification kits are also available for an additional fee.
- ISO 26262 (up to ASIL D)
See TÜV SÜD certificate. For more information, contact Ferrous Systems GmbH.
- IEC 62304 (up to Class C)
See TÜV SÜD certificate. For more information, contact Ferrous Systems GmbH.
- IEC 61508 (up to SIL 4)
See TÜV SÜD certificate. For more information, contact Ferrous Systems GmbH.
AdaCore's Toolsuite for High-Assurance Rust Software; Includes stable toolchain for long-term development, long-term support, and qualification
Details
Contact AdaCore for costs and legalities related to qualification and support.
ISO 26262 ASIL D qualified Rust Compiler Development Platform for ARM based Stellar from STMicroelectronics and Infineon AURIX
Details
Contact HighTec for costs and legalities related to qualification and support.
Static Analysis
Tool to statically compute the worst-case execution time of each task.
Details
- ISO 26262 (up to ASIL D)
Part of the Generic Qualification Kit. For more information: https://www.absint.com/ait/qualification.htm
- DO-178C (up to DAL A)
Part of the Generic Qualification Kit. For more information: https://www.absint.com/ait/qualification.htm
- IEC 61508 (up to SIL 4)
Part of the Generic Qualification Kit. For more information: https://www.absint.com/ait/qualification.htm
- EN 50128 (up to SIL 4)
Part of the Generic Qualification Kit. For more information: https://www.absint.com/ait/qualification.htm
Clippy is a collection of lints to catch common mistakes and improve Rust code. It analyzes code for potential bugs, performance issues, style violations, and suggests more idiomatic Rust patterns.
Static analysis for C, C++, and soon to be Rust code
Details
Contact TrustInSoft for costs and legalities related to qualification and support.
Formal Verification
Creusot is a deductive verifier for Rust code. It verifies your code is safe from panics, overflows, and assertion failures. By adding annotations you can take it further and verify your code does the correct thing.
Kani is an open-source verification tool that uses model checking to analyze Rust programs. Kani is particularly useful for verifying unsafe code blocks in Rust, where the 'unsafe superpowers' are unchecked by the compiler.
VeriFast is a tool for modular formal verification of the absence of undefined behavior in Rust1 programs that use unsafe blocks and the soundness of Rust modules that use unsafe blocks.
Test Runners
Details
Contact Razorcat for costs and legalities related to qualification and support.
Qualified test runner and generator for safety-critical applications
Details
Contact Vector Software for costs and legalities related to qualification and support.
Code Coverage
Debuggers
Lauterbach‘s TRACE32® tools are a suite of leading-edge hardware and software components that enables you to analyze, optimize and certify all kinds of embedded systems.
Details
Contact Lauterbach for costs and legalities related to qualification and support.
UDE® Universal Debug Engine is the powerful development tool for debugging, tracing, and testing embedded software for a wide range of multicore SoCs and microcontrollers.
Details
Contact PLS for costs and legalities related to qualification and support.
Profilers
Requirements Traceability
Reqtify is a solution which allows implementing an End-To-End Traceability along the whole V-Cycle across very different types of document and data bases (by plugin connector).
Details
Contact Dassault Systèmes for costs and legalities related to qualification and support.
Sphinx Needs is a requirements management extension for Sphinx documentation that enables tracing and linking of requirements, specifications, test cases, and other project artifacts