Verteilte Echtzeit-Systeme

Ähnliche Dokumente
Echtzeitfähige Ereignisgetriebene Scheduling-Strategien

Echtzeitscheduling (1)

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

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

1 topologisches Sortieren

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

Enigmail Konfiguration

Lehrer: Einschreibemethoden

Systeme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss

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!.

7 Rechnen mit Polynomen

Zahlenwinkel: Forscherkarte 1. alleine. Zahlenwinkel: Forschertipp 1

OECD Programme for International Student Assessment PISA Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland

Systeme 1. Kapitel 5. Scheduling

Es kann maximal ein Prozess die Umladestelle benutzen.

Zwischenablage (Bilder, Texte,...)

BEDIENUNGSANLEITUNG: EINREICH-TOOL

Primzahlen und RSA-Verschlüsselung

Schrittweise Anleitung zur Erstellung einer Angebotseite 1. In Ihrem Dashboard klicken Sie auf Neu anlegen, um eine neue Seite zu erstellen.

1 Mathematische Grundlagen

Round-Robin Scheduling (RR)

Plotten von Linien ( nach Jack Bresenham, 1962 )

Kurzanleitung fu r Clubbeauftragte zur Pflege der Mitgliederdaten im Mitgliederbereich

Matrix42. Use Case - Sicherung und Rücksicherung persönlicher Einstellungen über Personal Backup. Version September

Übungsaufgaben Tilgungsrechnung

Handbuch ECDL 2003 Modul 2: Computermanagement und Dateiverwaltung Der Task-Manager

Simulation LIF5000. Abbildung 1

Erfahrungen mit Hartz IV- Empfängern

Widerrufsbelehrung der Free-Linked GmbH. Stand: Juni 2014

Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen

Anleitung Scharbefragung

Bereich METIS (Texte im Internet) Zählmarkenrecherche

Konzepte der Informatik

Informationssystemanalyse Problemstellung 2 1. Trotz aller Methoden, Techniken usw. zeigen Untersuchungen sehr negative Ergebnisse:

Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten

Anleitung über den Umgang mit Schildern

Grundlagen verteilter Systeme

mobifleet Beschreibung 1. Terminverwaltung in der Zentrale

Statuten in leichter Sprache

Mit dem Tool Stundenverwaltung von Hanno Kniebel erhalten Sie die Möglichkeit zur effizienten Verwaltung von Montagezeiten Ihrer Mitarbeiter.

Lineare Gleichungssysteme

S7-Hantierungsbausteine für R355, R6000 und R2700

Versetzungsregeln in Bayern

Drucken aus der Anwendung

teamsync Kurzanleitung

Erstellen einer Collage. Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu])

WLAN Konfiguration. Michael Bukreus Seite 1

Anleitung zur Erstellung von Serienbriefen (Word 2003) unter Berücksichtigung von Titeln (wie Dr., Dr. med. usw.)

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse Lösung 10 Punkte

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

2. Im Admin Bereich drücken Sie bitte auf den roten Button Webseite bearbeiten, sodass Sie in den Bearbeitungsbereich Ihrer Homepage gelangen.

FÜR 2 BIS 4 SPIELER AB 8 JAHREN

Dokumentation zur Versendung der Statistik Daten

WinWerk. Prozess 6a Rabatt gemäss Vorjahresverbrauch. KMU Ratgeber AG. Inhaltsverzeichnis. Im Ifang Effretikon

ZART KEIMT DIE HOFFNUNG FÜR 2005

Behörde für Bildung und Sport Abitur 2008 Lehrermaterialien zum Leistungskurs Mathematik

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Softwarelösungen: Versuch 4

Fachbereich Physik Dr. Wolfgang Bodenberger

S/W mit PhotoLine. Inhaltsverzeichnis. PhotoLine

Mit Sicherheit mehr Lebensqualität

Ausgewählte Kapitel eingebetteter Systeme

Geringwertige Wirtschaftsgüter (GWG) - Sammelposten (Wahlrechte in Steuerbilanz und Handelsbilanz)

