Advertisement

SWAN: Systemweite statische Laufzeitanalyse echtzeitfähiger Betriebssysteme

  • Simon Schuster
Conference paper
Part of the Informatik aktuell book series (INFORMAT)

Zusammenfassung

Aufgrund der zunehmenden Nutzung generisch implementierter Algorithmen innerhalb von Betriebssystemen ist dort für die statische Laufzeitanalyse von Systemoperationen anwendungs- und kontextspezifisches Wissen (bspw. die Zahl lauffähiger Prozesse) zur zeitlichen Beschränkung kontextabhängiger Vorgänge erforderlich. Gegenwärtige kontextinsensitive Laufzeitanalysen stoßen hier zunehmend an ihre Grenzen, da ihnen die notwendige Kenntnis der zugrundeliegenden Betriebssystemsemantik fehlt. Fehlschlagende Analysen oder übermäßig pessimistische obere Laufzeitschranken (WCET) sind die Folge. Swan, der in diesem Papier vorgestellte Ansatz zur systemweitenWCET-Analyse, bietet hier eine Möglichkeit, derartige Kontextinformationen zu sammeln und aus der Anwendungsdomäne über die Kernschnittstelle hinweg in die statische Laufzeitanalyse zu transportieren. Im Zentrum steht dabei platina, eine Annotationssprache auf Quelltextebene, welche es ermöglicht parametrisch die Kopplung dieser Kontextinformationen zu einzelnen Programmflüssen auszudrücken und durch alle Ebenen des Echtzeitsystems zu propagieren. Diese Kontextinformationen können genutzt werden, um die Überabschätzungen einzelner Betriebssystemoperationen deutlich, für die hier betrachtete Testanwendung einer Quadcoptersteuerung um über 40%, zu verbessern und dabei die Echtzeitfähigkeit auch eigentlich aufgrund ihrer generischen Implementierung nicht echtzeitfähiger Betriebssysteme für bestimmte Kontexte zuverlässig nachzuweisen.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Literaturverzeichnis

  1. 1.
    AbsInt. aiT Worst-Case Execution Time Analyzers. absint.com/ait (abgerufen am 02.07.2018).Google Scholar
  2. 2.
    S. Hepp; B. Huber; D. Prokesch und P. Puschner. The platin Tool Kit – The TCREST Approach for Compiler and WCET Integration. In: 18. Kolloquium Programmiersprachen und Grundlagen der Programmierung (KPS ’15), Seiten 277– 292 (2015).Google Scholar
  3. 3.
    J. M. Calandrino; H. Leontyev; A. Block; U. C. Devi und J. H. Anderson. LITMUSRT: A Testbed for Empirically Comparing Real-Time Multiprocessor Schedulers. In: Proceedings of the 27. International Real-Time Systems Symposium (RTSS ’06), Seiten 111–126 (2006).Google Scholar
  4. 4.
    B. Brandenburg. Scheduling and locking in multiprocessor real-time operating systems. Doktorarbeit, The University of North Carolina at Chapel Hill (2011).Google Scholar
  5. 5.
  6. 6.
    M. Lv; N. Guan; Y. Zhang; Q. Deng; G. Yu und J. Zhang. A survey of WCET analysis of real-time operating systems. In: Proceedings of the International Conference on Embedded Software and Systems (ICESS ’09), Seiten 65–72 (2009).Google Scholar
  7. 7.
    A. Colin und I. Puaut. Worst-case execution time analysis of the RTEMS real-time operating system. In: 13. Euromicro Conference on Real-Time Systems (ECRTS ’01), Seiten 191–198 (2001).Google Scholar
  8. 8.
    D. Sandell; A. Ermedahl; J. Gustafsson und B. Lisper. Static Timing Analysis of Real-Time Operating System Code. In: Leveraging Applications of Formal Methods, Lecture Notes in Computer Science, Seiten 146–160 (2004).Google Scholar
  9. 9.
    J. Schneider. Why you can’t analyze RTOSs without considering applications and vice versa. In: Proceedings of the 2. International Workshop on Worst-Case Execution Time Analysis (WCET ’02), Seiten 79–84 (2002).Google Scholar
  10. 10.
    J. Schneider. Combined schedulability and WCET analysis for real-time operating systems. Shaker (2003).Google Scholar
  11. 11.
    B. Blackham; Y. Shi; S. Chattopadhyay; A. Roychoudhury und G. Heiser. Timing analysis of a protected operating system kernel. In: Proceedings of the 32. Real- Time Systems Symposium (RTSS ’11), Seiten 339–348 (2011).Google Scholar
  12. 12.
    C. Dietrich; P. Wägemann; P. Ulbrich und D. Lohmann. SysWCET: Whole-System Response-Time Analysis for Fixed-Priority Real-Time Systems. In: Proceedings of the 23. Real-Time and Embedded Technology and Applications Symposium (RTAS ’17), Seiten 37–48 (2017).Google Scholar
  13. 13.
    S. Schuster; P. Wägemann; P. Ulbrich und W. Schröder-Preikschat. Towards System-Wide Timing Analysis of Real-Time–Capable Operating Systems. In: 30. Euromicro Conference on Real-Time Systems Work-in-Progress Session (ECRTS ’18 WiP) (2018).Google Scholar
  14. 14.
    B. Huber; D. Prokesch und P. Puschner. Combined WCET Analysis of Bitcode and Machine Code Using Control-flow Relation Graphs. In: 14. Conference on Languages, Compilers and Tools for Embedded Systems (LCTES ’13), Seiten 163– 172 (2013).Google Scholar
  15. 15.
    P. Puschner; D. Prokesch; B. Huber; J. Knoop; S. Hepp und G. Gebhard. The TCREST Approach of Compiler andWCET-Analysis Integration. In: Proceedings of the 9. Workshop on Software Technologies for Future Embedded and Ubiquitious Systems (SEUS ’13), Seiten 33–40 (2013).Google Scholar
  16. 16.
    M. Schoeberl; S. Abbaspour et al. T-CREST: Time-predictable Multi-Core Architecture for Embedded Systems. Journal of Systems Architecture, 61:449–471 (2015).CrossRefGoogle Scholar
  17. 17.
    S. Hepp; B. Huber; J. Knoop; D. Prokesch und P. Puschner. The Platin Tool Kit- The T-CREST Approach for Compiler and WCET Integration. In: 18. Kolloquium Programmiersprachen Und Grundlagen Der Programmierung (KPS’15) (2015).Google Scholar
  18. 18.
    P. Ulbrich; R. Kapitza; C. Harkort; R. Schmid und W. Schröder-Preikschat. I4Copter: An Adaptable and Modular Quadrotor Platform. In: 26. ACM Symp. on Applied Computing (SAC ’11), Seiten 380–396 (2011).Google Scholar

Copyright information

© Springer-Verlag GmbH Deutschland, ein Teil von Springer Nature 2018

Authors and Affiliations

  1. 1.Lehrstuhl für InformatikFriedrich-Alexander-Universität Erlangen-NürnbergErlangen-NürnbergDeutschland

Personalised recommendations