Prüfungsfach: Concurrent Systems

Prüfer: wosch, Beisitzer: Stefan

Athmosphäre/Stimmung: Schön entspannt, hat definitiv nicht die Nervosität gesteigert.

Besonderheit: Online-Prüfung aufgrund Corona und des LOCK-downs über BigBlueButton. Hat gut funktioniert, hätte Graphiktablet gehabt, aber die Konzepte haben sich auch ganz gut ohne Papier erklären lassen.


Fragen:

Was ist Nebenläufigkeit?

Wie können Programme so stattfinden, dass man nicht merkt, dass sie voneinander abhängig sind?

Welche Arten von Synchronisation gibt es da?

(Überleitung) Was macht denn blockierende Synchronisation aus?

Was für Arten von blockierender Synchronisation gibt es denn noch, ohne Locks?

Gut, jetzt aber wieder zurück zu Locks. Du hattest ja schon erwähnt, dass man mit einem Spinlock auf einer Variable spinnen kann… Ist das denn jetzt gut, weil kurz ist ja auch immer gut…

Welche Probleme hat man denn hier?

Wie geht das besser?

Was ist da jetzt das Problem?

Welches bekannte Verfahren steckt denn hinter dem Ticketlock?

Was ist denn das Ticketlock für ein Backoffverfahren?

So. In der Übung habt ihr dann ja noch was besseres implementiert - was ist denn das Problem bei dem Ticketlock und wie habt ihr das gelöst?

Gut, du hast jetzt gesagt da ist ne Queue drin. Die muss man ja auch synchronisieren, und ein Lock mit einem Lock implementieren ist ja auch doof…

Was ist denn das Konzept hinter nichtblockierend, was ist denn die Idee dahinter?

Zustand checken

Was kann dabei ein Problem sein / wie heißt das Problem?

Gegenmaßnahmen?

Wie bautgenerationenzaehler wie?

Und wie geht des noch…?

Kann man das auch in die oberen Bits kodieren?

(Diskussion, tldr: wosch war unzufrieden)


Bewertung: Sehr fair, kann man sich nicht beschweren ;)