Zeit- und ereignisgesteuerte Echtzeitsysteme



Ähnliche Dokumente
Scheduling in Echtzeitbetriebssystemen. Prof. Dr. Margarita Esponda Freie Universität Berlin

Echtzeitscheduling (1)

Echtzeitfähige Ereignisgetriebene Scheduling-Strategien

OSEK / OSEKtime Ausgewählte Kapitel eingebetteter Systeme

11. Rent-Seeking 117

OSEK Deadline-Analyse

3.14 Die Programmieroberfläche Programmierung

OSEK-OS. Oliver Botschkowski. PG AutoLab Seminarwochenende Oktober AutoLab

Petri-Netze / Eine Einführung (Teil 2)

2 Datei- und Druckdienste

Erstellen einer in OWA (Outlook Web App)

Seminar. PG AutoLab. Verteilte Echtzeitsysteme. Sabrina Hecke. PG 522 Fachbereich Informatik Technische Universität Dortmund Lehrstuhl XII

Software-Engineering SS03. Zustandsautomat

An integrated total solution for automatic job scheduling without user interaction

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

Datensicherung. Beschreibung der Datensicherung

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

Windows 10. Vortrag am Fleckenherbst Bürgertreff Neuhausen.

Agentur für Werbung & Internet. Schritt für Schritt: -Konfiguration mit Apple Mail

Ein einfaches Modell zur Fehlerfortpflanzung

Auswertungssoftware des Deutschen-Motorik-Tests

VIP-Programm. Herzlich Willkommen!

Typisierung des Replikationsplan Wirries, Denis Datenbankspezialist

INDEX. Öffentliche Ordner erstellen Seite 2. Offline verfügbar einrichten Seite 3. Berechtigungen setzen Seite 7. Öffentliche Ordner Offline

Anleitung RÄUME BUCHEN MIT OUTLOOK FÜR VERWALTUNGSANGESTELLTE

Systeme 1. Kapitel 5. Scheduling

Softwaretests in Visual Studio 2010 Ultimate Vergleich mit Java-Testwerkzeugen. Alexander Schunk Marcel Teuber Henry Trobisch

Wie das genau funktioniert wird Euch in diesem Dokument Schritt für Schritt erklärt. Bitte lest Euch alles genau durch und geht entsprechend vor!

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Beurteilung der biometrischen Verhältnisse in einem Bestand. Dr. Richard Herrmann, Köln

Investitionsentscheidungsrechnung vollständiger Finanzplan

Algorithmen und Datenstrukturen

Powermanager Server- Client- Installation

Auto-Provisionierung tiptel 30x0 mit Yeastar MyPBX

IMAP Backup. Das Programm zum Sichern, Synchronisieren, Rücksichern und ansehen von gesicherten Mails. Hersteller: malu-soft

Prof. Dr. Uwe Schmidt. 21. August Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (IA 252)

Inkrementelles Backup

Kapitel 3: Einführung Projektmanagement

Online Schulung Anmerkungen zur Durchführung

Local Control Network


Konfiguration der Yeastar MyPBX IP-Telefonanlagen mit iway Business SIP Trunk

NAS 259 Ihre Daten mit Remote Sync (Rsync) schützen

Eigenen WSUS Server mit dem UNI WSUS Server Synchronisieren

How-to: Webserver NAT. Securepoint Security System Version 2007nx

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

Inventur. Bemerkung. / Inventur

Microsoft Update Windows Update

Lastenheft. Poker iphone App

AZK 1- Freistil. Der Dialog "Arbeitszeitkonten" Grundsätzliches zum Dialog "Arbeitszeitkonten"

Die Beschreibung bezieht sich auf die Version Dreamweaver 4.0. In der Version MX ist die Sitedefinition leicht geändert worden.

SharePoint Demonstration

Stellvertretenden Genehmiger verwalten. Tipps & Tricks

Das vorliegende Dokument beinhaltet vertrauliche Informationen und darf nicht an Dritte weitergereicht werden.

Einrichten eines Postfachs mit Outlook Express / Outlook bis Version 2000

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten

1. Einschränkung für Mac-User ohne Office Dokumente hochladen, teilen und bearbeiten

Einführung in Eclipse und Java

Workshop: Eigenes Image ohne VMware-Programme erstellen

1. Arbeiten mit dem Touchscreen

Empfehlungen zur Nutzung der CD zum Buch: Klee & Wiemann: Beweglichkeit und Dehnfähigkeit. Schorndorf: Hofmann,

Anhand des bereits hergeleiteten Models erstellen wir nun mit der Formel

Die Fehlermeldung lautet so oder ähnlich:

