Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Nebenläufigkeit Teil I Vortrag zum Seminar von Prof. Dr. Wolfgang Reisig: Systementwurf Am 16.06.2005Helmut Weidner-Kim

Ähnliche Präsentationen


Präsentation zum Thema: "Nebenläufigkeit Teil I Vortrag zum Seminar von Prof. Dr. Wolfgang Reisig: Systementwurf Am 16.06.2005Helmut Weidner-Kim"—  Präsentation transkript:

1 Nebenläufigkeit Teil I Vortrag zum Seminar von Prof. Dr. Wolfgang Reisig: Systementwurf Am Helmut Weidner-Kim

2 Nebenläufigkeit I 1. Nebenläufigkeit 2. Beschreibung durch einfachen Beobachter 3. Fairness 4. Formalisierung Inhaltsverzeichnis 2 Nebenläufigkeit II (Nachweis der Nebenläufigkeit)

3 1. Nebenläufigkeit Englisch: concurrency Wie der Name sagt: Mehrere Prozesse oder Threads nebeneinander Details der Implementierung wie Scheduling oder Mehrprozessorsytem sind für dieses Thema unwichtig Das System als black box, die nur von außen betrachtet werden kann Verhalten des Systems ist beobachtbar Frage: Wie muss ein Beobachter aussehen, der Nebenläufigkeit erkennt? 3

4 4 Darstellung Petrinetze können benutzt werden, um Neben- läufigkeit zu beschreiben Hier: alles mit Petrinetzen veranschaulicht Achtung: kompaktere Darstellung! Einfacher Fall, Synchronisation zusätzlich möglich t1 t2

5 2. Einfacher Beobachter Wird häufig benutzt Kann nur eine lineare Sequenz von Ereignissen registrieren Ereignisse sind atomare Zeitpunkte ohne Dauer 5

6 6 Darstellung Das eigentliche Petrinetz als black Box Ankunft von Marken in äußeren Zuständen zeigt Transition an Was Beobachter mit Marken macht, interessiert hier nicht

7 Nebenläufigkeit als Nichtdetermininismus 7 t1 t5 Verschiedene Reihenfolgen (je nach Ablauf): Möglich sind: (t1,t2,t3,t4,t5); (t1,t2,t4,t3,t5); (t1,t2,t4,t5,t3); (t1,t4,t2,t3,t5); (t1,t4,t2,t5,t3); (t1,t4,t5,t2,t3) Dies könnte beispielsweise mit temporaler Logik beschrieben werden t4 t3 t2

8 3. Fairness Idee: jeder kommt einmal dran Für unendliche Berechnungen reicht einmal nicht aus! Also: Jeder Prozess bzw. Thread kommt unendlich oft dran... (Voraussetzung für Nebenläufigkeit) 8

9 Grade der Fairness schwache Fairness (weak fairness, justice): starke Fairness (strong fairness): 9 Unparteilichkeit starke Fairness schwache Fairness Unparteilichkeit (impartiality):

10 Beispiele für Fairness: 1 10 Werden beide Prozesse fair behandelt? t4 t1 t3 t2 t1 t2 t1 t3

11 Beispiel für Fairness: 2 11 t1,t2,t3,t4,t3,t4,t3,t4,t3,t4,... wäre nicht fair Fairnessbedingungen φ 1, φ 2 können das verhindern t2t3t1 t4 φ1φ1 φ2φ2

12 Fairness ist nicht immer fair unfaires Beispiel: Betrachte Reihenfolge: t1,t2,t3,t4,t1,t2,t3,t4,t3,t4, t1,t2,t3,t4,t3,t4,t3,t4, … D.h.: 1x der linke, 1x der rechte, 1x der linke, 2x der rechte, 1x der linke, 3x der rechte, 1x der linke, 4x der rechte, 1x der linke, 5x … … immer 1x der linke, nx der rechte Verhältnis der zugewiesen Zeit für linken und rechten Prozess geht gegen 0 ! Trotzdem fair: beide kommen unendlich oft dran! 12 t2t3t1 t4 φ1φ1 Φ2Φ2

13 Sinn der Fairness Sondern: jeder Prozess hat die Chance zu terminieren Nicht: Jeder Prozess erhält gleich viel Zeit(-einheiten) Keine quantitative, sondern eine qualitative Aussage! 13

14 Formalisierung Zeitstruktur des Multiprozesses Aussage über Startzustände Eine Fairnessbedingung 14

15 Formalisierung mit temporaler Logik Zeitstruktur des Multiprozesses Aussage über Startzustände Eine Fairnessbedingung 15

16 Zusammenfassung (Nichtdeterminiertheit/Fairness) Nebenläufigkeit = Nichtdeterminiertheit der Reihenfolgen in der Programmausführung Einfacher Beobachter, erfasst die Sequenz der Nachrichten über Ereignisse im System Nebenläufigkeit erfordert Fairness: jeder Prozess darf terminieren (wenn er es kann) ohne Fairness keine echte Nebenläufigkeit 16

17 Literaturquellen mathworld.wolfram.com/ 17 E. Allen Emerson Temporal and Modal Logic Austin, 1995 G.D.Plotkin, V.R. Pratt Teams can see pomsets


Herunterladen ppt "Nebenläufigkeit Teil I Vortrag zum Seminar von Prof. Dr. Wolfgang Reisig: Systementwurf Am 16.06.2005Helmut Weidner-Kim"

Ähnliche Präsentationen


Google-Anzeigen