Ja, kommen wir schon zur Zusammenfassung des Stoffs von heute. Nun kurz mal eine
Gegenüberstellung zu den Verfahren, die wir halt hier betrachtet haben. Wir haben
FCFS, Round Robin, Virtual Round Robin, Shortest Process Next, Highest Response
Ratio Next und SRTF betrachtet. Die vielebenden Strategien haben wir mal
außen vor genommen, weil die ja eine Kombination von diesen Verfahren durch
das sein können. Da sehen wir hier nochmal, wen wir als
kooperativ verdrängend probabilistisch bezeichnen würden. SPN und HRN sind nicht
unbedingt wirklich kooperativ. Wir sagten ja, dass kooperativen Verfahren im
Wesentlichen auch bei dieser Einplanung darauf basieren, dass man Systemaufrufe
absetzen muss, um denn indirekt über Systemaufrufe praktisch den Schedule
aktivieren zu können. Diese Verfahren, SPN und HRN, müssen einfach auch
durchaus einplanen, entsprechend ihrer Strategie ohne Systemaufrufe durchführen
zu können. Das heißt, Prozesse müssten nicht unbedingt kooperativ sein, aber
trotzdem wollen wir die kürzesten Prozesse sozusagen bevorzugen.
Wir sehen, welche Verfahren verdrängend sind und welche probabilistisch
im Wesentlichen sind, aber wir müssen eben auch feststellen, dass keine dieser
hier betrachteten Verfahren wirklich von sich alleine aus deterministisch sind. Das
ist Thema einer Anallelveranstaltung der Echtzeitsysteme, die wir als
Spezialveranstaltung im weiteren Studienverlauf anbieten. Da kann man
sich dann eher praktisch die Echtzeit- Scaddling-Verfahren dann halt
anschauen. Wir werden sehen, dass zum Beispiel First-Come-First-Serve bei
diesen Verfahren schon durchaus wieder eine Rolle spielt, die anderen aber eher
nicht. So, diese MLQ und MLFQ-Verfahren erlauben eine Kombination von diesen
Strategien, die wir halt hier so als Grundstrategien sehen. Das ist dann aber
eine abgestufte Form, je nachdem auf welcher Ebene wir praktisch welche
Strategien platzieren werden und mit welcher Priorisierung praktisch die
Prozesse auf welcher Ebene dann halt abgearbeitet werden. Wir brauchen dann
eine globale Strategie, um den Ebenenwechsel dann letztendlich herbeizuführen und
dann nicht immer nur auf einer Ebene zu verharren.
Wir können natürlich eine Priorisierung vornehmen, die dann etwa bedeutet, dass
wir speziellen Anwendungsbedürfnissen entgeben kommen wollen. Also zum Beispiel
wenn man ein System bauen, was Number Crunching fordern würde für High-Performance
Computing, da würde man sicherlich eher so Richtung First-Come-First-Serve
priorisieren, weil wir wissen, dass das ein relativ einfaches Verfahren mit wenig
Hintergrundrauschen letztendlich im Betriebssystem ist und grundsätzlich die
rechenintensive Prozesse bevorzugt. Alle diese Verfahren versuchen,
gewisse Gütemerkmale zu optimieren, stellen die Einhaltung dieser Gütemerkmale,
wofür sie ausgerichtet sind, dann irgendwie so im Vordergrund und werden
damit auch ein Stück weit indirekt Prioritäten an Prozesse dann so ein
bisschen vergeben. Wobei dann dieser Begriff der Priorität aber schon ein
bisschen unterschiedlich zu sehen ist. Denn die Prioritäten setzen in Verfahren,
die wir kennengelernt haben. Hier sind zum Beispiel MLQ, die statische
Prioritäten halt haben aufgrund der Typung von den Prozessen oder die
dynamischen Prioritäten in den anderen probabilistischen Verfahren. SPN bis MLF
bis HRN, MLFQ ist mehrstufig und VRA ist eben zweistufig, wenn man so will.
Aber wir haben hier immer Prioritäten für die Prozesse, die eine gewisse Rolle
spielen und damit einen Prozessvorrang zum Ausdruck bringen können und damit
dann bedeutet das, dass die Prozesse, die einfach eine höhere Priorität
besitzen, die werden zuerst dem Prozessor vielleicht auch länger diesem
Prozessor zugeteilt bekommen. Das kann statisch und dynamisch denn
Presenters
Zugänglich über
Offener Zugang
Dauer
00:09:39 Min
Aufnahmedatum
2020-10-29
Hochgeladen am
2020-10-29 11:56:39
Sprache
de-DE