Du befindest dich hier: FSI Informatik » Prüfungsfragen und Altklausuren » Hauptstudiumsprüfungen » Lehrstuhl 4 » Diplomprüfung Betriebssysteme/Verteilte Systeme, April 2008   (Übersicht)

Diplomprüfung Betriebssysteme/Verteilte Systeme, April 2008

Prüfer: Wolfgang Schröder-Preikschat, Beisitzer: Daniel Lohmann

Allgemeines

  • Entspannte Atmosphäre, netter Prüfer
  • Wurde gefragt, mit welchem Bereich ich anfangen möchte
  • Wenn man Zeit zum Nachdenken benötigt, sollte man das anmerken, wosch fängt schnell an Tips zu geben
  • Man meint gar nicht, wie schnell die Zeit rumgeht! :-)

BS

  • Ausgangsituation: Anwendung führt ein read() aus, um Zeichen von einer Tastatur einzulesen → siehe A6 aus der Übung
  • Habe den Ablauf des System Calls (Trap, Betriebsmittel Tastaturpuffer mit Semaphor verwalten…) erklärt
  • Welche Operationen hat ein Semaphor, wie funktionieren die, sind sie unkritisch?
  • Ziemlich aus dem Konzept gebracht hat mich die Frage „Synchronisieren sie V() doch mal bitte falsch“. Lief darauf hinaus, dass ein V() ja auf der Unterbrechungsebene ausgeführt wird und ein Mutex hier blockieren kann (run-to-completion).
  • Noch ein paar Detailfragen zur Synchronisation, an die ich mich aber nicht mehr erinnern kann. Hier also fit sein!
  • Wenn ein blockierter Faden mit einem wakeup-call geweckt wird, wo in der Schedulerqueue wird er dann eingehängt? → abhängig von Strategie; sollte dann zu FCFS und SRTF sagen, wo die eingehängt werden

VS

  • Wie funktioniert ein Fernaufruf? → Habe ich anhand einer foo(int i)-Schnittstelle skizziert
  • Stellt die Parameterübergabe in dem Fall ein Problem dar? → nein, weil call by value
  • Machen se doch mal n Problem draus! → Habe daraus dann foo(int *i) gemacht und was zu Ein/Ausgabeparameter und IDL gesagt
  • Was kann sich hinter dem *i hier denn alles verbergen? → Zeiger auf einen int oder Feld unbekannter Größe
  • Wie könnte man das Problem lösen? → Smart Pointer mit Rückruf erläutert
  • Probleme beim Rückruf? → Deadlock wegen remote invocation send
  • Lösung des Problems? → Rückrufserver oder synchronization send
  • Welche Probleme können hier beim synchronization send entstehen? → Empfangen der Antwort explizit mit receive. send und receive bilden einen kritischen Abschnitt; bin ich nich draufgekommen
  • Unterschiede zw. diversen Fernaufrufsemantiken (maybe, at least once, at most once)