5 - 9.5 Einplanungsgrundlagen: Gütemerkmale der Prozesseinplanung [ID:21689]
91 von 91 angezeigt

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

sich auf Dringlichkeiten von Prozessen, die man denn betrachtet. Naja, und dann Betriebsmittel

möglichst gleichmäßig auslassen. Das ist der Aspekt des Lastausgleichs, den wir halt hier haben.

Diese wünschenswerten Anforderungsmerkmale, die man auf der Systemebene als systemorientierten

Kriterien umsetzen möchte, die sollten natürlich dann immer möglichst verträglich zu dem jeweiligen

Anwendungsdomäne ausgelegt sein. Es gibt eine Beziehung zwischen den Betriebsarten und diesen

Kriterien, die wir gerade betrachtet haben. Man kann durchaus sagen, dass damit eben auch eine

Prozess Einplanung, die sich nach bestimmten Kriterien orientieren muss, damit letztendlich

auch eine bestimmte Rechnerbetriebsart impliziert. Das gilt auch umgekehrt. Allgemein würde man sagen,

dass Gerechtigkeit und Lastausgleich Kriterien sind, die für alle Formen von Rechnerbetrieb

eigentlich gelten sollten. Viel wichtiger dabei eigentlich noch die Durchsetzung der jeweiligen

Strategie. Es macht wenig Sinn, sich für ein Kriterium zu entscheiden, daraufhin eine bestimmte

Einplanungsstrategie maßzuschneiden. Dann stellt man fest, durch bestimmte andere Maßnahmen innerhalb

des Rechensystems ist man nicht in der Lage, genau diese jeweilige Strategie, die, sagen wir mal,

zur bestimmten Gerechtigkeit vorsieht, durchzusetzen. Wir werden sowas später sehen. Da sehen wir

bestimmte Operationen, die auf der Synchronisationsebene von Prozessen problematisch

sein könnten, gerade vor dem Hintergrund einer bestimmten Einplanungsstrategie. Beim Stapelbetrieb,

da steht sowas wie Durchsatz, Durchlaufzeit und Prozesserauslastung im Vordergrund. Beim

Dialogbetrieb, da steht die Antwortzeit im Vordergrund. Beim Echtzeitbetrieb steht sowas

wie Dringlichkeit, Termineinhaltung, Vorhersagbarkeit im Vordergrund. Und wenn man sich denn diese

Dinge dann anschaut, also gerade Dringlichkeit, Prioritäten, dann hat man hier ganz klare Konflikte

mit solchen allgemeinen Aspekten wie Gerechtigkeit und lasst das gleich generell, muss man sagen,

Echtzeitbetrieb ist unfair. Echtzeitbetrieb geht immer zulasten der weniger dringlicheren als

dringlich eingestuften Prozesse. Manchmal ist es dann eine gewisse Form von Willkürlichkeit,

wie denn Prozesse halt als dringlich eingestuft werden oder nicht. Es ist aber auch wichtig,

Prozesse mit einer höheren Dringlichkeit abzuarbeiten, wenn es dann zum Beispiel darum

geht, bestimmte externe Vorgänge Maschinen zu steuern. Da muss man sich ja nach den Vorgaben

richten, die aus der Umgebung kommen, da kann man sich nicht so einfach immer nur strikt

danach orientieren, was innerhalb eines Rechensystems veranschreitet. Wir haben noch andere eigentlich

magische Effekte, die möglicherweise eine Rolle spielen könnten, wenn es denn darum geht,

eine Einplanungsstrategie zu realisieren und die Proportionalität der Entscheidungen,

die da sozusagen getroffen werden. Es gibt durchaus Fälle, wo man dann, sagen wir mal,

für bestimmte Prozesse im Laufzeitverhalten simuliert, was überhaupt ja nicht zu den

entsprechenden technischen Leistungsvermögen des Rechensystems entspricht. Also man lässt

Prozesse vielleicht bewusst langsamer ablaufen aus Gründen der Nutzerakzeptanz, weil vielleicht es

um Benutzer geht, die kennen sozusagen ihre Anwendungsfälle und wissen, unter welchen

zeitlichen Abläufen die korrekte Ergebnisse liefern und sind ein bisschen, sehen Bedenken,

wenn man dann feststellt, dass dann plötzlich die ganzen Aktionen viel zu schnell stattfinden. Es

gibt tatsächlich Beispiele, wo man dann halt Systeme derart baut, dass man praktisch einfach,

um eine bessere Nutzerakzeptanz zu erzielen, einfach bestimmte Aktionen innerhalb eines

Rechensystems langsamer ablaufen lässt. Das ist nicht der Regelfall, aber auch solche Situationen

findet man hin und wieder.

Teil eines Kapitels:
9.1 Einplanungsgrundlagen

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

Einbetten
Wordpress FAU Plugin
iFrame
Teilen