Du befindest dich hier: FSI Informatik » Prüfungsfragen und Altklausuren » Hauptstudiumsprüfungen » Lehrstuhl 4 » Concurrent Systems Exam 2021-04-09

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige ÜberarbeitungVorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
Letzte ÜberarbeitungBeide Seiten, nächste Überarbeitung
pruefungen:hauptstudium:ls4:cs-2021-04-09 [09.04.2021 17:24] Marcel[Inf]pruefungen:hauptstudium:ls4:cs-2021-04-09 [09.04.2021 20:12] Marcel[Inf]
Zeile 1: Zeile 1:
-====== Concurrent Systems Prüfung 2021-04-09 ======+====== Concurrent Systems Exam 2021-04-09 ======
  
 {{indexmenu>:pruefungen:hauptstudium:ls4:cs-2021-04-09#1|navbar}} {{indexmenu>:pruefungen:hauptstudium:ls4:cs-2021-04-09#1|navbar}}
Zeile 48: Zeile 48:
 > * Beispiel 1: Programm nutzt BS-Primitiven (z. B. Sperren) um zu blockieren. => Zur Ausführung gibt der kernel-level Prozess (d.h. Prozess auf BS-Ebene) die Kontrolle ab; kernel-level Prozesszustand wechselt zu "blockiert": > * Beispiel 1: Programm nutzt BS-Primitiven (z. B. Sperren) um zu blockieren. => Zur Ausführung gibt der kernel-level Prozess (d.h. Prozess auf BS-Ebene) die Kontrolle ab; kernel-level Prozesszustand wechselt zu "blockiert":
 > * Beispiel 2: Programm nutzt in Anwendungssoftware kodierte Umlaufsperren um zu blockieren. => Zur Ausführung gibt der Anwendungsprozess die Kontrolle ab, der kernel-level Prozess aber nicht. > * Beispiel 2: Programm nutzt in Anwendungssoftware kodierte Umlaufsperren um zu blockieren. => Zur Ausführung gibt der Anwendungsprozess die Kontrolle ab, der kernel-level Prozess aber nicht.
 +
 +  * Was für Techniken gibt es für blockierende Synchronisation?
 +
 +> Sperren, Semaphore, Mutexe
 +
 +  * Was ist der Unterschied zwischen Mutexe und Semaphore?
 +
 +> Mutexe sind Methoden zur Sicherstellung wechselseitigen Ausschlusses [siehe Anhang des Foliensatzes zu Mutexe zum Thema Mutexe vs. Mutexentitäten]. Mutexentitäten sind Objekte mit einer `acquire` und einer `release`, wobei `release` überprüft, ob der aufrufende Prozess auch der war, der `acquire` vorher vollendet hatte. Allgemeine Semaphore können für unilaterale Synchronisation eingesetzt werden, typischerweies innerhalb des Produzenten-Verbraucher-Musters. Hierbei kann der Produzent nach dem Produzieren neuer Daten das Signal, dass neue Daten verfügbar sind, absetzen, indem er `V` aufruft. Und der Konsument kann auf den Erhalt dieses Signals synchronisieren, indem er `P` aufruft. Spezialisiert mensch den allgemeinen Semaphor auf den Wertebereich `{0, 1}` zu einem binären Semaphor und fügt einen Autorisierungsprüfung um `V` herum hinzu, so erhält mensch eine Mutexentität.
  
   * Nachteile von blockierender Synchronisation?   * Nachteile von blockierender Synchronisation?
Zeile 65: Zeile 73:
   * Welche der 4 Bedingungen entkräftet Verklemmungsvermeidung?   * Welche der 4 Bedingungen entkräftet Verklemmungsvermeidung?
  
-Nur (iv) zirkuläres Warten.+Nur (iv) zirkuläres Warten.
  
   * Was ist der Unterschied zwischen Verklemmungsvorbeugung und Verklemmungsvermeidung?   * Was ist der Unterschied zwischen Verklemmungsvorbeugung und Verklemmungsvermeidung?
Zeile 73: Zeile 81:
   * Was gibt es neben den beiden noch?   * Was gibt es neben den beiden noch?
  
-Wir können die Flinte ins Korn werfen und Verklemmungserkennung betreiben -- d.h. reagieren wenn es eigentlich schon zu spät ist.+Wir können die Flinte ins Korn werfen und Verklemmungserkennung betreiben -- d.h. reagieren wenn es eigentlich schon zu spät ist.
  
   * Wie genau funktioniert Verklemmungserkennung? Was muss das BS alles machen dafür?   * Wie genau funktioniert Verklemmungserkennung? Was muss das BS alles machen dafür?