Los geht s. aber Anhand meines Beispiels!

Berechtigungsgruppen TimeSafe Leistungserfassung

Wasserzeichen mit Paint-Shop-Pro 9 (geht auch mit den anderen Versionen. Allerdings könnten die Bezeichnungen und Ansichten etwas anders sein)

Übung 6: Feinentwurf. Prof. Dr. Dr. h.c. Manfred Broy Dr. Herbert Ehler, Martin Feilkas 6. Juli 2006 Bernd Spanfelner, Sebastian Winter

ARCO Software - Anleitung zur Umstellung der MWSt

Vorarlberger Standardschulinstallation Anbindung von Android Mobile Devices

Adami CRM - Outlook Replikation User Dokumentation

Kostenstellen verwalten. Tipps & Tricks

Dynamic Ressource Management

3D Visualisierung von UML Umgebungsmodellen

VERWALTUNG. Postfächer, Autoresponder, Weiterleitungen, Aliases. Bachstraße 47, 3580 Mödring

Success! Bestellausgabe

teamsync Kurzanleitung

Speicher in der Cloud

Bedienungsanleitung. Stand: Copyright 2011 by GEVITAS GmbH

Über die Internetseite Hier werden unter Download/aktuelle Versionen die verschiedenen Module als zip-dateien bereitgestellt.

Tutorial Moodle 2 globale Gruppen bzw. Kohorten

QM: Prüfen -1- KN

Benutzeranleitung Superadmin Tool

Real-Time Operating Systems Ein Überblick

WinWerk. Prozess 4 Akonto. KMU Ratgeber AG. Inhaltsverzeichnis. Im Ifang Effretikon

Für die Einrichtung mit jedem beliebigen Client gelten grundsätzlich folgende Daten:

DOKUMENTATION VOGELZUCHT 2015 PLUS

Workflows verwalten. Tipps & Tricks

Adressen und Kontaktinformationen

Hilfe zur Verwendung digitaler Formulare

Handbuch. Artologik EZ-Equip. Plug-in für EZbooking version 3.2. Artisan Global Software

Benachrichtigungsmöglichkeiten in SMC 2.6

3. Wählen Sie "Internet- " aus und klicken Sie wiederum auf "Weiter".

How to do? Projekte - Zeiterfassung

SILVERBALL MAX. Technische Info V10 Update

BERECHNUNG DER FRIST ZUR STELLUNGNAHME DES BETRIEBSRATES BEI KÜNDIGUNG

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

14. Minimale Schichtdicken von PEEK und PPS im Schlauchreckprozeß und im Rheotensversuch

5 DATEN Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu

Sie werden sehen, dass Sie für uns nur noch den direkten PDF-Export benötigen. Warum?

Transkript:

Zeit- und ereignisgesteuerte Echtzeitsysteme Stephan Braun Stephan.Braun.Hagen@t-online.de PG Seminarwochenende 21.-23. Oktober 2007 1

Überblick Echtzeitsystemmodell Einführung Ereignis- und zeitgesteuerte Systeme Ereignisgesteuerte Systeme Zeitgesteuerte Systeme Zeit- und ereignisgesteuerte Systeme im Vergleich Literatur Stephan Braun <Stephan.Braun.Hagen@t-online.de> 2 Zeit- und ereignisgesteuerte Echtzeitsysteme, PG, Seminarwochenende 21.-23.10.2007

Echtzeitsystemmodell Echtzeitsysteme werden in Applikationen zur Kontrolle realer technischer Systeme verwendet Stephan Braun <Stephan.Braun.Hagen@t-online.de> 3 Zeit- und ereignisgesteuerte Echtzeitsysteme, PG, Seminarwochenende 21.-23.10.2007

Echtzeitsystemmodell Verhalten der Echtzeitappliaktion: Modellierung des Verhaltens mit Hilfe von Prozessen Berechnungen anhand von zeitabhängigen, signifikanten Zustandsvariablen ( = RT-Entities) Auto: Position, Geschwindigkeit, Stellung der Scheibenwischer, Zylinderstellung... - statische Attribute: Name, Typ, Wertebereich - dynamische Attribute: Wertebelegung Jede RT-Entity ist im Einflussbereich (sphere of control, SOC), eines Subsystems, dort werden Werte festgesetzt. Außerhalb: RT-Entities nur observierbar, nicht modifizierbar Stephan Braun <Stephan.Braun.Hagen@t-online.de> 4 Zeit- und ereignisgesteuerte Echtzeitsysteme, PG, Seminarwochenende 21.-23.10.2007

