23 - 10.6 Nichtsequentialität: Zusammenfassung [ID:23450]
28 von 28 angezeigt

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.

Teil eines Kapitels:
10.1 Nichtsequentialität

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

Einbetten
Wordpress FAU Plugin
iFrame
Teilen