Tutorium zur Mikroökonomie II WS 02/03 Universität Mannheim Tri Vi Dang. Aufgabenblatt 3 (KW 44) ( )

AUSBILDUNG eines OBEDIENCE HUNDES

Übungen zum Fach Betriebssysteme Kapitel 3

Speicher in der Cloud

Festigkeit von FDM-3D-Druckteilen

ecaros2 Installer procar informatik AG 1 Stand: FS 09/2012 Eschenweg Weiterstadt

Einführung in die Algebra

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: )

Wie Sie mit Mastern arbeiten

Psychologie im Arbeitsschutz

Grundlagen der Theoretischen Informatik, SoSe 2008

Pflegedossier für die kreisfreie Stadt Frankfurt (Oder)

Gewinnvergleichsrechnung

Deutliche Mehrheit der Bevölkerung für aktive Sterbehilfe

Anspruchsvolle Dreierausdrücke zum selbstständigen Lernen

Berechnung der Erhöhung der Durchschnittsprämien

Informationsblatt Induktionsbeweis

4. BEZIEHUNGEN ZWISCHEN TABELLEN

Umgang mit Schaubildern am Beispiel Deutschland surft

Tutorium zur Mathematik (WS 2004/2005) - Finanzmathematik Seite 1

PROGRAMMIEREN MIT UNIX/LINUX-SYSTEMAUFRUFEN

1. Die Maße für ihren Vorbaurollladen müssen von außen genommen werden.

Im Folgenden werden einige typische Fallkonstellationen beschrieben, in denen das Gesetz den Betroffenen in der GKV hilft:

Menü auf zwei Module verteilt (Joomla 3.4.0)

Ein Einfaches AIDS Modell

AOK Pflege: Praxisratgeber Sturzprävention Übungen zur Stärkung des Gleichgewichts

Mathematischer Vorbereitungskurs für Ökonomen

Zinssicherung im B2B Markt April 2010

Beweisbar sichere Verschlüsselung

Das große ElterngeldPlus 1x1. Alles über das ElterngeldPlus. Wer kann ElterngeldPlus beantragen? ElterngeldPlus verstehen ein paar einleitende Fakten

Projektmanagement in der Spieleentwicklung

Die restlichen Steine bilden den Vorrat (verdeckt auf dem Tisch liegend).

Kurzanleitung RACE APP

A Lösungen zu Einführungsaufgaben zu QueueTraffic

Was sind Jahres- und Zielvereinbarungsgespräche?

Transkript:

- Verteilte Echtzeit-Systeme Hans-Albrecht Schindler Wintersemester 2015/16 Teil B: Echtzeit-Betriebssysteme Abschnitt 9: Scheduling gemischter Prozessmengen CSI Technische Universität Ilmenau www.tu-ilmenau.de

9.1 gemischte Prozess-Mengen Warum? 1. Viele SRÜ-Echtzeitanwendungen bestehen sowohl aus periodischen als auch aus aperiodischen Prozessen. (à Beispiele) 2. Da MM-Anwendungen oft in allgemeine Rechnerumgebungen integriert, auch hier verschiedene Klassen von Prozessen typische SRÜ-Echtzeitsysteme: Periodische Prozesse: Aperiodische Prozesse: zeitgesteuert (typisch: periodische Sensorauswertung) führen kritische Aktivitäten aus harte Fristen ereignisgesteuert in Abhängigkeit von Anwendung: harte, weiche oder Nichtechtzeit-Eigenschaften 9. Scheduling gemischter Prozessmengen / 9.1 gemischte Prozessmengen ws 2015/16 H.-A. Schindler Folie: 9-2

Aufgaben des Betriebssystems/Verteilten Systems Hauptaufgaben bei gemischten Prozessmengen und harten Echtzeit-Systemen: 1. Garantie für Planbarkeit aller harten Echtzeit-Prozesse unter worst case -Bedingungen 2. gute Durchschnitts-Antwortzeiten für weiche Echtzeit-Prozesse u. Nicht- Echtzeit-Prozesse 9. Scheduling gemischter Prozessmengen / 9.1 gemischte Prozessmengen ws 2015/16 H.-A. Schindler Folie: 9-3