Echtzeitsystemmodell Funktionale Anforderung: Beobachten der RT-Entitites und Sammeln dieser Beobachtungen (Observation) Observation: atomare Datenstruktur O=<Name, t, Wert> Repräsentation durch RT-Image: - hat beschränkte Gültigkeit - muss nach Ablauf dieser ersetzt werden Stephan Braun <Stephan.Braun.Hagen@t-online.de> 5 Zeit- und ereignisgesteuerte Echtzeitsysteme, PG, Seminarwochenende 21.-23.10.2007

Echtzeitsystemmodell RT-Database: Menge zeitlich gültiger RT-Images RT-Entity ändert Wert RT-Database aktualisieren Zwei Ansätze: periodisches Update (zeitgesteuert/time-triggered) Update nach Zustandsänderung (ereignisgesteuert/event triggered) RT-Objekte: Container für RT-Images innerhalb eines Computerknotens RT-Images werden dort manipuliert und gespeichert Stephan Braun <Stephan.Braun.Hagen@t-online.de> 6 Zeit- und ereignisgesteuerte Echtzeitsysteme, PG, Seminarwochenende 21.-23.10.2007

Ereignis- und zeitgesteuerte Systeme Abhängig von den Auslösemechanismen für Kommunikationsund Verarbeitungsaktivitäten, zwei unterschiedliche Ansätze: 1.) ereignisgesteuert (event-triggert): Alle Aktivitäten werden gestartet, sobald eine signifikante Zustandsänderung (z.b. ein Ereignis in einer RT-Entity) bemerkt wird 2.) zeitgesteuert (time-triggered): Alle Aktivitäten werden periodisch zu bestimmten Zeitpunkten gestartet Stephan Braun <Stephan.Braun.Hagen@t-online.de> 7 Zeit- und ereignisgesteuerte Echtzeitsysteme, PG, Seminarwochenende 21.-23.10.2007

Ereignisgesteuerte Systeme Echtzeitsystem ist ereignisgesteuert (event-triggered), wenn Steuerungssignale vom Auftreten von Ereignissen abhängen: - Empfang einer Nachricht - Beendigung eines Tasks - Externer Interrupt alle Aktivitäten werden durch ein Ereignis angestoßen Stephan Braun <Stephan.Braun.Hagen@t-online.de> 8 Zeit- und ereignisgesteuerte Echtzeitsysteme, PG, Seminarwochenende 21.-23.10.2007

Ereignisgesteuerte Systeme Zwei unterschiedliche Ereignisarten: 1.) vorhersagbare Ereignisse (predictable events; P-events): Grundlage z.b. physikalische Gesetze: Ereignis ist Konsequenz eines anderen Ereignisses Auftreten ist deterministisch; Ressourcen frühzeitig reservierbar 2.) Zufällige Ereignisse (chance events; C-events): Auftreten hängt von zufälligem Prozess ab nicht deterministisch; statistische Hilfsmittel nötig, um diese im Systementwurf zu berücksichtigen. Stephan Braun <Stephan.Braun.Hagen@t-online.de> 9 Zeit- und ereignisgesteuerte Echtzeitsysteme, PG, Seminarwochenende 21.-23.10.2007

Ereignisgesteuerte Systeme Scheduling-Strategie: Dienste sind nachfrage-orientiert, reagieren auf plötzlich auftretende Ereignisse dynamische (online) Scheduling Strategie: Task-Organisation zur Laufzeit flexibel Problem: Tasks i.d.r. durch Abhängigkeitsrelationen gekennzeichnet, z.b.: Gegenseitiger Ausschluss Ressourcenabhängigkeiten Stephan Braun <Stephan.Braun.Hagen@t-online.de> 10 Zeit- und ereignisgesteuerte Echtzeitsysteme, PG, Seminarwochenende 21.-23.10.2007

Ereignisgesteuerte Systeme Dynamische Algorithmen: Earliest Deadline First (EDF) Least Laxity First (LLF) Deadline Monotonic (DM), Rate Monotonic (RM): Statisches Prioritätsscheduling: Prozesse bekommen statische Prioritäten zugewiesen: wichtige Prozesse: hohe Priorität unkritische Prozesse: niedrige Priorität Prozess darf nur von anderem mit höherer Priorität unterbrochen werden Stephan Braun <Stephan.Braun.Hagen@t-online.de> 11 Zeit- und ereignisgesteuerte Echtzeitsysteme, PG, Seminarwochenende 21.-23.10.2007

