20 - 10.3 Nichtsequentialität: Nebenläufige Systeme [ID:23446]
50 von 184 angezeigt

Schauen wir uns zunächst einmal an, was mit dem Kausalitätsprinzip gemeint ist, was Kausalität

eigentlich bedeutet. Da werden wir sehen, dass es um die Frage der Parallelisierbarkeit von

Aktionen geht, wie eine Kausalordnung innerhalb von Programmen oder Anweisungen zu sehen ist und was

die Bedeutung von Aktionsfolgen eigentlich ist. Nun, solche nebenläufigen Aktionen sind Dinge,

die dann erst dann möglich sind, wenn sie praktisch durch ein nicht sequenzielles Programm

beschrieben worden sind. Das ist der große Unterschied zum Begriff des sequenziellen

Programms, wo man sagen kann, dass immer jede Anweisung im Endeffekt strikt nur

nacheinander stattfindet. Wenn wir Nebenläufigkeit erreichen wollen, dann müssen wir weg von dem

sequenziellen Programm hin zu dem nicht sequenziellen Programm, sodass wir dann halt eine Möglichkeit

besitzen, mehr als eine Aktion zugleich ablaufen lassen zu können. Die Nebenläufigkeit beschreibt

dann eben auch so ein Verhältnis von, wie man sagt, nicht-kausal abhängigen Ereignissen. Das

sind dann also Ereignisse, die sich nicht beeinflussen. Schauen wir uns mal an diesem Beispiel hier an,

an diesen einfachen fünf Programmzeilen. Da haben wir zum Beispiel hier die Aktion der Zuweisung in

der Zeile 1 und die Aktion der Zuweisung in der Zeile 2. Diese beiden Aktionen können

nebendräufig zueinander stattfinden, weil letztendlich die Zuweisung unterschiedliche

Ereignisse repräsentiert. Hier zum Beispiel konkret eben unterschiedliche Variablen betreffen,

die miteinander nichts zu tun haben. Jedenfalls in diesem Moment, wo wir die Zeilen 1 und 2 betreffen.

Dann haben wir die Zeilen 3 und 4, die hier interessant sind. Hier können wir sagen,

dass die Aktion der Zuweisung, wie auch die Aktion der Addition in Zeile 3, wie auch in

Zeile 4 zueinander nebendräufig stattfinden können. Aber man sieht halt bereits, dass praktisch die

Aktionen in Zeile 3 oder die Aktionen in Zeile 4 nicht nebendräufig zu 1 und 2 stattfinden können,

denn die variablen Funbaren müssen mit Werten vorbelegt werden können, damit wir überhaupt

erst die Addition durchführen können. Hier haben wir denn durchaus aufgrund der Logik des Programms

eine gewisse Sequenz zu sehen, die dann einzuhalten. Das Gleiche gilt in Bezug auf Zeile 5. Hier wurde

dann praktisch diese Anweisung, also die Aktion der Zuweisung, wie auch die Addition, jetzt dann

durchführbar wäre, wenn praktisch alle anderen Anweisungen abgelaufen sind. Nun in logischer

Hinsicht sind denn so eine Aktionen eben immer nur dann potenziell nebendräufig, wenn eben keine das

Resultat der anderen benötigt. In physischer Hinsicht bedeutet es, dass man praktisch für jede

dieser Aktionen, die wir gerade gesehen haben, eigentlich einen eigenen Aktivitätsträger benötigen,

der dann letztendlich eigentlich autonom agieren kann. Dieser Aktivitätsträger kann Fred sein,

kann Prozess sein im Endeffekt. So, Kausalität beschreibt dann die Beziehung zwischen der Ursache

und der Wirkung in Bezug auf wenigstens zwei Ereignissen. Das ist dann praktisch die ursächliche

Verbindung zwischen diesen Ereignissen. Und wir sagen, dass diese Ereignisse dann eben genau dann

nebendräufig stattfinden können oder auftreten, wenn eben keines Ursache des jeweiligen anderen

Ereignisses ist. Hier mal grafisch ein bisschen dargestellt oder vertieft, wie die Beziehung

zwischen dieser Ursache und Wirkung bezogen auf ein bestimmtes Ereignis zu sehen ist. Das ist das

Ereignis EI. Da haben wir jetzt hier, sagen wir mal, drei Prozesse A, B, C, die in ihrem jeweiligen

Verlauf Ereignisse generieren. Hier der A generiert ein Ereignisrecht zum Anfang, der Prozess B

generiert Ereignisse, Prozess C generiert Ereignisse, die immer jeweils durch diesen

schwarzen Kasten halt dargestellt sind. Wir sehen hier eine bestimmte Beziehung zwischen Ereignis

von Prozess A und Ereignisse von Prozess B. Das soll eine Ursache Wirkung Beziehung sein. Wir sehen

auch durchaus eine gewisse logische Beziehung innerhalb der einzelnen Programmsequenzen eines

Prozesses, indem wir sehen, dass bestimmte Ereignisse, wie hier zum Beispiel das zweite

Ereignis von Prozess B von der Logik des Programmablaufs erst implizit nach dem ersten

Ereignis stattfinden würde. Das gleiche gilt bei A und bei B in der Situation. Und all diese

Ereignisse, die jetzt hier in diesem rot unterlegten Bereich sind, die müssen dann stattgefunden haben,

damit einfach das Ereignis EI stattfinden kann. Das heißt, die Ursache von EI sind dann praktisch

all die Ereignisse, die in der Vergangenheit relativ zu EI stattgefunden haben. Wenn EI stattgefunden

hat, dann wirkt es. Dann kann das Ereignis eine gewisse Wirkung auf die weiteren Verläufe dieser

Prozesse ABC haben. Wir sehen also dann hier weitere Ereignisse, die dann daraufhin generiert

Teil eines Kapitels:
10.1 Nichtsequentialität

Zugänglich über

Offener Zugang

Dauer

00:19:16 Min

Aufnahmedatum

2020-11-10

Hochgeladen am

2020-11-11 03:48:28

Sprache

de-DE

Einbetten
Wordpress FAU Plugin
iFrame
Teilen