Eingebettete Systeme übernehmen komplexe Steuerungs- und Regelungsaufgaben für technische Systeme. Ihre Funktionalität wird durch das Zusammenspiel von Spezialhardware, Standardprozessoren, Peripherie und Software realisiert. Oft liegt der Schwerpunkt auf Hardware-Aspekten. Tatsächlich spielt der Softwareentwurf eine mindestens genauso wichtige Rolle beim Entwurf dieser Systeme. Hier setzt das Buch an und liefert einen guten Überblick über das Thema. Klassifikationen und Themen wie Nebenläufigkeit, Echtzeit und Echtzeitbetriebssysteme bilden die Grundlagen. Die Programmierung eingebetteter Systeme wird mit C++, Java sowie an den Beispielen von Esterel und Giotto erläutert. Ausgewählte Softwareentwurfstechniken wie Statecharts, hybride Systeme, UML und Hardware-Software Co-Design werden ausführlich vorgestellt. Eingebettete Systeme finden oft in sicherheitskritischen Bereichen Einsatz. Die Sicherung der Softwarequalität ist daher von zentraler Bedeutung und bildet einen weiteren wichtigen Teil des Buches.
Зміст
Einleitung.- Motivation.- Klassifikation, Charakteristika.- Anwendungen, Beispiele und Branchen.- Begriffsdefinitionen.- Besondere Herausforderungen.- Nebenläufige Systeme.- Echtzeit und Echtzeitbetriebssysteme.- Echtzeitsysteme.- Ereignissteuerung versus Zeitsteuerung.- Aufbau und Aufgaben von Betriebssystemen.- Scheduling.- Beispiele für Echtzeitbetriebssysteme.- Programmierung eingebetteter Systeme.- Der Einsatz von C++ für eingebettete Systeme.- Der Einsatz von Java für eingebettete Systeme.- Ereignisbasierter Ansatz am Beispiel Esterel.- Zeitgesteuerter Ansatz am Beispiel Giotto.- Softwareentwurf eingebetteter Systeme.- Statecharts.- Die Unified Modelling Language (UML).- Hybride Systeme und hybride Automaten.- Hardware Software Co-Design.- Sicherung der Softwarequalität eingebetteter Systeme.- Motivation und Begriffe.- Zuverlässigkeit, Verfügbarkeit, Sicherheit, Risiko.- Risikomanagement.- Qualitätsmodelle.-Softwaremetriken.- Testen.- Manuelle Prüftechniken.- Verifikation