Ja, da sind wir schon bei der Zusammenfassung. Ein Resümee. Nun, wir haben Nebenläufigkeitsaspekte
betrachtet und erkannt, dass Nebenläufigkeit eben von einer unabhängigen Prozesse voraussetzt. Es
sind dann also Prozesse, die nicht kausal von gewissen Ereignissen abhängig sind. Das heißt,
zwischen den Prozessen besteht dann keine Daten- oder eben durch Zeitabhängigkeit. So eine
gleichzeitig abhängigen Prozesse demgegenüber, die implizieren dann aber die Koordinierung. Das
ist also dann die Kooperation und die Konkurrenz zwischen Prozessen, die wir dann in dieser
Abhängigkeit denn sehen und dann müssen wir die Koordinierung in geeigneter Art und Weise
durchführen. Das kann dann analytisch oder konstruktiv geschehen und wir werden halt in
der Veranstaltung und im weiteren Verlauf bevorzugt die Konstruktiven, die expliziten
Techniken betrachten. Synchronisation ist ein großes Thema. Es gibt sehr viele Ansätze und
Techniken. Wir haben einen Teil davon schon ein bisschen angerissen. Wir haben die unterschiedlich
klassifiziert, je nach Auswirkung zum Beispiel auf die beteiligten Prozesse. Wir haben gesagt,
die wirken einseitig oder mehrseitig diese Techniken oder sie sind unterdrückend blockierend
oder nicht blockierend oder sie sind behinderungs- sperr- oder wartefrei. Die Wirkung auf Prozesse.
Sie werden aber auch klassifiziert nach der Ebene innerhalb des Rechensystems und das wird
dann so der Schwerpunkt in den weiteren Vorlesungen sein. Wir arbeiten uns da von oben nach unten,
wenn man so will, runter. Auf der Hochsprachenebene haben wir typischerweise Bedingungsvariablen und
Monitore, die auch von den Sprachen und von Copilern unterstützt werden. Auf der Maschinenprogramm-
Ebene haben wir sowas wie Verdrängungssteuerung und ein Zimmer vor als typische Mechanismen. Und wenn
wir auf der Befehlsetzebene sind, da kennen wir sowas wie Schlossvarianten oder eben Spezialbefehle,
die dann für sowas wie nicht blockierende Synchronisation verwendet werden, die uns die
CPU dann direkt anbietet. Das schauen wir uns jetzt nach und nach in den nächsten Vorlesungsstunden
dann jeweils an. Fortschrittsgarantien sind wichtig. Die leiten sich aus den Synchronisationsverfahren
halt ab und sagen denn etwas aus über die Lebendigkeit unserer nicht sequenziellen Programme
oder die Ausführung solcher Programme. Lebendigkeit von den Prozessen, die denn letztendlich durch
solche nicht sequenziellen Programme gesteuert werden, wenn man so will. Koordination von
Konkurrenz, das ist das, was Synchronisation konkret ausmacht. Und so wollen wir Synchronisation
auch im Weiteren hier verstehen.
Presenters
Zugänglich über
Offener Zugang
Dauer
00:03:10 Min
Aufnahmedatum
2020-11-10
Hochgeladen am
2020-11-11 00:38:40
Sprache
de-DE