Betrachtete Prozess-Mengen Scheduling-Algorithmen für hybride Prozess-Mengen aus Untermenge harter periodischer Prozesse Untermenge weicher aperiodischer Prozesse Annahmen - Fall A: periodische Prozesse: statische Prioritäten RM synchrone Ankunftszeiten aperiodische Prozesse: Ankunftszeiten unbekannt Minimalzeit zwischen zweimaligem Bereitwerden = Frist (wenn nicht anders spezifiziert) = sporadische Prozesse 9. Scheduling gemischter Prozessmengen / 9.1 gemischte Prozessmengen ws 2015/16 H.-A. Schindler Folie: 9-4

Betrachtete Prozess-Mengen Annahmen - Fall B: periodische Prozesse: dynamische Prioritäten EDF... einfachstes Verfahren: Hintergrund-Scheduling (sehr einfache Variante eines Mehrebenen-Scheduling) 9. Scheduling gemischter Prozessmengen / 9.1 gemischte Prozessmengen ws 2015/16 H.-A. Schindler Folie: 9-5

9.2 Hintergrund-Scheduling Prinzip: Periodische Prozesse Teilwarteschlange mit höchster Priorität RM oder EDF CPU Aperiodische Prozesse niedrigste Priorität FCFS oder SJF oder EDF... Ø rechenbereite Prozesse auf 2 Warteschlangen aufgeteilt (einfache Variante eines Mehr-Ebenen-Scheduling) Warteschlange 1: Warteschlange 2: enthält alle periodischen Prozesse mit höchster Priorität bedient Schedulingverfahren RM oder EDF alle aperiodischen Prozesse nur bedient, wenn keine periodischen Prozesse bereit 9. Scheduling gemischter Prozessmengen / 9.2 Hintergrund-Scheduling Darstellung nach /Buttazzo97/ Bild 5.2 S.111 ws 2015/16 H.-A. Schindler Folie: 9-6

Hintergrund-Scheduling Haupt-Vorteil: Einfachheit der Implementierung Haupt-Problem: Antwortzeit aperiodischer Prozesse kann zu lang werden (insbesondere bei hoher periodischer Last). Ø Starvation: geeignet nur für weniger strenge Zeitrestriktionen aperiodischer Prozesse! τ 1 A B C D τ 2 1 ZE Aperiodische 2 ZE Anforderungen 1 2 2 3 0 5 10 15 20 t [ZE] Beispiel: Hintergrund-Scheduling von aperiodischen Prozessen unter RM 9. Scheduling gemischter Prozessmengen / 9.2 Hintergrund-Scheduling Darstellung nach /Buttazzo97/ Bild 5.1 S.111 ws 2015/16 H.-A. Schindler Folie: 9-7

Server-Prozess (hier) : 9.3 Server-Prozesse (1.Verbesserungsprinzip) periodisch aktivierter Prozess, der aperiodische Anforderungen so schnell wie möglich ausführt charakterisiert durch : wie bei normalen periodischen Prozessen Periodendauer T S Rechenzeitbedarf C S (C S :. Server-Kapazität) Arbeitsweise des Servers: Scheduling: gleicher Algorithmus wie normale periodische Prozesse bedient aperiodische Anforderungen innerhalb seiner Kapazität Ordnung aperiodischer Anforderungen: unabhängig von Scheduling-Algorithmus für Server, z.b. nach: Ankunftszeit FCFS, Rechenzeitbedarf SJF, Frist EDF,... 9. Scheduling gemischter Prozessmengen / 9.3 Server-Prozesse ws 2015/16 H.-A. Schindler Folie: 9-8

Serverprozesse: 1. Polling Server (PS) Prinzip: Ø PS in regelmäßigen Zeitabständen entspr. Periode T S aktiv Bedient momentan vorliegende aperiodische Anforderungen bis Kapazität C S aufgebraucht Ø keine aperiodischen Anforderungen: PS beendet sich selbst bis Beginn der nächsten Periode (nichtaufgebrauchte Kapazität freigegeben ) Ø aperiodische Anforderung die unmittelbar nach Selbstbeendigung von PS auftritt muss bis zu nächster Periode von PS warten (wo Server-Kapazität wieder auf vollen Wert aufgeladen wird.) 9. Scheduling gemischter Prozessmengen / 9.3 Server-Prozesse ws 2015/16 H.-A. Schindler Folie: 9-9

