Work in Progress: Middleware-Transparent Callback Enforcement in Commoditized Component-Oriented Real-time Systems

📅 2025-05-10
📈 Citations: 0
Influential: 0
📄 PDF
🤖 AI Summary
To address the high scheduling overhead caused by nested scheduling (OS threads + middleware Executors) in commercial real-time systems such as ROS 2, this paper proposes a lightweight, real-time scheduling paradigm—“one-to-one binding of callbacks to OS threads”—which bypasses the middleware scheduling layer and enables native OS-level scheduling control at the callback granularity. Our key contributions are: (1) the first middleware-transparent callback scheduling model, eliminating nested scheduling complexity; and (2) CallbackIsolatedExecutor, a novel executor that supports direct configuration of kernel-level parameters—including SCHED_FIFO, priority, and CPU affinity. Experimental results show that, compared to MultiThreadedExecutor, our approach significantly reduces context switches, user-to-kernel transitions, and memory overhead. Against SingleThreadedExecutor, inter-process and intra-process communication latencies remain consistently at 1.4× and 5×, respectively—achieving a balanced trade-off between real-time determinism and schedulability control.

Technology Category

Application Category

📝 Abstract
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.
Problem

Research questions and friction points this paper is trying to address.

Enforcing direct OS scheduling on callbacks in real-time systems
Reducing middleware layer costs in component-oriented systems
Avoiding nested scheduling in ROS 2 real-time research
Innovation

Methods, ideas, or system contributions that make the work stand out.

Persistent one-to-one callback-OS thread mapping
Middleware-transparent OS scheduling parameter application
CallbackIsolatedExecutor with lower overheads
🔎 Similar Papers
No similar papers found.
💼 Related Jobs
No related jobs found.
T
Takahiro Ishikawa-Aso
The University of Tokyo, Japan and TIER IV Incorporated, Japan
A
Atsushi Yano
Saitama University, Japan and TIER IV Incorporated, Japan
T
Takuya Azumi
Saitama University, Japan
S
Shinpei Kato
The University of Tokyo, Japan