Echtzeitsystemtechnik

Slides:



Advertisements
Ähnliche Präsentationen
Messen Sie jede auftretende Störung
Advertisements

Integrations- und Funktionstests im Rahmen des V-Modelles
Programmieren im Großen von Markus Schmidt und Benno Kröger.
Kapitel 11 Deadlocks RW-Systemarchitekur Kap. 11.
RM Optimalität RM ist bzgl. Zulässigkeit optimal unter den präemptiven Scheduling-Verfahren mit festen Prioritäten. D.h. gibt es einen zulässigen Plan,
7.3 Scheduling Zur Erinnerung:
Universität Rostock Fakultät für Informatik und Elektrotechnik Institut für Informatik, Lehrstuhl DBIS Albert-Einstein-Straße 21, D Rostock Putbus,
PC-Cluster.
Agiles Software- Projektmanagement mit XP Dipl.-Ing. F. Papenfuß Prof. Dr. H. Pfüller Universität Rostock.
Institut MD Universität Rostock Real-Time Linux Szenario –Board, liest (sampled) analoge Daten –produziert 8 Bit Ergebnis und gibt dieses alle 100 ms aus.
Replikationsarchitekturen Informationsverwaltung von Netzen Sommersemester 2003 Konrad Kretschmer
4 Verteilte Algorithmen
Objektorientierter Entwurf
Seminar Software-Engineering für softwareintensive Systeme
Sequenzdiagramm.
Seite 1 BA Stuttgart, Studiengang Elektrotechnik, 5. HJ, Vorlesung: Realzeitsysteme Aug 2008 Das zeitliche Verhalten periodisch auszuführender Aktionen.
On a Buzzword: Hierachical Structure David Parnas.
Systeme 1 Kapitel 5.1 Unix Scheduling WS 2009/101.
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Was ist Refactoring? Bevor man die Integration angeht, mag es angebracht sein, den.
Beispiel: Wasserfallmodell als einfaches Phasenmodell
Computerkurs: Quantitative Auswertung biochemischer Experimente Tag 8 Einführung in die numerische Integration Aufgabe 18: Simulation einer Assoziationskinetik.
OpenMP Präsentation im Rahmen des Seminars
Technik Gestaltung Navigation Daten. Übersicht Client Webbrowser InternetServer.
Institut für Angewandte Mikroelektronik und Datentechnik Fachbereich Elektrotechnik und Informationstechnik, Universität Rostock Programmierung eingebetteter.
Universität Paderborn - Softwaretechnikpraktikum im SS Gruppe 11 1 Softwaretechnikpraktikum im SS2001 Projektleiter:Prof. Dr. Wilhelm Schäfer Gruppenleiter:Dr.
Access 2000 Datenbanken.
1 WS 2012 Software-Engineering II Aspektorientierung.
-LABORPRAKTIKUM- SOMMERSEMESTER 2005
Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro.
Universeller Sequenzer für das CS Framework Inhalt 1.Zielsetzung 2.Anforderungen 3.Die Sequenzer-Klassenbibliothek.
Diplomarbeit Thema: Untersuchungen zur Spezifikation und Realisierung von Interoperabilitätskonzepten (hauptsächlich) CORBA-basierter Multiagentensysteme.
4. Echtzeitaspekte der Software
Evaluierung des ITU-T.124 Telekonferenzstandards
Entwicklung verteilter eingebetteter Systeme - Einführung
Vorgehensmodelle: Schwergewichtige Modelle
Externe Bewertung in IB-Biologie
Das Pflichtenheft Dipl.- Ing. Dipl.-Informatiker Dieter Klapproth
grundlagen der Wirtschafts- informatik
Das Redaktionssystem der APA
Objektorientierte Programmierung
Programmierung paralleler Algorithmen mit MPI
Echtzeit-Systeme. Systeme zur unmittelbaren Steuerung und Abwicklung von Prozessen, welche dafür an sie gestellte quantitative Echtzeitanforderungen erfüllen.
Unified Modeling Language Repetition / Einführung zu UML
Welchen Problemen ist man bei heterogener, verteilter Programmierung ausgesetzt? Hardware: nicht einheitliche, inkompatible Systeme, verschiedene Leistungsfähigkeit.
UML-Kurzüberblick Peter Brusten.
Paradigmenwechsel in der Unternehmensmodellierung Prof. Dr. Wolfgang Voigt Dipl.-Ing. Päd. Alexander Huwaldt UML Extrakt UML Seminar, Chemnitz
PRO:CONTROL Ziel des Moduls Arbeitspakete
Rechnersysteme: Halbzeit Marcel Waldvogel. Marcel Waldvogel, IBM Zurich Research Laboratory, Universität Konstanz, , 2 Daten und Information.
Systemsoftware und Betriebssysteme
Arbeitsbereich „Rechnernetze und verteilte Systeme“
WIR LÖSEN DAS PROBLEM FÜR SIE
Software Engineering Grundlagen
Grundlagen, Prinzipien und Aufgaben eines Betriebssystems
„Kein Unternehmen besitzt so viel Zeit und Mittel zum Lernen aus eigenen Fehlern” James Harrington.
Helpdesk-Systeme Maximilian Wildt, Andreas Markowitsch.
Directors Prof. Dr.-Ing. K.D. Müller-Glaser Prof. Dr.-Ing. J. Becker Prof. Dr. rer. nat. W. Stork Institute for Information Processing Technology.
Technische Universität München Zentralübung Automotive Software Engineering – Übungsblatt 6.
7.2.4 Klassifikation mobilen Codes Nicht vergessen:  Sowohl das Fernkopieren als auch die Migration von Objekten setzt voraus, daß der Code entweder am.
Vortrag - Diplomarbeiten (HS I)
2.3 Implementierung von Prozessen
OOSE nach Jacobson Sebastian Pohl/ST7 Betreuer: Prof. Dr. Kahlbrandt.
-LABORPRAKTIKUM- SOMMERSEMESTER 2005
ISIS Die Informationsplattform der Saarländischen Universitäts- und Landesbibliothek (SULB)
Middleware in Java vieweg 2005 © Steffen Heinzl, Markus Mathes Kapitel 1: Architektur verteilter Systeme.
Vs41 4 Verteilte Algorithmen. vs42 Prozesse als Systemkomponenten:  Spezifikation eines Prozesses ? (Vgl. Spezifikation eines ADT) syntaktisch:z.B. Ports.
Dieser Vortrag wird gesponsort von:
SS 2015 – IBB4C Datenmanagement Fr 17:00 – 18:30 R Vorlesung #1 Datenmanagement.
Dell Lösungsentwürfe Vertraulich – nur zur Verwendung durch Dell Channel-Partner Der Dell Vorteil Dell Lösungsentwurf für Microsoft ® UC&C Umfassende,
Mönchengladbach Tchibo Filial-Manager Erste Ideen.
 Präsentation transkript:

