Saved in:
Bibliographic Details
Main Authors: Ishikawa-Aso, Takahiro, Yano, Atsushi, Azumi, Takuya, Kato, Shinpei
Format: Preprint
Published: 2025
Subjects:
Online Access:https://arxiv.org/abs/2505.06546
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866912368803446784
author Ishikawa-Aso, Takahiro
Yano, Atsushi
Azumi, Takuya
Kato, Shinpei
author_facet Ishikawa-Aso, Takahiro
Yano, Atsushi
Azumi, Takuya
Kato, Shinpei
contents Real-time scheduling in commoditized component-oriented real-time systems, such as ROS 2 systems on Linux, has been studied under nested scheduling: OS thread scheduling and middleware layer scheduling (e.g., ROS 2 Executor). However, by establishing a persistent one-to-one correspondence between callbacks and OS threads, we can ignore the middleware layer and directly apply OS scheduling parameters (e.g., scheduling policy, priority, and affinity) to individual callbacks. We propose a middleware model that enables this idea and implements CallbackIsolatedExecutor as a novel ROS 2 Executor. We demonstrate that the costs (user-kernel switches, context switches, and memory usage) of CallbackIsolatedExecutor remain lower than those of the MultiThreadedExecutor, regardless of the number of callbacks. Additionally, the cost of CallbackIsolatedExecutor relative to SingleThreadedExecutor stays within a fixed ratio (1.4x for inter-process and 5x for intra-process communication). Future ROS 2 real-time scheduling research can avoid nested scheduling, ignoring the existence of the middleware layer.
format Preprint
id arxiv_https___arxiv_org_abs_2505_06546
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle Work in Progress: Middleware-Transparent Callback Enforcement in Commoditized Component-Oriented Real-time Systems
Ishikawa-Aso, Takahiro
Yano, Atsushi
Azumi, Takuya
Kato, Shinpei
Operating Systems
Robotics
C.3; D.4.7
Real-time scheduling in commoditized component-oriented real-time systems, such as ROS 2 systems on Linux, has been studied under nested scheduling: OS thread scheduling and middleware layer scheduling (e.g., ROS 2 Executor). However, by establishing a persistent one-to-one correspondence between callbacks and OS threads, we can ignore the middleware layer and directly apply OS scheduling parameters (e.g., scheduling policy, priority, and affinity) to individual callbacks. We propose a middleware model that enables this idea and implements CallbackIsolatedExecutor as a novel ROS 2 Executor. We demonstrate that the costs (user-kernel switches, context switches, and memory usage) of CallbackIsolatedExecutor remain lower than those of the MultiThreadedExecutor, regardless of the number of callbacks. Additionally, the cost of CallbackIsolatedExecutor relative to SingleThreadedExecutor stays within a fixed ratio (1.4x for inter-process and 5x for intra-process communication). Future ROS 2 real-time scheduling research can avoid nested scheduling, ignoring the existence of the middleware layer.
title Work in Progress: Middleware-Transparent Callback Enforcement in Commoditized Component-Oriented Real-time Systems
topic Operating Systems
Robotics
C.3; D.4.7
url https://arxiv.org/abs/2505.06546