Aufgabe zu Petri-Netzen - Lösung gesucht

Hallo zusammen,

ich habe hier eine Aufgabe zu Petri-Netzen:

Aufgabe 4
Gegeben seien 2 Prozesse P1 und P2 und 2 Dateien D1 und D2.
P1: belegt und sperrt nacheinander D1 und dann D2,
P2: belegt und sperrt nacheinander D2 und dann D1.

a) Beschreiben Sie eine Folge von Aktivitäten der Prozesse P1 und P2, die zum Deadlock führen kann.

c) Modellieren Sie die Interaktion zwischen beiden Prozessen mit Hilfe eines einfachen Petri-Netzes so, dass beim Zugriff auf die beiden Dateien kein Deadlock auftreten kann. Versehen Sie das Netz mit einer geeigneten Anfangsmarkierung, so dass es nicht zum Deadlock kommen kann.

  • Zum einen verstehe ich die Aufgabestellung nicht ganz, es steht darin nichts von einer Freigabe der Dateien nachdem sie gesperrt worden sind. Das muss doch in jedem Fall zu einem Deadlock führen oder?- Wie sieht das Petri-Netz aus Aufgabe 4 aus?

Vielen Dank.

Hallo,

ich habe hier eine Aufgabe zu Petri-Netzen:

Aufgabe 4
Gegeben seien 2 Prozesse P1 und P2 und 2 Dateien D1 und D2.
P1: belegt und sperrt nacheinander D1 und dann D2,
P2: belegt und sperrt nacheinander D2 und dann D1.

a) Beschreiben Sie eine Folge von Aktivitäten der Prozesse P1
und P2, die zum Deadlock führen kann.

Das ist doch nicht so schwer. P1 und P2 sind nebenläufige Prozesse, die auf die gleichen Ressourcen zugreifen. Du sollst nun anhand eines Petrinetzes darstellen, wie ein Deadlock entstehen kann.

Vorschlag: Aufmalen und mal schritt für schritt durchgehen.

c) Modellieren Sie die Interaktion zwischen beiden Prozessen
mit Hilfe eines einfachen Petri-Netzes so, dass beim Zugriff
auf die beiden Dateien kein Deadlock auftreten kann. Versehen
Sie das Netz mit einer geeigneten Anfangsmarkierung, so dass
es nicht zum Deadlock kommen kann.

Auch das ist leicht. Du sollst dein Petrinetz so umgestalten, dass eben kein Deadlock stattfindet.

  • Zum einen verstehe ich die Aufgabestellung nicht ganz, es
    steht darin nichts von einer Freigabe der Dateien nachdem sie
    gesperrt worden sind.

Das steht dort so explizit nicht, aber ist doch im Kontext logisch. Wenn der Prozess fertig ist, dann sind auch die Ressourcen wieder frei. Das muss man nicht extra hinschreiben, das ist trivial, zumal du dich in Petrinetzen befindest und darin jeder Prozess genau ein Takt dauert, wenn nichts anderes definiert ist. Und wenn der Prozess abgeschlossen ist, muss dein Petrinetz so konstruiert sein, dass die Ressourcen wieder frei sind. Wie gesagt: logisch und eigentlich nicht erwähnenswert.

Das muss doch in jedem Fall zu einem
Deadlock führen oder?- Wie sieht das Petri-Netz aus Aufgabe 4
aus?

Wenn ich das richtig verstehe, sind es zwei Petri-Netze. Du wirst es nie lernen, wenn du es nicht selbst machst. Mal es dir doch einfach mal auf oder benutze die von euch verwendete Software.

Sorry, wenn ich deine Hausaufgaben/Praktikumsaufgaben nicht mache, aber das haben wir alle selbst lernen müssen. Deine Fragen machen klar, dass du die Basics der Petrinetze noch nicht verstanden hast.

Vielen Dank.

Sehr gern.

Günther