Ensuring software reliability in embedded systems is a critical challenge, particularly in safety-critical applications such as automotive. This thesis explores the static verification of a CAN driver implemented in Rust for a certified microcontroller. Rust is increasingly recognized as a safer alternative to traditional languages like C and C++, offering memory safety and concurrency guarantees through strict compile-time checks. The study focuses on the structural analysis of the CAN driver, leveraging Rust’s type system and static verification techniques to detect potential errors before execution. The research also introduces Rustflow, a custom-built tool designed to analyze function call flows and register accesses within Rust-based embedded software. By integrating Rustflow into the development workflow, it becomes possible to enhance the verification process, ensuring compliance with functional safety standards. The results of this work demonstrate that Rust's safety features, combined with static analysis methodologies, can significantly improve the reliability of embedded software.

STATIC VERIFICATION OF A CAN DRIVER

ALBIERO, DAVIDE
2024/2025

Abstract

Ensuring software reliability in embedded systems is a critical challenge, particularly in safety-critical applications such as automotive. This thesis explores the static verification of a CAN driver implemented in Rust for a certified microcontroller. Rust is increasingly recognized as a safer alternative to traditional languages like C and C++, offering memory safety and concurrency guarantees through strict compile-time checks. The study focuses on the structural analysis of the CAN driver, leveraging Rust’s type system and static verification techniques to detect potential errors before execution. The research also introduces Rustflow, a custom-built tool designed to analyze function call flows and register accesses within Rust-based embedded software. By integrating Rustflow into the development workflow, it becomes possible to enhance the verification process, ensuring compliance with functional safety standards. The results of this work demonstrate that Rust's safety features, combined with static analysis methodologies, can significantly improve the reliability of embedded software.
2024
STATIC VERIFICATION OF A CAN DRIVER
SOFTWARE VERIFICATIO
SAFETY
CAN DRIVER
CERTIFIED BOARD
RUST
File in questo prodotto:
File Dimensione Formato  
thesis.pdf

Accesso riservato

Dimensione 1.39 MB
Formato Adobe PDF
1.39 MB Adobe PDF

The text of this website © Università degli studi di Padova. Full Text are published under a non-exclusive license. Metadata are under a CC0 License

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/20.500.12608/84814