The use of embedded systems grows at an immense rate with 3 billion+ Cortex-M ARM chips shipped! However, someone has to write the programs that run on all these chips, where the trifecta of safety, performance and ergonomics comes as a wish, while in many applications an MCU hanging or crashing is simply not allowed. Currently the embedded Rust ecosystem provides the necessary foundational crates, but lacks the ergonomics and safe utilization of resources.
This talk aims to show that with Rust and the Real-Time Interrupt-driven Concurrency scheduler we get this trifecta, with how resources, memory safety, deadlock free and data-race free execution that can be guaranteed at compile time, no defining of thread stacks, and keeping the generated binary minimal without losing expressiveness! All built on a sound theoretical foundation of Stack Resource Policy.
ARM has shipped 100+ billion cores - let’s build the next 100+ billion on a strong foundation, ease of use and safe programs!