Ariel OS: An Embedded Rust Operating System for Networked Sensors & Multi-Core Microcontrollers
Fuente:
arXiv
Salvato in:
| Autori principali: | , , , , , |
|---|---|
| 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 |