Echtzeitsystemtechnik Echtzeitrechentechnik verteilte Systeme, eingebettet und verlässlich H. Pfüller, Universität Rostock, Institut für Angewandte Mikroelektronik und Datentechnik

Echtzeit - Fahrplan Klassisch Aktuell: Rechtzeitig oder „schnell“ Ablaufsteuerung (Scheduling) Nebenläufig Aktuell: Große Systeme: Komplexität Verteiltheit, transparente Kommunikation Verlässlichkeit Unterstützung für Entwurf Eingebettete Rechner H. Pfüller, Universität Rostock, Institut für Angewandte Mikroelektronik und Datentechnik

Was ist ein Echtzeitsystem? Informationsverarbeitungssystem, das auf extern entstandene Eingangssignale innerhalb einer spezifizierten Zeitdauer reagiert haben muss. Die Korrektheit hängt nicht nur vom logischen Ergebnis ab, sondern auch vom Zeitpunkt, zu dem das Ergebnis geliefert wird. Eine zu späte Antwort ist genau so schlecht wie eine falsche Antwort. (nach Burns) H. Pfüller, Universität Rostock, Institut für Angewandte Mikroelektronik und Datentechnik

Ein Missverständnis: Wie schnell ist „Echtzeit“? nicht um Tempo geht es Cache und Benchmark: Schnell im Mittel „Komfortabler“ Prozessor? Viel Umgebung zu retten Lange Umschaltzeiten zwischen Prozessen H. Pfüller, Universität Rostock, Institut für Angewandte Mikroelektronik und Datentechnik

