Current Page: | Greybox » Authoring » Course ID: medieninformatik » Modules » Module ID: m06 » Learning Units » Unit ID: 2_1_21 |
---|---|
Last Modified: | Tuesday, 2015-05-05 - 08:09:02 |
Tools: | Validate — Preview XML Preview HTML Preview PDF |
Alternative: | Printable HTML |
Title: | Fallstudie IRS | ||
---|---|---|---|
Abstract: | Echtzeit-Applikationen,
wie z.B. Multimedia-Anwendungen, welche auf mehrere Systemressourcen,
wie CPU, Platten, Netzwerkverbindung zugreifen, benötigen ein koordiniertes
Scheduling dieser Ressourcen um ihre Ende-zu-Ende Performanzanforderungen
zu befriedigen. Während Echtzeit-Scheduling für eine einzelne Ressource
ausgiebig bekannt ist, wurde die effiziente Ressourcen-Alloziierung
und das koordinierte Scheduling von heterogenen Systemressourcen auf
einer einzigen Maschine nicht ausreichend beachtet. Um auch diese Anforderungen zu erfüllen wurde unter anderem das Integrated Real-Time Resource Scheduling System (IRS) entwickelt. Im Rahmen dieser LU wird IRS näher erklärt. |
||
Status: |
Review II: done. Link check Warning (ps) |
Version: | 8.0 |
History: |
Acronyme, Absätze und Wordanführungszeichen done. Review Prof. Kosch eingearbeitet. Formel done. Unbekannte Characters ausgebessert. Formeln inline gestellt. |
Author 1: | Harald Kosch | E-Mail: | harald.kosch@itec.uni-klu.ac.at |
---|---|---|---|
Author 2: | (empty) | E-Mail: | (empty) |
Author 3: | (empty) | E-Mail: | (empty) |
Author 4: | (empty) | E-Mail: | (empty) |
Author 5: | (empty) | E-Mail: | (empty) |
Organization: | Universität Klagenfurt - Institut für Informatik-Systeme |
Eine Fallstudie - IRS1Auto
Auto PCAuto PDA_Phone
2AutoEinleitung zu IRS445: Auto PCAuto PDA_PhoneAutoEine Multimedia Applikation auf einem Server besteht in der Regel aus verschiedenen voneinander abhängigen Aufgaben, wobei jede dieser Aufgaben an eine bestimmte Ressource gebunden ist. Gewisse Abfolgen solcher Aufgaben wiederholen sich während der Laufzeit einer Applikation am Server. Anhand der Abfolge der Aufgaben, welche jeweils eine bestimmte Periode p an Zeit benötigen, kann man einen Abhängigkeitsgraph dieser erstellen (siehe obige Abbildung). Aufgabe1 ist eine Leseoperation von der Platte, welche ein Videoframe aus der lokalen Festplatte ausliest. Dieses Frame wird dann am Bildschirm dargestellt (Aufgabe2) und über das Netzwerk zu einem Benutzer übertragen (Aufgabe3). Um nun die Echtzeitbearbeitung von Applikationen, welche wie oben erklärt Zugang zu mehreren Ressourcen erfordern, garantieren zu können, wurde das Integrated Real-Time Resource Scheduling (IRS445) an der Stony Brook University in New York entwickelt. Die wichtigste Komponente von IRS445 ist ein neuer Multi-Ressource-Alloziierungs- und Deadline-Zuteilungs-Algorithmus, DSSCAN genannt. Koordiniertes Scheduling mehrerer Ressourcen1Auto
2AutoUm das koordinierte Scheduling mehrerer Ressourcen in IRS445 zu ermöglichen, muss der Anwendungsprogrammierer die Anforderungen an jede Ressource (Anzahl der Bytes für Übertragung, etc.) spezifizieren und einen Aufgaben-Prioritäts-Graph (TPG446) erstellen. Ein TPG446 ist ein gerichteter azyklischer Graph zwischen den verschiedenen Aufgaben einer Applikation. Jede Aufgabe in diesem Graph steht in Beziehung zu einer speziellen Ressource, die Kanten des Graphen repräsentieren die Prioritätsordnung der verschiedenen Aufgaben. Mithilfe dieser Angaben ist das IRS445 Framework in der Lage heterogene Ressourcen zu alloziieren und das Verzögerungsbudget (Deadline pro Periode) für jede Aufgabe zu berechnen. Sämtliche Aufgaben eines TPG446 müssen allerdings innerhalb einer Periode beendet werden. Auch die Zugangskontrolle, bei welcher überprüft wird ob die Anforderungen einer Applikation rechtzeitig befriedigt werden können und die Ressourcen reserviert werden, ist Aufgabe des IRS445-Frameworks. Ist die gegenwärtige Verfügbarkeit der Ressourcen im System bekannt, so alloziiert IRS445 die ungenutzte Ressource-Kapazität für die Aufgaben des TPG446 und berechnet das minimale Verzögerungsbudget, das benötigt wird um jede Aufgabe fertig zu stellen. Diese minimalen Verzögerungsbudgets werden dann durch die Zuteilung der verfügbaren Flauten im Verzögerungsbudget des TGP der Auslastung der einzelnen Ressourcen entsprechend gelockert. Dieser Lockerungsprozess stoppt bei optimaler Ressourcen-Alloziierung, wobei der TGP in der Lage sein muss, seine periodischen Deadlines einzuhalten. Der Lockerungsalgorithmus hat, durch die Ausgleichung der Nutzung der verschiedenen Ressourcen den Zweck, dass langfristig mehr Echtzeit-Applikationen vom System zugelassen werden. IRS445 unterstützt eine zwei-Level Echtzeit-Scheduler Architektur, welche sich aus einem globalen Scheduler und einer Anzahl von lokalen Schedulern, die sich jeweils auf eine bestimmte Ressource beziehen, zusammensetzt. Dem globalen Scheduler sind alle TPG446's und die Anforderungen an die Ressourcen bekannt. Er hat die Aufgabe sicherzustellen, dass alle Aufgaben befriedigt werden können, bevor er sie in den Anfrage-Queue der betreffenden Ressource platziert. Die lokalen Scheduler verwalten bestimmte Ressourcen und treffen ihre Scheduling-Entscheidungen anhand der Deadlines der Aufgaben und der Auslastung der Ressourcen. Welche Scheduling Strategie sie verwenden ist ihnen freigestellt. Der globale Scheduler fungiert mithilfe seines Wissens über die ganze Applikation somit als Verwaltungsstelle für die lokalen Scheduler. Aufgaben-Deadline Definition1Auto
2AutoGrundlegende Begriffe des IRS445-Framework
sind der Aufwand, das Verzögerungsbudget und die Kapazität. Der Aufwand,
in Mbit gemessen, bezeichnet die Anforderung einer Aufgabe an eine
bestimmte Ressource. Die Deadline einer Aufgabe für eine Periode in
Sekunden wird als Verzögerungsbudget bezeichnet. Die Kapazität bezieht
sich auf die Leistungsfähigkeit einer Ressource und wird in Mb/s angegeben. wobei R_Ni die verfügbare Kapazität der Ressource
bezeichnet. Deadline sensibler SCAN (DSSCAN)1Auto
2AutoIRS445 zeichnet sich durch einen dynamischen Echtzeit-Scheduler, Deadline sensibler SCAN (DSSCAN), aus, welcher eine Vereinigung von SCAN und EDF439 darstellt. Er versucht, die Platten I/O-Anfragen in SCAN Ordnung zu erledigen, ohne allerdings die Deadlines dieser Anfragen zu überschreiten. DSSCAN kennt keinen fixen Service-Zyklus, somit ist mittels DSSCAN das Scheduling sowohl von periodischen und nicht-periodischen Echtzeit-Anfragen, als auch für Best-Effort Anfragen möglich. Der Algorithmus arbeitet mit zwei Queues. Die erste ist nach der Start-Deadline geordnet, die zweite nach der SCAN-Ordnung. Die Start-Deadline stellt den spätesten Zeitpunkt dar, zu der eine Echtzeitanfrage eingeplant werden muss um die gesamte Deadline einer solchen Anfrage einzuhalten, selbst unter Annahme der Worst-case Servicezeit. Der Algorithmus wählt jeweils die erste Anfrage aus der Start-Deadline Queue (EDF439 Queue) und der SCAN Queue. Wenn es sich hierbei um zwei verschiedene Anfragen handelt, so wird die Anfrage aus der SCAN Queue bearbeitet, sofern dadurch nicht die Deadline der Anfrage aus der EDF439-Queue überschritten wird. Nun wird die bearbeitete Anfrage aus allen Queues gelöscht, in der sie sich befunden hat, und die SCAN Queue wird, sofern notwendig, neu geordnet. Dieser Algorithmus kann auch um eine dritte Queue erweitert werden, die interaktive I/O, also VCR-Kontrolloperationen, berücksichtigt. Wenn diese zusätzliche Queue existiert, so wird, sofern diese gefüllt ist, die Anfrage aus dieser Queue zuerst bedient. Das natürlich nur in dem Fall, dass dadurch die Deadline der Anfrage in der Start-Deadline Queue nicht überschritten wird. IRS Implementations Architektur1Auto PCAuto PDA_Phone2Auto PCAuto PDA_PhoneAutoObige Abbildung zeigt die Software-Architektur von IRS445. Durch eine einmalige Zugangskontrolle werden die Ressourcen reserviert. Der Ressourcenbenützungsmonitor beobachtet und überwacht den Ressourcenkonsum der einzelnen Aufgaben. Es ist möglich, dass eine einfache lese/schreibe Aufgabe Anfragen zum Lesen und Schreiben an verschiedene Datenblöcke auf der Platte stellt. In traditionellen Betriebssystemen kann ein Prozess, der solche synchronen Plattenzugriffe erfordert, in jedem Durchlauf nur jeweils einen Plattenzugriff tätigen. Daraus ergeben sich signifikante Kontextwechsel- und Plattenscheduling-Überläufe. Für Echtzeit-Anfragen ist das allerdings unpassend. Um eine Optimierung zu erreichen, werden die Dateisystem lese/schreibe Routinen so modifiziert, dass sämtliche zusammengehörige lese/schreibe Operationen eines Prozesses als eine solche Operation durchgeführt werden, bevor dieser Prozess blockiert. Diese Optimierung ist allerdings nicht unbedingt notwendig, damit IRS445 funktioniert. Der globale Scheduler hat Überblick über alle TGP's der bearbeiteten Applikationen und über die Kapazität der vorhandenen Ressourcen. Mit diesem Wissen ist er in der Lage, die darunterliegenden lokalen Scheduler für die einzelnen Ressourcen so anzuweisen, dass alle Aufgaben ohne Konflikte bearbeitet werden können. Bibliographie2AutoCG CG02 |
(empty) |