Ereignisgesteuerte Systeme Fehlertoleranz Fehlfunktionen so abfangen, dass das gewünschte Verhalten gesichert bleibt Hier: durch aktive Redundanz: Bei Fehlern übernimmt sein Replikat, der ständig aktiviert ist, seine Aufgaben Replikation der (Funktionen) von Knoten erfordert replica determinism: korrekt replizierte Systeme verhalten sich komplett identisch Problem: Quittungen, Timeouts und wiederholte Übermittlungen Verhalten kann sich unterscheiden (1 Replikat hat Quittung vor Timeout erhalten, ein anderer aber nicht) Abstimmung, um Zustandssynchronität zu erlangen Stephan Braun <Stephan.Braun.Hagen@t-online.de> 12 Zeit- und ereignisgesteuerte Echtzeitsysteme, PG, Seminarwochenende 21.-23.10.2007

Zeitgesteuerte Systeme Echtzeitsysteme sind zeitgesteuert (time-triggered), wenn die Steuerungssignale vom Fortschritt einer (globalen) Zeitnotation ausgehen. Ziel: schnelle Übermittlung der Zustandswerte Zustandsübermittlung wird periodisch vorgenommen; die Periode wird auf das dynamische Verhalten der RT-Entities abgestimmt. Beobachtungsgitter (observation lattice): bestimmt Eckpunkte der Übermittlung; RT-Entities nur zu diesen Zeitpunkten überwacht Stephan Braun <Stephan.Braun.Hagen@t-online.de> 13 Zeit- und ereignisgesteuerte Echtzeitsysteme, PG, Seminarwochenende 21.-23.10.2007

Zeitgesteuerte Systeme Wahl der Gitterpunkte problematisch: Punkte eng genug wählen, so dass kurzlebige Zustände entdeckt werden: Zustände Verpasst! Zwischenspeicherung der Zustände Punkte nicht zu eng wählen: Zustand muss sich u.u. erst stabilisieren Stephan Braun <Stephan.Braun.Hagen@t-online.de> 14 Zeit- und ereignisgesteuerte Echtzeitsysteme, PG, Seminarwochenende 21.-23.10.2007

Zeitgesteuerte Systeme Scheduling-Strategie: statische, vorgegebene Schedules Berücksichtigung aller Abhängigkeiten in Entwicklungsphase erstellt (offline) zur Laufzeit: table-look-up ausführbarer Task alle Input-/Outputaktivitäten vorgeplant Stephan Braun <Stephan.Braun.Hagen@t-online.de> 15 Zeit- und ereignisgesteuerte Echtzeitsysteme, PG, Seminarwochenende 21.-23.10.2007

Zeitgesteuerte Systeme Fehlertoleranz: alle Taskwechsel, Modiwechsel und Kommunikationsaktivitäten global synchronisiert Vermeidung nichtdeterministischer Entscheidungen keine zusätzliche Kommunikation unter den Replikaten nötig Stephan Braun <Stephan.Braun.Hagen@t-online.de> 16 Zeit- und ereignisgesteuerte Echtzeitsysteme, PG, Seminarwochenende 21.-23.10.2007

Zeit- und ereignisgesteuerte Systeme im Vergleich 1.) Vorhersagbarkeit: Zeitgesteuerte Systeme: gründliche Planung der Abläufe in Entwicklungsphase: Festlegung des observation lattice Schätzung der maximalen Ausführungszeit aller zeitkritischen Tasks Schedules offline erstellen komplettes zeitliches Systemverhalten präzise vorhersagbar Ereignisgesteuerte Systeme: Pläne dynamisch aufgrund expliziter Nachfrage erzeugt - verschiedene dynamsiche Ablaufpläne Verhalten nicht deterministisch vorhersagbar Stephan Braun <Stephan.Braun.Hagen@t-online.de> 17 Zeit- und ereignisgesteuerte Echtzeitsysteme, PG, Seminarwochenende 21.-23.10.2007

Zeit- und ereignisgesteuerte Systeme im Vergleich 2.) Testbarkeit: zeitliche Performanz ist Hauptaspekt Ereignisgesteuerte Systeme: Test unter simulierter Spitzenauslastung, da seltene C- Events u.u. sonst nicht häufig genug auftreten Änderung eines Tasks kann Konsequenzen für andere Tasks haben aufwändige Tests nötig; kritischer Punkt: simulierte Auslastung = Realität? Zeitgesteuerte Systeme: Vergleich der Testergebnisse mit detaillierten Entwurfsplänen diskrete Abfrageraster endliche Menge: jede Reaktion auf Input observierbar, wertmäßig erfassbar und vergleichbar systematischer Test Stephan Braun <Stephan.Braun.Hagen@t-online.de> 18 Zeit- und ereignisgesteuerte Echtzeitsysteme, PG, Seminarwochenende 21.-23.10.2007

