next up previous contents
Next: Prozesszustand Up: Prozesse Previous: Prozesse   Contents

Einführung

In modernen Computersystemen ist es möglich verschiedenen Dinge (scheinbar) gleichzeitig zu erledigen. Beispielsweise kann während Daten an ein Terminal oder einen Drucker übertragen werden, bereits ein weiteres Anwenderprogramm gestartet werden. Wenn das Computersystem nur einen Prozessor besitzt, so muss zwischen den verschiedenen Anwendungen hin- und hergeschaltet werden. Der Benutzer bekommt somit den Eindruck einer parallelen Verarbeitung. Für die Kontrolle dieses Ablaufs ist das Betriebssystem verantwortlich. Man nennt dieses schnelle Hin- und Herschalten zwischen verschiedenen Prozessen Mehrprogrammbetrieb oder Multitasking.

Das Betriebssystem teilt die verschiedenen auszuführenden Programme und oft auch das Betriebssystem selbst in einzelne Prozesse auf. Ein Prozess ist ein in Ausführung befindliches Programm, einschließlich des zugehörigen Programmzählers, der Variablen und des Laufzeitstapels. Das Betriebssystem entscheidet nun welcher Prozess im Moment zur Ausführung kommt. In Abbildung [*] werden vier Prozesse A, B, C, D scheinbar gleichzeitig ausgeführt. Jeder Prozess hat aber in Wirklichkeit immer abwechselnd den Prozessor zur Verfügung.

Figure: Aktive Prozesse
\begin{figure}\begin{center}
\epsfxsize6cm
\epsfbox{prozess}
\end{center}\end{figure}

Es wird dabei vom Betriebssystem nicht garantiert, dass jeder Prozess immer die gleiche Rechenzeit bekommt. Daher darf man keine Annahmen über den zeitlichen Verlauf im Mehrprogrammbetrieb machen. Beispielsweise ist es sinnvoll einem Prozess der auf ein bestimmtes Signal eines I/O-Gerätes wartet (z.B. Startsignal von einem Magnetband) den Prozessor solange zuzuordnen bis das Signal erreicht wurde, weil sonst möglicherweise das I/O-Geräte wieder von Neuem gestartet werden muss.



Subsections
next up previous contents
Next: Prozesszustand Up: Prozesse Previous: Prozesse   Contents
Prof. Dr. Pluemicke 2003-05-10