Polling Server auf der Basis von RM C i T i τ 1 1 4 τ 2 2 6 Server C S = 2 T S = 5 Mittleres T aperiod.anforder. Zeitpunkt, zu dem jeweils Anforderung vorliegt (in ZE) τ 1 höchste Priorität τ 2 niedrigste Priorität C S mittlere Priorität 2 1 Kapazität des Servers als Funktion der Zeit 2 ZE 1 2 1 0 2 4 6 8 10 12 14 16 18 20 22 24 0 2 4 6 8 10 12 14 16 18 20 22 24 9. Scheduling gemischter Prozessmengen / 9.3 Server-Prozesse Darstellung nach /Buttazzo97/ Bild 5.3 S.112 ws 2015/16 H.-A. Schindler Folie: 9-10

Serverprozesse: 2. Deferrable Server (DS) Prinzip: Ø Anders als bei PS: Server-Kapazität unter Beibehaltung des Prioritätsniveaus bis zum Ende der Periode aufgehoben - und nicht freigegeben Resultat: Ø durchschnittliche Antwortzeit aperiodischer Anforderungen verbessert 9. Scheduling gemischter Prozessmengen / 9.3 Server-Prozesse ws 2015/16 H.-A. Schindler Folie: 9-11

Deferrable Server auf der Basis von RM (Daten wie bei PS) C i T i τ 1 1 4 τ 1 τ 2 2 6 Server C S = 2 T S = 5 τ 2 aperiodische Anforderungen 2 1 2 1 0 2 4 6 8 10 12 14 16 18 20 22 24 Prioritäten: Pτ 1 >P S > Pτ 2 2 C S 1 0 2 4 6 8 10 12 14 16 18 20 22 24 9. Scheduling gemischter Prozessmengen / 9.3 Server-Prozesse Darstellung nach /Buttazzo97/ Bild 5.6 S.117 ws 2015/16 H.-A. Schindler Folie: 9-12

Vergleich: PS u. DS (mit gleichen Daten) PS aperiodische Anforderungen 2 ZE 1 2 1 DS aperiodische Anforderungen 0 2 4 6 8 10 12 14 16 18 20 22 24 2 1 2 1 0 2 4 6 8 10 12 14 16 18 20 22 24 9. Scheduling gemischter Prozessmengen / 9.3 Server-Prozesse ws 2015/16 H.-A. Schindler Folie: 9-13

Deferrable Server: Server läuft mit höchster Priorität: P S > Pτ 1 > Pτ 2 C i T i τ 1 2 8 τ 1 τ 2 3 10 Server C S = 2 T S = 6 τ 2 aperiodische Anforderungen 2 1 2 1 0 2 4 6 8 10 12 14 16 18 20 22 24 C S 2 1 0 2 4 6 8 10 12 14 16 18 20 22 24 9. Scheduling gemischter Prozessmengen / 9.3 Server-Prozesse Darstellung nach /Buttazzo97/ Bild 5.6 S.117 ws 2015/16 H.-A. Schindler Folie: 9-14

Deferrable Server: Server läuft mit höchster Priorität: P S > Pτ 1 > Pτ 2 DS ist nicht äquivalent zu einem periodischem Prozess. (a) Die periodische Prozess- Menge {τ 1, τ 2 } ist durch RM planbar. (b) Wenn jedoch τ 1 durch DS ersetzt wird, verpasst τ 2 seine Frist. Scheduling-Test: geringerer Wert für untere Grenze der Prozessorauslastung τ 1 τ 2 (a) DS 0 2 4 6 8 10 12 14 16 18 20 Leerlauf time overflow Aperiodische Anforderung hält sich nicht an Vorgaben eines periodischen Prozesses! τ 2 (b) C S 2 1 0 2 4 6 8 10 12 14 16 18 20 0 2 4 6 8 10 12 14 16 18 20 9. Scheduling gemischter Prozessmengen / 9.3 Server-Prozesse Darstellung nach /Buttazzo97/ Bild 5.7 S.118 ws 2015/16 H.-A. Schindler Folie: 9-15

