Puehlhofer Betriebsysteme1-1.pdf - von Petra Schuster
Puehlhofer Betriebsysteme1-1.pdf - von Petra Schuster
Puehlhofer Betriebsysteme1-1.pdf - von Petra Schuster
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
32 BETRIEBSSYSTEME<br />
Die Implementierung ist einfach: Die Prozesse werden in einer Liste geführt.<br />
Der erste rechnet, suspendierte Prozesse wandern an das Ende der Liste.<br />
Wichtige Frage: Wie lang soll das Quantum sein?<br />
Fazit: Falls das Quantum zu klein ist, sinkt wegen der häufigen<br />
Prozeßwechsel die Prozessorausnutzung, und falls das Quantum zu groß<br />
gewählt wurde, erhält man bei kurzen interaktiven Anfragen schlechte<br />
Antwortzeiten.<br />
3ULRULWlWV6FKHGXOLQJ<br />
Beim Prioritäts-Scheduling wird jedem Prozeß eine Priorität zugewiesen,<br />
und der ausführbereite Prozeß mit der höchsten Priorität wird ausgeführt.<br />
Damit verhindert wird, daß Prozesse mit einer hohen Priorität zu lange<br />
ausgeführt werden, erniedrigt der Scheduler die Priorität des gerade<br />
ausgeführten Prozesses bei jeder Unterbrechung.<br />
Prioritäten können statisch oder dynamisch vergeben werden.<br />
Prozesse werden häufig in Prioritätsklassen eingeteilt, wobei dann innerhalb<br />
der Klassen Round-Robin-Scheduling betrieben wird und Prioritäts-<br />
Scheduling nur zwischen den Klassen.<br />
6KRUWHVW-RE)LUVW<br />
Shortest-Job-Fist ist eine Strategie, die besonders gut bei Stapelaufträgen<br />
geeignet ist, bei denen die Ausführungszeiten im voraus bekannt sind.<br />
Sind alle Ausführungszeiten zu Beginn bekannt, ist Shortest-Job-First eine<br />
optimale Strategie und liefert minimale durchschnittliche Verweilzeiten.<br />
Shortest-Job-First ist nur bedingt auf interaktive Prozesse anwendbar, da<br />
diese kein festes Ausführungsmuster besitzen.<br />
Betrachtet man die Zeiten zwischen den Unterbrechungen eines interaktiven<br />
Prozesses als Auftrag, stellt sich die Frage, wie man dessen Bearbeitungszeit<br />
ermittelt.<br />
Ansatz: Man schließt <strong>von</strong> der Vergangenheit auf die Zukunft und nimmt<br />
immer den Prozess mit der kürzesten geschätzten Ausführungszeit.<br />
=ZHLVWXILJHV6FKHGXOLQJ<br />
Wenn nicht alle rechenbereiten Prozesse im Hauptspeicher Platz finden,<br />
müssen einige Prozesse auf den Hintergrundspeicher ausgelagert werden.<br />
Diese Situation hat sehr große Auswirkungen auf das Scheduling, da die Zeit<br />
für den Prozeßwechsel zu einem Prozeß, der auf dem Hintergrundspeicher