Echtzeit-Varianten Harte Echtzeit: Terminüberschreitung ist katastrophal Weiche Echtzeit: Terminüberschreitung wird um so teurer, je weiter Schnelle Echtzeit: Hartes Echtzeitsystem, das extrem schnell reagieren muss Feste Echtzeit: Weiches Echtzeitsystem; nützlich sind nur eingehaltene Termine Innerhalb eines Echtzeitsystems können gleichzeitig mehrere unterschiedliche Charakteristiken vorhanden sein; oft wird es einen bestimmten Zusammenhang zwischen der Größe von Terminverletzungen und den daraus resultierenden Zusatzkosten geben H. Pfüller, Universität Rostock, Institut für Angewandte Mikroelektronik und Datentechnik

Rechtzeitigkeit; Charakteristik der externen Ereignisse Ereignisse, deren Bearbeitung nicht beliebig warten kann Große Vielfalt: periodisch evtl. sehr selten unklar, wann Beispiel: Airbag H. Pfüller, Universität Rostock, Institut für Angewandte Mikroelektronik und Datentechnik

Quasi gleichzeitige Prozesse Grundproblem: Ein Prozessor, aber mehrere Aufgaben gleichzeitig Lösung: Prozessor multiplexen Prozessorzuteilung entsprechend Bedarf und Priorität Was ist am gerechtesten? H. Pfüller, Universität Rostock, Institut für Angewandte Mikroelektronik und Datentechnik

Schnittstellen zum Parameter Zeit Zugriff zu Uhren zwecks Messung der ablaufenden Zeit Verzögerung von Prozessen bis zu einem gewünschten Zeitpunkt Programmierung von Warte-Intervallen, so dass das Ausbleiben eines bestimmten Ereignisses erkannt und behandelt werden kann H. Pfüller, Universität Rostock, Institut für Angewandte Mikroelektronik und Datentechnik

Ablaufsteuerung (Scheduling) Voraussetzungen: vollständige Information über zeitliche Anforderungen der externen Prozesse (sporadisch, periodisch) genaue Zeitdauer der behandelnden Software (Takte zählen!) Kontextwechselzeit Prioritätenbasierte Ablaufsteuerung (fest oder variabel) Preemption H. Pfüller, Universität Rostock, Institut für Angewandte Mikroelektronik und Datentechnik

Strategien (So einfach wie möglich) Zyklische Ausführung first come, first serve Wenn Termin („Deadline“) bekannt: Der früheste Termin zuerst Wenn auch nötige Bearbeitungsdauer bekannt: Zuerst der Termin mit der kleinsten Reserve H. Pfüller, Universität Rostock, Institut für Angewandte Mikroelektronik und Datentechnik

Ablaufsteuerung Die Abarbeitungsschleife widerspiegelt nicht die reale Struktur der Anlage – das begrenzt die Größe der beherrschbaren Systeme H. Pfüller, Universität Rostock, Institut für Angewandte Mikroelektronik und Datentechnik

Nebenläufigkeit (Concurrency) Verschiedene Prozesse verlaufen parallel („natürliche“ Gegebenheit für typische Echtzeitfälle) Kooperationsbeispiele von Prozessen: senden/empfangen von Nachrichten gemeinsame Benutzung von Ressoucen Gemeinsam benutzte Variablen; Leser-Schreiber-Problem und kritischer Bereich Probleme: Blockierungen Beispiel: die fünf Philosophen Das Problem, mit einem Prozessor mehrere gleichzeitig ablaufende Prozesse bearbeiten zu müssen, ist damit gelöst, dass der Prozessor gemultiplext wird. Dafür stellt man nun fest, dass sich neue Probleme herausschälen, die mit der Nebenläufigkeit verbunden sind. Die sind zwar vorher auch schon immanent im System vorhanden gewesen, aber wenn man sich sowohl um die formale Gleichzeitigkeit als auch um das Problem kümmern soll, ist das Gesamtbild so verwoben, dass die Probleme der Nebenläufigkeit nicht so klar isoliert erkennbar sind H. Pfüller, Universität Rostock, Institut für Angewandte Mikroelektronik und Datentechnik

