SDL Real-time Tasks - Concept, Implementation, and Evaluation

D. Christmann, T. Braun, R. Gotzhein

In: Ferhat Khendek, Maria Toeroe, Abdelouahed Gherbi, Rick Reed (Eds.): SDL 2013: Model-Driven Dependability Engineering - 16th International SDL Forum, Montreal, Canada, June 26-28, 2013. Proceedings. Springer 2013, 239-257


Real-time tasks are a concept used in real-time systems to structure and schedule execution, in order to handle load situations, and to meet deadlines. In previous work, we have transferred this concept to the Specification and Description Language (SDL), by incorporating the notion of real-time task into SDL’s formal syntax and semantics. More specifically, we have defined an SDL real-time task as a set of transition executions, which may span different SDL processes and are ordered by a strict partial order with a least element. In this paper, we extend this concept by the notion of distributed real-time task, which may span SDL processes of different SDL systems, thereby supporting tasks executed on several nodes. In addition, we introduce the notion of task types, which support task multiplexing in SDL processes. We then outline our implementation of real-time tasks in our SDL tool chain, consisting of the SDL transpiler ConTraST, the SDL Runtime Environment (SdlRE), and the SDL Environment Framework (SEnF). To evaluate the gain in real-time performance, we have devised an SDL specification of an Adaptive Cruise Controller taken from the automotive domain, and have executed it on an Imote2 hardware platform. The results clearly show that task-based scheduling outperforms ordinary and priority-based scheduling in terms of processing delays and reaction times to critical events.


Go to the contact details of the person in charge of this page

This page in german. Diese Seite auf deutsch.