05.08.2013 Aufrufe

Cornelia Heinisch, Frank Müller-Hofmann, Joachim Goll ... - HSR-Wiki

Cornelia Heinisch, Frank Müller-Hofmann, Joachim Goll ... - HSR-Wiki

Cornelia Heinisch, Frank Müller-Hofmann, Joachim Goll ... - HSR-Wiki

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Threads 725<br />

gehört. Für einen Beobachter sieht es so aus, als würden alle Prozesse quasi<br />

parallel ablaufen. So gut sich diese Idee anhört, so aufwendig ist sie in der Praxis<br />

umzusetzen, denn:<br />

Ein Prozess darf ja gar nicht merken, dass er unterbrochen<br />

worden ist. Erhält er den Prozessor wieder zugeteilt, so muss der<br />

Prozess in genau derselben Weise weiterarbeiten, wie wenn er<br />

die ganze Zeit den Prozessor besessen hätte.<br />

Betriebssystem-Prozesse sind also in erster Linie ein Mittel zur Strukturierung von<br />

nebenläufigen Programmsystemen. Dabei kann man sich einen jeden Prozess als<br />

einen virtuellen Prozessor vorstellen.<br />

Prozesse können also<br />

• parallel von mehreren Prozessoren<br />

• oder in einer Folge sequenziell von einem Prozessor (quasiparallel)<br />

ausgeführt werden.<br />

Letztendlich ermöglicht ein Betriebssystem, das ein Prozesskonzept unterstützt und<br />

Betriebssystem-Prozesse als sogenannte virtuelle Betriebsmittel 142 zur Verfügung<br />

stellt, ein Multiplexen des Prozessors. Nach einer gewissen vorgegebenen<br />

Strategie erhalten die Prozesse abwechselnd den Prozessor, wobei sie, wenn sie<br />

den Prozessor wieder erhalten, nahtlos so weiterlaufen, als hätten sie den Prozessor<br />

nie abgegeben.<br />

Die ersten Betriebssysteme, die ein Prozesskonzept unterstützten, waren die Zeitscheiben-Betriebssysteme<br />

(Time Sharing Betriebssysteme), bei denen jeder Prozess<br />

abwechselnd vom Scheduler 143 eine bestimmte Zeitscheibe (Time Slice) lang den<br />

Prozessor zur Verfügung gestellt bekommt.<br />

Zeitscheibe<br />

C B A C B A C B A Prozessor<br />

abwechselnd gleich lange Zeitscheiben für jeden Prozess<br />

Bild 19-2 Abarbeitung der Prozesse A, B und C bei einem Time Sharing Betriebssystem<br />

Erhält ein Prozess zum ersten Mal eine Zeitscheibe, so beginnt er zu laufen. Ist das<br />

Ende der Zeitscheibe erreicht, so wird ihm der Prozessor entzogen (preemptive<br />

scheduling 144 ). Erhält er die nächste Zeitscheibe, so arbeitet er exakt an der Stelle<br />

weiter, an der er unterbrochen worden ist. Dies muss das Betriebssystem bewerkstelligen.<br />

142 Virtuell im Gegensatz zu dem physikalischen Betriebsmittel Prozessor.<br />

143 Der Scheduler ist eine Komponente des Betriebssystems, die den Prozessor nach einer vorgegebenen<br />

Strategie wie z.B. dem Zeitscheibenverfahren vergibt.<br />

144 Preemptive Scheduling bedeutet Scheduling durch Entzug des Prozessors. Ein paralleler Prozess<br />

kann nicht mitbestimmen, wann ihm der Prozessor entzogen wird, sondern das Betriebssystem<br />

ist in der Lage, den Prozessor gezielt nach einer Strategie dem Prozess zu entziehen.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!