Grundlagen der Betriebssysteme und Rechnernetze 2010

Aufgabe 1:

a) Kann es auf einem Einprozessorsystem parallele Prozesse geben? Begründen Sie Ihre Antwort!

b) Erklären Sie den Begriff Nebenläufigkeit und beschreiben Sie eine Vorgehensweise im Betriebssystem!

c) Gegeben war das C-Programm myfork.c

 int main(void) {
   pid_t child_pid = fork();
   printf("The result is: %d\n", child_pid);
   return EXIT_SUCCESS;
 }

Wie sieht die Ausgabe beim Ausführen des kompilierenden Programms aus, wenn währen der Ausführung folgende Informationen durch den ps-Befehl zur Verfügung stehen?

S UID PID PPID TTY TIME CMD
S 2060 13069 11139 pts/1 00:00:00 myfork
S 2060 13070 13069 pts/1 00:00:00 myfork

Aufgabe 2:

Gegeben war folgende Tabelle:

Prozess Ankunft Rechenzeit
P1 0 5
P1 0 2
P3 2 6
P4 3 4
P5 3 3

Es sollten 3 Gantt-Diagramme zu den Strategien Strategien FCFS, SJF und RoundRobin (Zeitscheibe=1) gezeichnet werden.

Es war jeweils auch die mittlere Verweilzeit, mittlere Wartezeit und mittlere Antwortzeit anzugeben.

Aufgabe 3:

a) Nennen Sie einen Vorteil von Pipes gegenüber Signalen und einen Nachteil von Pipes gegenüber Sockets.

b) Welche Art der IPC würden sie für folgende Szenarien empfehlen (und Begründung):

(1) Datenaustausch Mehrprozessmaschine zwischen einem Prozess und zwei von ihm erzeugten Threads

(2)Aufwecken eines schlafenden Prozesses

Aufgabe 4:

In einem Rechensystem mit 4 Seitenrahmen (anfangs leer) weise ein Prozess die folgende Sequenz von

Seitenzugriffen auf: 3, 2, 4, 1, 1, 4, 7, 3, 5, 1, 4, , 2, 3, 1

a) Es sollten die Seitenersetzungsstretegien Belady’s optimaler Algorithmus (BO) und FIFO angewendet werden und die Anzahl der Seitenfehler verglichen werden.

b) Ist BO praktisch in einem Betriebssystem möglich? (Begründen!)

Aufgabe 5:

Es soll die Bitfolge 1100 1111 1001 als Nutzdaten übertragen werden. Als Generatorpolynom werde x^^4+x+1 verwendet.

a) Welche Bitfolge wird gesendet?

b) Warum wird diese Bitfolge tatsächlich nicht so gesendet, warum ist eine Anpassung nötig? Geben Sie den tatsächlich gesendeten HDLC-FRame an.

c) Geben Sie je ein Beispiel für ein Protokoll der Sicherungsschicht an!

(1) Peer-zu-Peer Verbindung wird unterstützt

(2) ist ein Broadcast-Protokoll

Aufgabe 6:

Szenario eines Wohnhauses mit Aufzug. Es dürfen nur maximal 3 Personen gleichzeitig im Fahrstuhl sein.

Es gibt die Aktionen:

  • fahrstuhl_anfordern(Bewohner b)
  • in_fahrstuhl_einsteigen(Bewohner b)
  • etage_aussuchen(Bewohner b)
  • in_etage_fahren(Bewohner b)
  • aus_fahrstuhl_aussteigen(Bewohner b)

a) Es war eine Semaphorlösung gefragt, die sicher stellt, dass sich maximal 3 Personen im Fahrstuhl befinden.

b) Nun sollte zusätzlich zu den Bedingungen aus a) auch noch sichergestellt werden, dass immer nur eine Person durch die schmale Tür geht.

c) Der Fahrstuhl muss auch mal gewartet werden. Dann befindet sich der Monteur alleine im Fahrstuhl und es muss sichergestellt werden, dass sich kein Fahrgast im Fahrstuhl befindet. Der Monteur muss nicht bevorzugt behandelt werden. Für den Monteur soll es noch die Aktion warte_fahrstuhl(Monteur m ) geben.