Neue Herausforderungen Große Systeme: Komplexität Verteiltheit, transparente Kommunikation Verlässlichkeit Unterstützung für Entwurf Eingebettete Rechner H. Pfüller, Universität Rostock, Institut für Angewandte Mikroelektronik und Datentechnik

Komplexität Objektorientierung: große Systeme beherrschbar Grund: hierarchische Kapselung Schwierigkeit: Vermittlung der Idee an versierte konventionelle Programmierer H. Pfüller, Universität Rostock, Institut für Angewandte Mikroelektronik und Datentechnik

Objektorientierung Das besondere an einem „Objekt“: Individuum („Instanz“ eines bestimmten Datentyps) Verwendbar ausschließlich und strikt anhand der spezifizierten Schnittstellen („Methodenaufrufe“) Programmierung der Interna durch separate Mannschaft Das alles hierarchisch Produktivitätsquellen: Größere Programmierermannschaften durch Informationskapselung möglich Extensive Wiederverwendung von Code durch Vererbung (Problem: späte Bindung“) H. Pfüller, Universität Rostock, Institut für Angewandte Mikroelektronik und Datentechnik

Verteilte Systeme Mehrere separate Echtzeitrechner kooperieren zwecks Erledigung einer Aufgabe Zwecks Koordination: Kommunikation über Netzwerk Unterstützt durch Objektorientierung (Corba, DCOM): Transparenz H. Pfüller, Universität Rostock, Institut für Angewandte Mikroelektronik und Datentechnik

Verlässliche Systeme (dependable, trustworthy) Fehlertypen (ständig, transient) Vorbeugung und Toleranz Reparaturblock Mehrere Programmversionen Gute Systeme heute: 50 min Ausfall/Jahr Fernziel:1 Sekunde / Jahrhundert (Jim Gray) H. Pfüller, Universität Rostock, Institut für Angewandte Mikroelektronik und Datentechnik

Architektur Anleihe bei herkömmlicher Ingenieurwissenschaft H. Pfüller, Universität Rostock, Institut für Angewandte Mikroelektronik und Datentechnik

Unterstützung für den Entwurf Entwurfsmuster („Design Pattern“) Enheitliche Modellbeschreibungssprache: „UML“ Anwendungsfälle („Use Cases“) H. Pfüller, Universität Rostock, Institut für Angewandte Mikroelektronik und Datentechnik

Entwurfsmuster Regelkreis Beispiel Kommunikation Anlage Echtzeitrechner Nutzer Massenspeicher H. Pfüller, Universität Rostock, Institut für Angewandte Mikroelektronik und Datentechnik

Eingebettet Entwurfsmuster gesucht Entwurfsverfahren 99% aller Prozessoren gehören zum Markt der eingebetteten Systeme Entwurfsmuster gesucht Entwurfsverfahren H. Pfüller, Universität Rostock, Institut für Angewandte Mikroelektronik und Datentechnik

Typisches eingebettetes System Echtzeit- Uhr Steuer- Algorithmen Anlage Schnittstelle Datenerfassung Messen / Überwachen Datenbank Daten finden und anzeigen Anzeigen Bediener- Konsole Bediener- Schnittstelle Echtzeitrechner H. Pfüller, Universität Rostock, Institut für Angewandte Mikroelektronik und Datentechnik

Zusammenfassung Zwei Hauptklassen von Systemen: Harte Echtzeit / weiche Echtzeit Zunehmende Größe und Komplexität Extreme Verlässlichkeit Nebenläufige Steuerung verteilter Systemkomponenten Echtzeitsteuerung externer Geräte Effizienz bei Entwurf und Implementierung H. Pfüller, Universität Rostock, Institut für Angewandte Mikroelektronik und Datentechnik