Litcius/Paper detail

Real-Time Scheduling and Analysis of Processing Chains on Multi-threaded Executor in ROS 2

Xu Jiang, Dong Ji, Nan Guan, Ruoxiang Li, Yue Tang, Wang Yi

202235 citationsDOI

Abstract

ROS (Robot Operating System) is currently one of the most popular development frameworks for robotic software, which is usually subject to hard real-time constraints in safe-critical domains. Designers must formally model and analyze its timing behaviors to guarantee that real-time constraints are always honored at run-time. This paper studies real-time scheduling and analysis under a multi-threaded executor in ROS 2. We present a formal description of the scheduling model of multi-threaded executors, and develop response time analysis techniques for processing chains executing on it. Moreover, we identify a risk of increasing the response time of chains that may be caused by improper design when deploying systems on multi-threaded executors, which provides a useful guidance to designers. We conduct experiments with both randomly generated workloads and case studies on a realistic ROS 2 platform to evaluate and demonstrate our results.

Topics & Concepts

ExecutorComputer scienceScheduling (production processes)Distributed computingThread (computing)Embedded systemSoftwareResponse timeReal-time computingOperating systemEngineeringOperations managementLawPolitical scienceReal-Time Systems SchedulingEmbedded Systems Design TechniquesFormal Methods in Verification
Real-Time Scheduling and Analysis of Processing Chains on Multi-threaded Executor in ROS 2 | Litcius