Ariel OS: An Embedded Rust Operating System for Networked Sensors & Multi-Core Microcontrollers

Fuente: arXiv
Salvato in:
Dettagli Bibliografici
Autori principali: Frank, Elena, Schleiser, Kaspar, Fouquet, Romain, Zandberg, Koen, Amsüss, Christian, Baccelli, Emmanuel
Natura: Preprint
Pubblicazione: 2025
Soggetti:
Accesso online:
Tags: Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
_version_ 1866909817215385600
author Frank, Elena
Schleiser, Kaspar
Fouquet, Romain
Zandberg, Koen
Amsüss, Christian
Baccelli, Emmanuel
author_facet Frank, Elena
Schleiser, Kaspar
Fouquet, Romain
Zandberg, Koen
Amsüss, Christian
Baccelli, Emmanuel
contents Large swaths of low-level system software building blocks originally implemented in C/C++ are currently being swapped for equivalent rewrites in Rust, a relatively more secure and dependable programming language. So far, however, no embedded OS in Rust supports multicore preemptive scheduling on microcontrollers. In this paper, we thus fill this gap with a new operating system: Ariel OS. We describe its design, we provide the source code of its implementation, and we perform micro-benchmarks on the main 32-bit microcontroller architectures: ARM Cortex-M, RISC-V and Espressif Xtensa. We show how our scheduler takes advantage of several cores, while incurring only small overhead on single-core hardware. As such, Ariel OS provides a convenient embedded software platform for small networked devices, for both research and industry practitioners.
format Preprint
id arxiv_https___arxiv_org_abs_2504_19662
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle Ariel OS: An Embedded Rust Operating System for Networked Sensors & Multi-Core Microcontrollers
Frank, Elena
Schleiser, Kaspar
Fouquet, Romain
Zandberg, Koen
Amsüss, Christian
Baccelli, Emmanuel
Operating Systems
Large swaths of low-level system software building blocks originally implemented in C/C++ are currently being swapped for equivalent rewrites in Rust, a relatively more secure and dependable programming language. So far, however, no embedded OS in Rust supports multicore preemptive scheduling on microcontrollers. In this paper, we thus fill this gap with a new operating system: Ariel OS. We describe its design, we provide the source code of its implementation, and we perform micro-benchmarks on the main 32-bit microcontroller architectures: ARM Cortex-M, RISC-V and Espressif Xtensa. We show how our scheduler takes advantage of several cores, while incurring only small overhead on single-core hardware. As such, Ariel OS provides a convenient embedded software platform for small networked devices, for both research and industry practitioners.
title Ariel OS: An Embedded Rust Operating System for Networked Sensors & Multi-Core Microcontrollers
topic Operating Systems
url https://arxiv.org/abs/2504.19662