Advertisement

Programmierung von Echtzeitsystemen mit hoher Zuverlässigkeit

  • Hubert B. Keller
Chapter

Zusammenfassung

Es folgt in Kap. 5 die Betrachtung der Voraussetzungen für eine Programmiersprache zur zuverlässigen Implementierung mithilfe adäquater Sprachelemente für Echtzeitanforderungen. Hierbei geht es um die verlässliche Realisierung von Algorithmen, die Modularisierung unter dem Aspekt des „information hiding“, die typstrenge Behandlung von Variablen, Referenzen und objektorientierten Strukturen. Der Einsatz von Sprachmitteln zur Definition nebenläufiger Strukturen und deren Kommunikation unter zeitlichen Randbedingungen sind weitere Aspekte. Die Behandlung von synchronen Ausnahmen wie die Division durch Null usw. ist durch eine Programmiersprache zu beherrschen. Konkrete Beispiele zeigen Defizite in existierenden Sprachen und mögliche Alternativen.

Literatur

  1. [Ada1983]
    ANSI/MIL-STD-1815A-19832005Google Scholar
  2. [Ada1995]
    ISO/IEC 8652:1995(E). International Standard for the programming language AdaGoogle Scholar
  3. [Ada2005]
    Ada 2005: Language Reference Manual. Springer, Heidelberg (2005)Google Scholar
  4. [Ada2012]
    Ada Reference Manual: ISO/IEC 8652:2012(E), Language and Standard Libraries. Springer, Heidelberg (2014)Google Scholar
  5. [AdaR2012]
    Ada 2012 Rationale. John Barnes. John Barnes Informatics. 11 Albert Road Caversham Reading RG4 7AN England.Google Scholar
  6. [AHI1999]
    Programming Languages – Guide for the Use of the Ada Programming Language in High Integrity Systems, ISO/IEC JTC1 /SC 22/WG 9 N 359r, 99-07-01, ISO/IEC DTR 15942, ISO/IEC JTC 1/SC22/WG9, Technical Report Type (1999)Google Scholar
  7. [Alb2011]
    Albers, A., Braun, A., Sadowski, E., Wynn, D.C., Wyatt, D.F., Clarkson, P.J.: System architecture modeling in a software tool based on the contact and channel approach (C&C-A). J. Mech. Des. 133, 101006-1 ff (2011)CrossRefGoogle Scholar
  8. [Ameos]
  9. [Bar2014]
    Barnes, J.: Programming in Ada 2012. Cambridge University Press, Cambridge (2014)CrossRefGoogle Scholar
  10. [Bar2015]
    Barnes, J.: Safe and Secure Software. An invitation to Ada 2012. www.adacore.com, 2013/2015. AdaCore, New York, USA.
  11. [Ben2009]
    Benra, J., Keller, H.B., Schiedermeier, G., Tempelmeier, T.: Synchronisation und Konsistenz in Echtzeitsystemen. In: Benra, J.T. (Hrsg.) Software-Entwicklung für Echtzeitsysteme, S. 49–65. Springer, Berlin (2009)CrossRefGoogle Scholar
  12. [Burn2003]
    Burns, A., Dobbing, B., Vardanega, T.: Guide for the use of the Ada Ravenscar Profile in high integrity systems. University of York, Technical Report YCS-2003-348, January 2003Google Scholar
  13. [Gan2012]
    Ganssle, J.: The Way ahead in Software Engineering. Slides of the Keynote. 18th International Conference on Reliable Software Technologies – Ada-Europe 2013, June 10–14, 2013, Berlin, Germany. http://www.ada-europe2013.org/prog/KN02JackGanssle.pdf. Abgerufen zuletzt am 29.10.2019.
  14. [Hut2002]
    Hatton, L.: Safer Language Subsets: An Overview and a Case History, MISRA C. Computing Laboratory, University of Kent at Canterbury (2002)Google Scholar
  15. [IEC1998]
    IEC 61508: Functional safety for electrical/electronic/programmable electronic safety-related systems. International Electrotechnical Comission (1998)Google Scholar
  16. [Kel2012]
    Keller, H.B.: Im Kampf gegen Cybercrime. Chemie&more, 6.2012Google Scholar
  17. [Loc2005]
    Joint Strike Fighter Air Vehicle, C++ Coding Standards for the System Devlopment and Demonstration Program, Document Number 2RDU00001 Rev C, Lockheed Martin Corporation, December 2005Google Scholar
  18. [Mat2003]
    Matthes, J., Keller, H.B., Heker, W.-D., Kersten, M., Fouda, C.: Zuverlässige Software durch den Einsatz von UML, MDA und der Programmiersprache Ada. In: Grimm, R., Keller, H.B., Rannenberg, K. (Hrsg.) Proceedings Informatik 2003. Mit Sicherheit Informatik. 29.09.–02.10.2003, Frankfurt a. M. Lecture Notes in Informatics (LNI), Volume P-36, Gesellschaft für Informatik (2003)Google Scholar
  19. [McC2015]
    McCormick, J.W., Chapin, P.C.: Building High Integhrity Applications with SPARK. Cambridge University Press, Cambridge (2015)CrossRefGoogle Scholar
  20. [Moy2019]
    Moy, Y.: SPARK Ada for the MISRA C Developer. 12.02.2019. 2018–2019. AdaCore, New York/ParisGoogle Scholar
  21. [Par1971]
    Parnas, D.L.: Information Distribution Aspects of Design Methodology. Technical Report, Department of Computer Science. Carnegie-Mellon University, Pittsburgh (1971)Google Scholar
  22. [PRG2004]
    The Programming Research Group: High Integrity C++ Coding Standard Manual, Version 2.2. Programming Research Inc., Boston (2004)Google Scholar
  23. [Rav2004]
    Guide for the use of the Ada Ravenscar Profile in high integrity systems. ISO/IEC JTC1/SC22/WG9 N 435, Draft for PDTR Approval Ballot, ISO/IEC TR 24718, 14.02.2004Google Scholar
  24. [Reu2008]
    Reussner, R.H., Hasselbring, W. (Hrsg.): Handbuch der Software-Architektur, 2., überarb. u. erw. Aufl. Dezember 2008, 575 Seiten, dpunkt, isbn:978-3-89864-559-1Google Scholar
  25. [Stei1982]
    Steinbuch, K., Rupprecht, W.: Nachrichtentechnik: Eine einführende Darstellung. Springer, Heidelberg (1982)CrossRefGoogle Scholar
  26. [Vul2012]
    Information Technology – Programming Languages – Guidance to Avoiding Vulnerabilities in Programming Languages through Language Selection and Use ISO/IEC TR 24772 Edition 2 (TR 24772 WG 23/N 0389), ISO/IEC JTC 1/SC 22/WG 23, ISO 2012Google Scholar
  27. [Wir1982]
    Wirth, N.: Programming in Modula 2. Springer, Heidelberg (1982)CrossRefGoogle Scholar

Copyright information

© Springer Fachmedien Wiesbaden GmbH, ein Teil von Springer Nature 2019

Authors and Affiliations

  • Hubert B. Keller
    • 1
  1. 1.Institut für Automation und angewandte Informatik (IAI)Karlsruher Institut für Technologie (KIT)KarlsruheDeutschland

Personalised recommendations