4.5 Aufgaben zum Kapitel Prozessverwaltung

[gesichtete Version][gesichtete Version]
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 233: Zeile 233:
<p>
<p>
<loop_area type="task">
<loop_area type="task">
<loop_task title="">
<loop_task title="Aktives Warten mit while">
<p>
<p>
Um bei mehreren Prozessen mit gemeinsam genutzten Betriebsmitteln kritische Abschnitte so zu schützen, dass immer nur maximal ein Prozess zur Zeit diesen kritischen Abschnitt ausführen darf, soll das aktive Warten eingesetzt werden.
Um bei mehreren Prozessen mit gemeinsam genutzten Betriebsmitteln kritische Abschnitte so zu schützen, dass immer nur maximal ein Prozess zur Zeit diesen kritischen Abschnitt ausführen darf, soll das aktive Warten eingesetzt werden.
Zeile 247: Zeile 247:
</p>
</p>


<br />
== Aufgabe 18 ==
<p>
<loop_area type="task">
<loop_task title="TSL">
<p>
Wofür steht die Abkürzung TSL (im Kontext der Prozesssynchronisation)?
</p>
</loop_task>
</loop_area>
</p>
<br />
== Aufgabe 19 ==
<p>
<loop_area type="task">
<loop_task title="Aufgaben des TSL-Befehls">
<p>
Erläutern Sie, welche Aufgabe der TSL-Befehl bei der Ausführung auf einer CPU erfüllt.
</p>
</loop_task>
</loop_area>
</p>
<br />
== Aufgabe 20 ==
<p>
<loop_area type="task">
<loop_task title="Aktiv warten mit TSL">
<p>
Welches Problem löst der TSL-Befehl in Zusammenhang mit aktivem Warten?
</p>
</loop_task>
</loop_area>
</p>


<div class="autoit_do_not_print">
<div class="autoit_do_not_print">

Version vom 30. Januar 2015, 19:17 Uhr

Aufgaben zum Kapitel Prozessverwaltung


Aufgabe 1

Aufgabe

Skizzieren Sie in einem Schaubild die drei grundlegenden Prozesszustände und die jeweils möglichen Zustandsübergänge. Geben Sie für alle Zustandsübergänge jeweils den Grund des Zustandswechsels an.


Aufgabe 2

Aufgabe

Bei welcher Art von Schedulingstrategien ist auch ein direkter Übergang vom Prozesszustand "rechnend" zum Prozesszustand "bereit" möglich?


Aufgabe 3

Aufgabe

Grenzen Sie die Begriffe Programm, Prozess, Prozesskontext und Prozesszustand gegeneinander ab und erklären Sie diese.


Aufgabe 4

Aufgabe

Erläutere zwei Dinge, die bei einem Kontextwechsel auf der CPU erledigt werden müssen.


Aufgabe 5

Aufgabe

Welcher grundlegende Befehl steht unter Unix/Linux für die Erzeugung eines neuen Prozesses zur Verfügung? (Nennen Sie nur den Befehl.)

Durch die Ausführung dieses Befehls entsteht aus dem Eltern-Prozess ein Kind-Prozess. An welcher Stelle beginnt anschließend die Abarbeitung des Kind-Prozesses (sobald er die CPU zugeteilt bekommt)?


Aufgabe 6

Aufgabe

Nenne fünf Informationen, die vom Betriebssystem für einen Prozess in seinem zugehörigen Prozesskontrollblock verwaltet werden.


Aufgabe 7

Aufgabe

Jeder Prozess besitzt seinen eigenen Prozesskontrollblock. Wie nennt man die Datenstruktur, in der alle Prozesskontrollblöcke zusammengefasst werden?


Aufgabe 8

Aufgabe

Erläutere den Unterschied zwischen einem Scheduler und einem Dispatcher.


Aufgabe 9

Aufgabe

Nenne drei Ziele, die ein Scheduling-Algorithmus verfolgen sollte.

