4. theoretisches Aufgabenblatt
- Was sind atomare Operationen? (2 Pkt.)
- Was ist unter Betriebsmitteln zu verstehen? (2 Pkt.)
- Was ist ein Deadlock und welche Bedingungen müssen erfüllt sein, damit ein Deadlock auftreten kann? (3 Pkt.)
- Nenne zwei Beispiele für das Auftreten von Deadlocks, die nicht aus dem Bereich der Informatik stammen. Begründe deine Aussage. (3 Pkt.)
- Besteht die Möglichkeit einer Verklemmung bei nur einem Prozess? Begründe deine Aussage. (3 Pkt.)
- Worin besteht das Philosophenproblem und wie kann es gelöst werden? (3 Pkt.)
- Was versteht man unter dem Erzeuger-Verbraucher Problem? (3 Pkt.)
- Was sind Semaphoren und wie funktionieren sie? (3 Pkt.)
- Was sind sichere bzw. unsichere Zustände im Zusammenhang mit Deadlocks? (2 Pkt.)
- Beschreibe die zur Interprozesskommunikation genutzten Mechanismen Mailbox und Port. Wann werden sie verwendet und worin unterscheiden sie sich? (2 Pkt.)
-
Die zweigleisige Eisenbahnstrecke zwischen Kleinkleckersdorf und
Hintertupfingen soll endlich saniert werden. Dazu müssen die
Züge aus beiden Orten einen Teil der Strecke auf einem Gleis
zurücklegen.
Weil der Weichenwärter am Fernstudium der Informatik teilnimmt,
weiß er, da er Kollisionen und Entgleisungen verhindern kann,
wenn er die eingleisige Teilstrecke mit einer Semaphorvariablen
schützt.
Zunächst aber beschreibt er das Verhalten der Züge mit den
folgenden Funktionen:
Wie sehen die Prozessevoid nachHintertupfingen () void nachKleinkleckersdorf () { { fahre ("Hintertupfingen"); fahre ("Kleinkleckersdorf"); } }
void nachHintertupfingen()
undvoid nachKleinkleckersdorf()
aus, wenn die eingleisige Teilstrecke mit einer Semaphorvariablen geschützt wird? (Anmerkung: die Stellung der Weichen ergibt sich unmittelbar daraus, welcher Zug die eingleisige Strecke befährt und muss nicht extra beschrieben werden.) (4 Pkt.)