|
|
@@ -5,4 +5,13 @@ Die CPU sollte 100% der Zeit in Nutzung sein, da wir beim Aufruf
|
|
5
|
5
|
angeben, dass 100% der ausgeführten Befehle CPU-Befehle sein sollen.
|
|
6
|
6
|
|
|
7
|
7
|
#### Aufgabe 2
|
|
|
8
|
+Zuerst werden vier CPU-Befehle in Prozess 0 ausgeführt. Danach ist Prozess 0 beendet, Prozess 1 bereitet sich auf I/O vor und braucht dafür eine CPU-Instruktion. Prozess 1 muss dann auf die Abwicklung des I/Os warten und tut deswegen vier Instruktionen lang nichts. Anschließend läuft eine leere Instruktion, in der weder I/O noch CPU arbeiten, weil die I/O-Instruktion beendet wurde. Wir gehen daher davon aus, dass die Ausführung der beiden Prozesse 10 Instruktionen braucht.
|
|
8
|
9
|
|
|
|
10
|
+#### Aufgabe 3
|
|
|
11
|
+Die Änderung der Reihenfolge der auszuführenden Prozesse hat zur Folge, dass die CPU auch rechnen kann, solange sie auf I/O wartet. Daher wird nur eine Instruktion zum Einleiten des I/Os benötigt, dann laufen vier Instruktionen, in denen sowohl CPU (für Prozess 1) und I/O (für Prozess 0) arbeiten, und abschließend vergeht noch eine leere Instruktion aufgrund des I/Os. Daher braucht die Ausführung in dieser Reihenfolge nur 6 Instruktionen.
|
|
|
12
|
+
|
|
|
13
|
+#### Aufgabe 4
|
|
|
14
|
+Mit dieser Flag wird die CPU nicht parallel zum I/O arbeiten können. Deswegen wird die Ausführung wie bei Aufgabe 2 ablaufen, jedoch werden die Prozesse vertauscht abgearbeitet, also ein Takt Einleitung des I/Os, vier Takte I/O und dann 4 Takte CPU.
|
|
|
15
|
+
|
|
|
16
|
+#### Aufgabe 5
|
|
|
17
|
+Der Ablauf wird genau der gleiche wie bei Aufgabe 3 sein, da per Standard beim Warten auf I/O zum anderen Prozess gewechselt wird.
|