Zeit- und ereignisgesteuerte Systeme im Vergleich 3.) Ressourcennutzung: Zeitgesteuerte Systeme: alle Schedules fest vorgegeben; Zeitfenster für jeweiligen Task mind. so groß wie seine max. Ausführungszeit; ist die Differenz zw. durchschnittlicher und max. Ausführungszeit groß: nur kleiner Teil der Berechnungszeit benötigt feste maximale Ausführungszeit = u.u. Zeitverschwendung Ereignisgesteuerte Systeme: Schedules nur für die Tasks, die durch die jeweiligen Umstände angestoßen werden (dynamisch) CPU bereits nach der tatsächlichen und nicht der maximalen Ausführungszeit wieder zur Verfügung Stephan Braun <Stephan.Braun.Hagen@t-online.de> 19 Zeit- und ereignisgesteuerte Echtzeitsysteme, PG, Seminarwochenende 21.-23.10.2007

Zeit- und ereignisgesteuerte Systeme im Vergleich zusätzliche Laufzeitressourcen für dynamische Scheduling- Algorithmen, Synchronisation und Speichermanagement Niedrige oder durchschnittliche Systemauslastung: Ressourcennutzung bei ereignisgesteuerten Systemen besser (tatsächliche Ausführungszeit besser als maximale) Spitzenauslastung: Situation kann sich umkehren, da mehr Zeit für Abwickeln der Interrupts, das Speichermanagement, die Synchronisation und die Scheduling-Algorithmen benötigt wird Stephan Braun <Stephan.Braun.Hagen@t-online.de> 20 Zeit- und ereignisgesteuerte Echtzeitsysteme, PG, Seminarwochenende 21.-23.10.2007

Zeit- und ereignisgesteuerte Systeme im Vergleich 4.) Erweiterbarkeit: = Kosten, um bestehende Funktionalität zu ändern und neue Funktionen hinzuzufügen Ereignisgesteuerte Systeme: Ändern bereits bestehender Tasks/Knoten: alle Schedulingentscheidungen erst zur Laufzeit relativ einfach Hinzufügen eines neuen Tasks/Knotens: Modifikation einiger Protokollparameter; lokale Änderung der Ausführungszeit kann Auswirkungen auf andere Tasks/Knoten haben komplettes System erneut testen Stephan Braun <Stephan.Braun.Hagen@t-online.de> 21 Zeit- und ereignisgesteuerte Echtzeitsysteme, PG, Seminarwochenende 21.-23.10.2007

Zeit- und ereignisgesteuerte Systeme im Vergleich Zeitgesteuerte Systeme: Ändern bereits bestehender Tasks/Knoten: jeder Task eigenständig ist Ausführungszeit des geänderten Tasks nicht größer als maximale Ausführungszeit: keine Auswirkungen Hinzufügen eines neuen Tasks/Knotens: Aufwand abhängig von Informationsfluss zum/vom Knoten: Knoten passiv (z.b. Display) keine Modifikation nötig Knoten aktiv Zuweisung eines Kommunikationsfensters Schedules neu berechnen Stephan Braun <Stephan.Braun.Hagen@t-online.de> 22 Zeit- und ereignisgesteuerte Echtzeitsysteme, PG, Seminarwochenende 21.-23.10.2007

Zeit- und ereignisgesteuerte Systeme im Vergleich Fazit: zeitgesteuerte Systeme verlangen sehr detaillierte Entwicklungsphase (Festlegung der maximalen Ausführungszeit, Erstellung der Schedules); Zeitverhalten gut vorhersagbar ereignisgesteuerte Systeme verlangen keine detaillierten Pläne, allerdings bei Verifikation umfangreiche Systemtests nötig Stephan Braun <Stephan.Braun.Hagen@t-online.de> 23 Zeit- und ereignisgesteuerte Echtzeitsysteme, PG, Seminarwochenende 21.-23.10.2007

Literatur Weiterführende Literatur: H. Kopetz, Real-Time Systems: Design Principles for Distributed Embedded Applications H. Kopetz, Event-Triggered versus Time-Triggered Real-Time Systems H. Kopetz, Should Responsive Systems be Event-Triggered or Time-Triggered? R. Williams, Real-time Systems Development, Elsevier 2006 H. Wörn, U. Brinkschulte, Echtzeitsysteme, Springer 2005 M. Oetken, Seminar Echtzeitbetriebssystemkerne, 1997 Stephan Braun <Stephan.Braun.Hagen@t-online.de> 24 Zeit- und ereignisgesteuerte Echtzeitsysteme, PG, Seminarwochenende 21.-23.10.2007