14 - 9.2.8 Einplanungsverfahren: Mehrstufige Verfahren [ID:22152]
50 von 139 angezeigt

Nun kommen wir zu einer Klasse von Verfahrensweisen, die über mehrere

Stufen ablaufen, die eben mehrstufig sind. Multi-Level-Q ist so ein klassisches

Verfahren, wo wir eigentlich einen Mischbetrieb, nicht nur zwischen Vorder-

und Hintergrundbetrieb unterstützen, sondern auch zwischen den

unterschiedlichen Strategien, die wir so ein bisschen betrachtet hatten.

Aber es ist ein wesentlicher Punkt, dass wir über diese unterschiedlichen Ebenen,

die wir jetzt einführen werden, eben unterschiedliche Strategie zum gleichen

Zeitpunkt im Rechensystem einbringen können.

Hier geht man hin bei MLQ und ordnet den Prozessen zunächst einmal einen

bestimmten Typ zu, wo man also mit diesem Typ bestimmte Eigenschaften für diesen

Prozess denn glaubt, zu assoziieren zu können. Denn würden diese Prozesse

entsprechend dieses Typs eingeplant werden in dem System. Zum Beispiel geht

man hin und teilt eine Bereitliste in separate getübte Listen auf. Zum

Beispiel für Systemprozesse eine Liste, für Dialogprozesse eine Liste und für

Stapelprozesse eine Liste. Und da haben wir denn schon durchaus bestimmte

Merkmale, Eigenschaften, Dialogprozesse. Da glauben wir, es sind die Prozesse, die

interaktiv sind. Stapelprozesse, das glauben wir, das sind die Prozesse, die

nicht interaktiv sind, die rechenintensiv sind. Und dann haben wir noch die

Systemprozesse, die sollen fürs Rechensystem wesentliche Dinge denn tun,

unabhängig davon, ob sie jetzt eine hohe Interaktion haben oder nicht.

Das sind die verschiedenen Typen, die man aufmachen kann. Und dann würde man mit

jeder dieser Liste eine gewisse lokale Einplanungsstrategie verbinden. Wir

könnten zum Beispiel mischen Shortest Prozess Next auf der einen Liste,

Round-Robin-Verfahren auf der anderen oder First-Comper-Surve auf der dritten

Liste. Und dann muss man sich eine globale Einplanungsstrategie noch

definieren, die dann letztendlich eine Auswahl zwischen diesen jeweiligen

Listen dann halt trifft. Diese Auswahl kann statisch oder dynamisch sein.

Statisch, indem wir dann praktisch die Listen entsprechend einer, sagen wir mal,

Prioritätshierarchie zugeordnet haben. Dann würden wir denn praktisch immer nur

entsprechend dieser Prioritätsebene von oben nach unten, von der höheren zur

nächsteren Priorität, die Prozesse in diesen jeweiligen Listen abarbeiten.

Das bedeutet natürlich, dass man auch eine Hungergefahr für Prozesse in den

tiefer liegenden Listen denn vorfindet. Oder man macht es irgendwie dynamisch.

Man würde denn die Listen in einem Zeitmultiplex-Verfahren dann

entsprechend abarbeiten und zum Beispiel sagen, dass die Prozesse, die auf der

Systemliste stecken, 40 Prozent der Rechenzeit bekommen. Die Dialogprozesse

kriegen 40 Prozent der Rechenzeit und die Stabilprozesse kriegen denn nur 20

Prozent dieser Rechenzeit. Diese Typenzuordnung, die macht man natürlich

statisch, die muss vorher getroffen werden. Man würde diese Zuordnung

typischerweise eben zum Zeitpunkt der Prozesserzeugung denn vornehmen. Hier

mal ein Beispiel, wie man sich das jetzt vorstellen kann, mal ganz einfach zwischen

System, Dialog und Stabilprozesse unterschieden. Wo wir denn sagen, die

Systemprozesse werden nach Shortest Prozess Next verarbeitet, Dialogprozesse

nach Round Robin und die Stabilprozesse nach First Come First Serve. Das werden

die jeweiligen lokalen Einplanungsverfahren, die wir halt haben. Und

dann gibt es hier irgendeine globale Einplanung, 40-40-20 Prozent Rechenzeit

für die CPU möglicherweise. Man sieht hier auch ein bisschen schon so die

Analogie zu Virtual Round Robin. Man kann durchaus sagen, dass Virtual Round Robin,

was wir vorher gesehen haben, eben auch ein Multi-Level-Q-Verfahren mit zwei

Ebenen halt ist. Wo wir denn nur Round Robin haben und also die normale

Teil eines Kapitels:
9.2 Einplanungsverfahren

Zugänglich über

Offener Zugang

Dauer

00:12:09 Min

Aufnahmedatum

2020-10-29

Hochgeladen am

2020-10-29 12:26:35

Sprache

de-DE

Einbetten
Wordpress FAU Plugin
iFrame
Teilen