Porting A Real-Time Operating System for Embedded IoT Devices to Linux as Part of the OpenSwarm Project
The Horizon Europe OpenSwarm project develops the next generation swarm devices; those are deeply embedded and use real-time operating systems. These real-time operating systems fulfill strong real-time requirements needed by protocol stacks. However, as the OpenSwarm use cases are complex, development cycles become longer and more costly, and application developers require better tools to increase productivity. This paper introduces the port of μC/OS-II to Linux, enabling quick prototyping of RTOS applications on a controlled environment without the need to continuously reflash microcontrollers to test and debug. Additionally, it allows applications to leverage existing tools in a Linux environment. We present an improved interrupt context switch implementation than the default port, ensuring that interrupts on Linux run to completion, mimicking bare metal behavior. Moreover, we measure the interrupt response, recovery and context switch latencies for both bare metal and Linux version of μC/OS-II. The worst-case time for context switch on Linux is 396.5 μs, the mean value is 391.1 μs with a standard deviation of 4.68 μs.
Authors
- Thomas Watteyne (ORCID: https://orcid.org/0000-0002-3695-9315)
- D. O’Sullivan (ORCID: https://orcid.org/0000-0003-0893-7300)
- Luiz Sampaio
- Kate O'Riordan
- Brian Coffey
Institutions
- Institut national de recherche en sciences et technologies du numérique (FR)
- Analog Devices (Ireland) (IE)
Publication Details
- Published
- 2025-03-30
- DOI
- https://doi.org/10.1145/3721889.3721922
- Primary Topic
- Real-Time Systems Scheduling
- Type
- article
- Field-Weighted Citation Impact
- 0.00