Abschließend wollen wir uns mal unterschiedliche Kriterien, wonach denn eingeplant werden kann,
anschauen. Das sind sogenannte Günter-Merkmale. Die sind manchmal benutzerdienlich oder sie sind
eher so ausgelegt, dass sie sich an eine bessere Systemperformance orientieren. Sie hängen auch
durchaus von der jeweiligen Betriebsart des Rechensystems ab. Das sind unterschiedliche
Dimensionen der Prozesseinplanung, die wir hier betrachten werden. Letztendlich Kriterien,
die bestimmen, in welcher Reihenfolge denn Prozesse denn ausgeführt werden sollen. Da haben wir die
benutzerorientierten Kriterien. Da geht es um die Benutzerdienlichkeit. Das heißt, man möchte
versuchen, ein Systemverhalten für den Benutzer zu optimieren. Dafür dann eben auch mit den Maßnahmen,
die man im System trifft, für eine bessere Akzeptanz sorgen und damit auch die Anwendungsdomäne aus der
technischen Hinsicht entsprechend unterstützen zu können. Wichtig dabei ist eben auch bestimmte
Gütemerkmale, denn für die Anwendungsdomäne, für die Anwendungsprozesse, denn letztendlich durchzusetzen.
Dann haben wir dem gegenüber die sogenannten systemorientierten Kriterien. Hier fokussiert
man eben auf die Systemperformance. Also man möchte eine ordentliche Auslastung, eine effiziente,
effektive Auslastung der Betriebsmittel haben. Man möchte dafür Sorge tragen, dass sich das System
rentiert, die hohen Anschaffungskosten. Das sind typischerweise Kriterien, die für die Großrechner
eher gelten als etwa für normale Personal Computer. Da reden wir bei den Großrechnern ja durchaus
von Millionen von Euro, die halt investiert werden müssten, um so ein größeres System dann zur
Verfügung zu stellen. Und da sollten sich dann schon die Anschaffungskosten dann in irgendeiner Form
halt rentieren. Und das bedeutet, dass man viel stärker auf Systemperformance wert liegt, also
systemorientierte Kriterien bei der Planung berücksichtigt als die anwendungsorientierten
Kriterien oder benutzerorientierten Kriterien. Nun sind es genau Ausschlusskriterien, die man halt
hier halt, also wir wollen jetzt nur benutzerorientiert schedulen oder nur systemorientiert.
Es ist insbesondere natürlich schon so, dass wenn man eine tolle, eine gute Systemperformance hat,
dann kommt es eigentlich jedem Benutzerprozess letztendlich auch zugute. Also die Kriterien,
die wir da halt haben, ergänzen sich denn durchaus in ihrer Wirksamkeit danach. Nun,
die Liste der benutzerorientierten Kriterien ist mal hier dargestellt. So typische Anforderungsmerkmale
sind sowas wie Antwortzeit, Durchlaufzeit, Termineinhaltung und Vorhersagbarkeit. Antwortzeit
bedeutet die Minimierung der Zeitdauer ab Auslösung eines Systemaufwuchs, bis man dann wieder praktisch
die Rückantwort bekommt. Also bis man aus dem Systemaufruf zurückkehrt, ist ein Punkt bei
gleichzeitiger Maximierung der Anzahl der interaktiven Prozesse. Dann die Durchlaufzeit, ja man möchte
wirklich die Zeitdauer vom Starten eines Prozesses, wo der dann mal so zugelassen wird im System,
bis zur Beendigung dann halt irgendwie minimieren im Endeffekt. Termineinhaltung, es gibt dann
Prozesse, wo klare Termine vorgegeben werden, wo dann klar ist, dass der Prozess zu einem
fest vorgegebenen Zeitpunkt starten muss oder beendet sein muss. Und dann Vorhersagbarkeit,
die Ausführung von solchen Prozessen sollte deterministisch geschehen und das sollte
unabhängig von jeweils vorliegenden Systemnass sein, was eine ziemlich schwierige Sache
denn halt darstellt. Je nach Anwendungsdomäne ist sozusagen die Bedeutung eines solchen Kriteriums
halt unterschiedlich gewichtet. Also gerade für interaktive Systeme sind Antwortzeiten extrem
wichtig, für Echtzeitsysteme sind sowas wie Termineinhaltung und auch die Vorhersagbarkeit
der Abläufe dann durchaus wichtig. Dann haben wir die systemorientierten Kriterien, das sind
wünschenswerte Anführungswerkmal wie Durchsatz, Prozesseauslastung, Gerechtigkeit im System bei
der Zuteilung von den Ressourcen, Dringlichkeiten und Lastausgleich. Durchsatz heißt eben, dass man
eben wirklich die Anzahl der Prozesse innerhalb einer Zeiteinheit, die man bearbeiten kann,
die man vollenden kann, dass man die möglichst maximieren möchte. Man möchte sozusagen den
Prozentanteil erhöhen oder maximieren, wo die CPU ausgelastet ist und dann halt sinnvolle Arbeit
leisten kann. Das gleiche gilt aber auch durchaus für die Auslastung von normalen Ausgabegeräten.
Das wäre der Bezug zur Prozesseauslastung gerecht. Ja, alle Prozesse sollten möglichst um die gleich
behandelt werden. Zuzusichern, dass wirklich jeder Prozess innerhalb einer bestimmten Zeit mal
irgendwann die CPU zugeteilt bekommt, dann kann man es so sein, dass man bestimmte Prozesse bevorzugt
bearbeiten muss. Die haben eine höhere Priorität, andere haben eine niedrige Priorität. Das bezieht
Presenters
Zugänglich über
Offener Zugang
Dauer
00:10:04 Min
Aufnahmedatum
2020-10-22
Hochgeladen am
2020-10-23 00:26:52
Sprache
de-DE