Serverprozesse: 3. Priority Exchange Server (PE) gegenüber DS geändert: Ø Prinzip der Kapazitätsreservierung: falls keine aperiodischen Prozesse zur Bearbeitung bereit: Kapazitätsreserve gegen Ausführungszeit eines periodischen Prozesses niedrigerer Priorität getauscht nach Tausch: periodischer Prozess läuft auf (höherem) Prioritätsniveau des Servers und Server behält seine Kapazität allerdings auf niedrigerem Prioritätsniveau des periodischen Prozesses gegenüber DS: Ø verbesserte Planbarkeitsschranke für periodische Prozesse Ø (etwas) verschlechtertes Antwortzeit-Verhalten aperiodischer Prozesse 9. Scheduling gemischter Prozessmengen / 9.3 Server-Prozesse ws 2015/16 H.-A. Schindler Folie: 9-16

Beispiel 1 für Bedienung aperiodischer Anforderungen durch PE-Server C i T i 1 1 τ 1 4 10 τ 2 8 20 Server C S = 1 T S = 5 P Sorig > P τ1 > P τ2 C S τ 1 1 1 Kapazitätsreserve des Servers auf Prioritätsniveau P τ1 Kapazitätsreserve auf Niveau P τ2 τ 2 2 1 0 2 4 6 8 10 12 14 16 18 20 9. Scheduling gemischter Prozessmengen / 9.3 Server-Prozesse Darstellung nach /Buttazzo97/ Bild 5.12 S.126 ws 2015/16 H.-A. Schindler Folie: 9-17

Beispiel 2 für Bedienung aperiodischer Anforderungen durch PE-Server C i T i τ 1 2 10 τ 2 12 20 C S 1 aperiodische Anforderungen Verdrängung 2 1 Server C S = 1 T S = 5 τ 1 1 τ 2 2 1 0 2 4 6 8 10 12 14 16 18 20 9. Scheduling gemischter Prozessmengen / 9.3 Server-Prozesse Darstellung nach /Buttazzo97/ Bild 5.13 S.127 ws 2015/16 H.-A. Schindler Folie: 9-18

Serverprozesse: 4. Sporadic Server (SS) wie DS: Ø Serverkapazität bleibt auf ursprünglichem Niveau erhalten bis periodische Anforderungen auftreten. anders als DS: Ø Wiederaufladen der Serverkapazität nur, wenn tatsächlich Kapazität verbraucht Regel für Wiederauflade-Zeitpunkt: mit: wird: P exe... Priorität des momentan laufenden Prozesses P SS... Priorität von SS SS = aktiv, wenn P exe P SS Zeitpunkt: t A (d. h. es läuft höher priorisierter Prozess oder SS selbst) è damit ergibt sich: Wiederaufladezeitpunkt: t WA = t A + T S Server-Periodendauer 9. Scheduling gemischter Prozessmengen / 9.3 Server-Prozesse ws 2015/16 H.-A. Schindler Folie: 9-19

Serverprozesse: 4. Sporadic Server (SS) Regel für Wiederauflade-Betrag: Ø Wiederaufladebetrag B WA wird berechnet, sobald gilt: SS = idle, d. h. P exe < P SS Ø ist gleich der im Intervall [t A, t I ] verbrauchten Serverkapazität Bewertung: Ø Verbesserung durchschnittlicher Antwortzeit aperiodischer Prozesse, ohne Verschlechterung der Planbarkeitsschranke der periodischen Prozessmenge 9. Scheduling gemischter Prozessmengen / 9.3 Server-Prozesse ws 2015/16 H.-A. Schindler Folie: 9-20

