Aspektorientierte Echtzeitsystemarchitekturen
Zusammenfassung der Projektergebnisse
Ziel des Vorhabens (AORTA) war die Erforschung von Möglichkeiten und Grenzen der Konfigurierbarkeit einer Echtzeitsystemarchitektur und, basierend darauf, anderer nicht-funktionaler Systemeigenschaften (insb. Verlässlichkeit, Energiebedarf und Rechtzeitigkeit). Darüber hinaus wurde untersucht, wie die Konfigurierbarkeit durch eine kanonische Systemschnittstelle, welche eine explizite Notation der für ein Echtzeitsystem relevanten Abhängigkeiten zwischen gleichzeitigen Aufgaben ermöglicht, gezielt unterstützt werden kann. Auf Basis dieser Schnittstelle sollte die Konfigurierung in Abhängigkeit vom jeweiligen Anwendungsfall automatisiert erfolgen. Angestrebt war ein generischer Ansatz, der über eine bloße Migration ereignisgesteuerter auf zeitgesteuerte Systeme hinausgeht. Im Fokus des Projekts lag die Verbesserung der Vorhersagbarkeit von dynamischen, gemischtkritischen Echtzeitsystemen durch die Extraktion kritischer Pfade, deren Transformation in statische Äquivalente sowie einer zeitgesteuerten Ausführung. Da diese im Vergleich mit der ereignisgesteuerten Ablaufplanung jedoch zu einer schlechten Auslastung von Prozessoren und Peripheriegeräten und damit zur Ineffizienz neigt, wurde das grundsätzlich optimistische Ausführungsmodell gemischt-kritischer Echtzeitsysteme beibehalten und nur im Notfall eine Umschaltung in den statischen Ablauf durchgeführt. Damit einhergehend erfolgte die Generalisierung von AORTA auf dynamische Echtzeitsystemarchitekturen, hier insbesondere auf gemischt-kritische Systeme mit komplexen Abhängigkeitsmustern. Untersuchungsgegenstand der Arbeiten waren echtzeitfähige Betriebssystemvarianten (dOSEK, LITMUSRT, PREEMPT_RT), sowie die Domäne der Steuerungsund Regelungsanwendungen inklusive der hierfür notwendigen Signal- und Bilderverarbeitung. Um der gemischt-kritischen Natur der betrachteten Systeme Rechnung zu tragen, wurden Mechanismen und konstruktive Ansätze erforscht, um die Analysierbarkeit der kritischen Komponenten im Kontext des Gesamtsystems zu verbessern. Für die Ablaufplanung wurden Migrationspunkte systematisch zur Reduktion der damit verbundenen Verwaltungsgemeinkosten gewählt. Ferner wurde Wissen über den physikalischen Zustand von Echtzeitregelsystemen in Betracht gezogen, um die Dringlichkeit der dazugehörigen Aufträge von ihren zeitlichen Eigenschaften zu entkoppeln. Zur Verbesserung der Vorhersagbarkeit bei der Zuteilung von Betriebsmitteln wurde auf neuartige Mechanismen zur Betriebsmittelvergabe gesetzt: Einerseits wurden günstige Migrationspunkte zur statischen Ablaufplanung identifiziert und zur Erhöhung der Cachelokalität eingesetzt, andererseits wurde a priori -Wissen verwendet, um die Vorhersagbarkeit kritischerer Komponenten durch Einsatz maßgeschneiderter Hardware zu erhöhen. Durch zielgerichtete Dekomposition des gemischtkritikalen Systems in deterministische Ausführungseinheiten mit maßgeschneidert generierten, deterministischen und vorhersagbaren Kommunikationskanälen einerseits und unkritischen Aufgaben mit weichen Echtzeitanforderungen auf leistungsorientierten Prozessoren andererseits konnte die Vorhersagbarkeit einzelner Kommunikationsvorgänge im System optimiert werden. Die Evaluation der erarbeiteten Konzepte und Techniken erfolgte zum einen auf Basis automatisch erzeugter, synthetischer Testsysteme. Hierfür wurden Evaluationssysteme für kleinere eingebettete Systeme (dOSEK) wie auch komplexere Szenarien mit Echtzeit-Linux (LITMUSRT, PREEMPT_RT) umgesetzt. Zum anderen stand auch die praktische Evaluation und Vermessung entsprechender Systeme im Fokus. Hierzu wurden verschiedene, auf bestimmte Evaluationsszenarien spezialisierte, Demonstratoren für sicherheitskritische Echtzeitregelsysteme entwickelt, insbesondere Teststände für unbenannte Luftfahrzeuge (Crazyflie).
Projektbezogene Publikationen (Auswahl)
- Benchmark generation for timing analysis. In Proceedings of the 23rd IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS ’17), pages 319–330, 2017
P. Wägemann, T. Distler, C. Eichler, and W. Schröder-Preikschat
(Siehe online unter https://doi.org/10.1109/RTAS.2017.6) - Demystifying soft-error mitigation by control-flow checking—a new perspective on its effectiveness. ACM Transactions on Embedded Computing Systems, 16(5s):1–19, 2017
S. Schuster, P. Ulbrich, I. Stilkerich, C. Dietrich, and W. Schröder-Preikschat
(Siehe online unter https://doi.org/10.1145/3126503) - SysWCET: Whole-System Response-Time Analysis for Fixed-Priority Real-Time Systems (outstanding paper). In Proceedings of the 23rd Real-Time and Embedded Technology and Applications Symposium (RTAS ’17), pages 37–48, 2017
C. Dietrich, P. Wägemann, P. Ulbrich, and D. Lohmann
(Siehe online unter https://doi.org/10.1109/RTAS.2017.37) - Application-specific tailoring of multi-core SoCs for real-time systems with diverse predictability demands. Journal of Signal Processing Systems, 91(7):773–786, 2019
S. Vaas, P. Ulbrich, M. Reichenbach, and D. Fey
(Siehe online unter https://doi.org/10.1007/s11265-018-1389-0) - Combining automated measurement-based cost modeling with static worst-case execution-time and energy-consumption analyses. IEEE Embedded Systems Letters, 11(2):38– 41, 2019
V. Sieh, R. Burlacu, T. Hönig, H. Janker, P. Raffeck, P. Wägemann, and W. Schröder- Preikschat
(Siehe online unter https://doi.org/10.1109/LES.2018.2868823) - Proving real-time capability of generic operating systems by system-aware timing analysis. In Proceedings of the 25th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS ’19), pages 313–330, 2019
S. Schuster, P. Wägemann, P. Ulbrich, and W. Schröder-Preikschat
(Siehe online unter https://doi.org/10.1109/RTAS.2019.00034) - Annotate once — analyze anywhere: Context-aware WCET analysis by user-defined abstractions. In Proceedings of the 22nd ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, Tools and Theory for Embedded Systems (LCTES ’21), pages 54–66, 2021
S. Schuster, P. Wägemann, P. Ulbrich, and W. Schröder-Preikschat
(Siehe online unter https://doi.org/10.1145/3461648.3463847) - Constrained data-age with joblevel dependencies: How to reconcile tight bounds and overheads. In Proceedings of the 27th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS ’21), pages 66–79, 2021 [Best Student Paper Award]
T. Klaus, M. Becker, W. Schröder-Preikschat, and P. Ulbrich
(Siehe online unter https://doi.org/10.1109/RTAS52030.2021.00014)