Erläutere, inwieweit ein gleichzeitiges Erreichen der genannten Ziele realistisch ist.


Aufgabe 10

Aufgabe

Wofür stehen die Abkürzungen FCFS, SJF, SRTN, RR, PS im Kontext des Scheduling?


Aufgabe 11

Aufgabe

Diskutieren Sie die Vor- und Nachteile der Scheduling-Strategien SJF und FCFS.


Aufgabe 12

Aufgabe

Erläutern Sie in Bezug auf Scheduling, warum das Round-Robin-Verfahren nicht die Nachteile des FCFS-Verfahrens hat.


Aufgabe 13

Aufgabe

Erläutere den Unterschied zwischen "preemptive" und "non-preemptive" in Bezug auf Scheduling-Strategien.


Aufgabe 14

Aufgabe

Betrachte die Scheduling-Verfahren FCFS, SJF, RR und PS.
Welche dieser Verfahren sind preemptive, welche sind non-preemptive?


Aufgabe 15

Aufgabe

Gegeben seien fünf Prozesse P1, P2, P3, P4 und P5 mit den Gesamtrechenzeiten 2, 3, 6, 10 und 19 Zeiteinheiten, die quasi gleichzeitig zum Zeitpunkt 0 am System eintreffen. Gehen Sie davon aus, dass die Reihenfolge des Eintreffens (bei kaum wahrnehmbaren zeitlichen Unterschieden) P4, P1, P5, P3, P2 lautet. Es gibt keine Unterscheidung unterschiedlicher Prioritäten.

Skizzieren Sie für diese Situation wann welcher Prozess bearbeitet wird für die Schedulingstrategien FCFS, SJF, SRTN und RR. Gehen Sie für die preemptive(n) Strategie(n) von einer Zeitscheibe der Länge 2 Zeiteinheiten aus.

(Hinweis: Diese Aufgabe ist so gemeint, dass zum Zeitpunkt 0 bereits alle Prozesse im Zustand "bereit" auf eine Zuteilung der CPU warten.)


Aufgabe 16

Aufgabe

Betrachte die Prozesse A bis E, welche mit unterschiedlichen Prioritäten versehen sind. Die Rechenzeit ist schon im Voraus bekannt, siehe folgende Tabelle.

Welche Ausführungsreihenfolge ergibt sich beim Priority-Scheduling, wenn zusätzlich mit einem Zeitquantum von einer Zeiteinheit (ZE) gearbeitet wird?

Prozess A B C D E
Rechenzeit (ZE) 12 7 4 8 10
Priorität   Mittel     Niedrig     Hoch     Hoch     Mittel  

Hinweis: Alle Prozesse sind zum Startzeitpunkt bereit und können sofort die CPU übernehmen. Die Priorität der Prozesse ändert sich nicht, bei gleicher Priorität ist die Round-Robin-Strategie anzuwenden.


Aufgabe 17

Aufgabe

Um bei mehreren Prozessen mit gemeinsam genutzten Betriebsmitteln kritische Abschnitte so zu schützen, dass immer nur maximal ein Prozess zur Zeit diesen kritischen Abschnitt ausführen darf, soll das aktive Warten eingesetzt werden. Zur Realisierung des aktiven Wartens kann eine while-Schleife genutzt werden.

Geben Sie den für das aktive Warten nötigen Programmcode an, der zu Beginn bzw. am Ende eines kritischen Abschnitts ausgeführt werden muss.

Erläutern Sie warum das aktive Warten einen zeitlichen Nachteil mit sich bringt, und unter welcher Bedingung dieser Nachteil in Kauf genommen werden kann.


Aufgabe 18

Aufgabe

Wofür steht die Abkürzung TSL (im Kontext der Prozesssynchronisation)?


Aufgabe 19

Aufgabe

Erläutern Sie, welche Aufgabe der TSL-Befehl bei der Ausführung auf einer CPU erfüllt.


Aufgabe 20

Aufgabe

Welches Problem löst der TSL-Befehl in Zusammenhang mit aktivem Warten?