Beispiel für Sporadic Server mittlerer Priorität C i T i τ 1 1 5 τ 2 4 15 τ 1 τ 2 Server C S = 5 T S = 10 aperiodische Anforderungen SS aktiv t A t I Prioritäten P τ1 > P SS > P τ2 C S +2 5 3 1 +2 0 2 4 6 8 10 12 14 16 18 20 22 9. Scheduling gemischter Prozessmengen / 9.3 Server-Prozesse Darstellung nach /Buttazzo97/ Bild 5.17 S.134 ws 2015/16 H.-A. Schindler Folie: 9-21

Beispiel für Sporadic Server hoher Priorität C i T i τ 1 3 10 τ 2 4 15 Server C S = 2 T S = 8 τ 1 τ 2 aperiodische Anforderungen 2 2 C S 2 1 +2 +2 0 2 4 6 8 10 12 14 16 18 20 22 9. Scheduling gemischter Prozessmengen / 9.3 Server-Prozesse Darstellung nach /Buttazzo97/ Bild 5.18 S.135 ws 2015/16 H.-A. Schindler Folie: 9-22

9.4 Slack-Stealing ( Spielraum-Stehlen - 2.Verbesserungsprinzip) Prinzip: Ø Es existiert passiver Prozess (= Slack Stealer ) kein periodischer Server Ø dieser versucht, Zeit für aperiodische Anforderungen zu sammeln indem er periodische Prozesse so weit wie möglich nach hinten schiebt ohne dass Fristverletzung auftritt (= Stehlen des Spielraums) Ø Spielraum für periodischen Prozess τ i : slack i (t) = d i t c i (t) Grund-Idee: Ø Normalerweise bringt Beenden periodischer Prozesse vor ihrer Frist keinerlei Vorteile (à Skizze) Resultat: Ø Verbesserung der Antwortzeiten für aperiodische Anforderungen 9. Scheduling gemischter Prozessmengen / 9.4 Slack-Stealing ws 2015/16 H.-A. Schindler Folie: 9-23

Beispiele für Slack-Stealer-Verhalten a) ohne aperiodische Anforderungen; b) mit aperiodischer Anforderung von 3 Einheiten Dauer u. Ankunftszeit t = 8 (a) τ 1 τ 2 0 2 4 6 8 10 12 14 16 18 20 aperiodische Anforderungen 3 gestohlener Spielraum (b) τ 1 gestohlener Spielraum τ 2 0 2 4 6 8 10 12 14 16 18 20 9. Scheduling gemischter Prozessmengen / 9.4 Slack-Stealing Darstellung nach /Buttazzo97/ Bild 5.20 S.139 ws 2015/16 H.-A. Schindler Folie: 9-24

Zusammenfassende Bewertung der Fixed-Priority-Server Performanz Mathematische Komplexität Speicher- Bedarf Implementationskomplexität Hintergrund- Scheduling Polling Server Deferrable Server Priority Exchange Sporadic Server Slack-Stealing Parameterklassifikation: sehr gut gut schlecht 9. Scheduling gemischter Prozessmengen / 9.4 Slack-Stealing Darstellung nach /Buttazzo97/ Bild 5.26 S.147 ws 2015/16 H.-A. Schindler Folie: 9-25

9.5 Serverprozess-Algorithmen mit EDF Ø auch Entwicklung von Serverprozess-Algorithmen mit Basisalgorithmus EDF (anstelle von RM) Hauptvorteil: Ø höhere Prozessorauslastbarkeit (wegen EDF) Übersicht: 1. DPE: Dynamic Priority Exchange Sever (Modifikation von PE) 2. DSS: Dynamic Sporadic Server (Modifikation von SS) 3. TBS: Total Bandwidth Server (Verbesserung von Nr. 2) 4. EDL: Earliest Deadline Late Server (andere Verbesserung von Nr. 2) 5. IPE: Improved Priority Exchange Server (Verbesserung von Nr.1) 6. TBS*: modifizierter TBS (Verbesserung von Nr. 3) Anmerkung: Ø Algorithmen als Modifikation der Server-Algorithmen mit RM betrachtbar Ø hierbei: statische durch dynamische Prioritäten ersetzt 9. Scheduling gemischter Prozessmengen / 9.5 Serverprozess-Algorithmen mit EDF ws 2015/16 H.-A. Schindler Folie: 9-26

Beispiel: Dynamic Priority Exchange Server - DPE Grundidee: Ø Modifikation des Priority Exchange Servers für EDF (1994/96 Buttazzo/Spuri) Ø Austausch von Kapazitätsreserve für aperiodische Prozesse gegen Prozessorzeit für periodische Prozesse mit geringerer Priorität Algorithmus: Server beschrieben durch Parameter Periodendauer T S und Kapazität C S Ø Zu Beginn jeder Server-Periode: seine Kapazität auf C s d gesetzt (mit d... Frist der aktuellen Serverperiode) im Beispiel: bei: t = 0 C s 6 = 3 (volle Server-Kapazität) 9. Scheduling gemischter Prozessmengen / 9.5 Serverprozess-Algorithmen mit EDF ws 2015/16 H.-A. Schindler Folie: 9-27

Beispiel: Dynamic Priority Exchange Server - DPE weiter Algorithmus: Ø Jede zu periodischen Instanzen gehörende Frist hat ebenfalls aperiodische Kapazität C d Si (egal ob Instanz bereits abgearbeitet oder nicht). Kapazität hat anfänglich Wert 0 (Null). im Beispiel: bei: t = 0 gilt C 8 S1 = C12 S2 = C16 S1 = = 0 Ø Aperiodische Kapazitäten (falls > 0) erhalten Prioritäten entsprechend ihrer Frist und EDF (d.h. früheste Frist à höchste Priorität) [bei gleicher Frist: aperiodische Anforderungen bevorzugt.] Ø Immer wenn aperiodische Kapazität höchste Priorität hat, gibt es folgende Möglichkeiten: falls aperiodische Anforderungen vorliegen: diese bedient, bis sie erfüllt oder bis Kapazität erschöpft falls keine aperiodischen Anforderungen vorliegen 9. Scheduling gemischter Prozessmengen / 9.5 Serverprozess-Algorithmen mit EDF ws 2015/16 H.-A. Schindler Folie: 9-28

Beispiel: Dynamic Priority Exchange Server - DPE 6 C S DPE 0 2 4 6 8 10 12 14 16 18 20 22 24 8 C S1 16 C S1 τ 1 0 2 4 8 8 10 16 24 12 C S2 τ 2 0 2 4 6 8 10 12 14 16 18 20 22 24 9. Scheduling gemischter Prozessmengen / 9.5 Serverprozess-Algorithmen mit EDF Darstellung nach /Buttazzo97/ Bild 6.1 S.152 ws 2015/16 H.-A. Schindler Folie: 9-29

falls keine aperiodischen Anforderungen aber periodische Prozess- Instanzen zu bearbeiten: Ø Instanz mit frühester Frist bedient Ø Dabei Kapazität vom Betrag der Ausführungszeit zu Frist der betroffenen Instanz hinzugefügt (und von nicht ausgeschöpfter Frist subtrahiert) falls keinerlei Anforderungen: Kapazität im Leerlauf verbraucht im Beispiel: Ø bei t = 0 liegt Instanz von τ 1 zur Bearbeitung an. Diese nach 2 ZE vollständig bearbeitet: C 8 S1 = 2 (übertragene Kapazität) C 6 S = 2 1 Ø bei t = 2 liegt Instanz von τ 2 vor Ø zunächst wird verbliebene Kapazität von C 6 S verbraucht und übertragen Ø dann wird Kapazität von C 8 S1 auf C12 S2 übertragen so dass Kapazität von C12 S2 vollständig verbraucht wird Ø ab t = 5 ist Prozessor 3 ZE im Leerlauf, so dass Kapazität von C 12 S2 vollständig verbraucht wird Ø... 9. Scheduling gemischter Prozessmengen / 9.5 Serverprozess-Algorithmen mit EDF Beispiel: Dynamic Priority Exchange Server - DPE ENDE 9 ws 2015/16 H.-A. Schindler Folie: 9-30