Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Verklemmungen Bei sperrenbasierter Synchronisation können sogenannte Verklemmungen (engl. deadlocks) auftreten, in denen Transaktionen sich gegenseitig.

Ähnliche Präsentationen


Präsentation zum Thema: "Verklemmungen Bei sperrenbasierter Synchronisation können sogenannte Verklemmungen (engl. deadlocks) auftreten, in denen Transaktionen sich gegenseitig."—  Präsentation transkript:

1 Verklemmungen Bei sperrenbasierter Synchronisation können sogenannte Verklemmungen (engl. deadlocks) auftreten, in denen Transaktionen sich gegenseitig durch ihre Sperren blockieren. Folgerung: Sperrenbasiertes Scheduling ist zwar pessimistisch, kann aber trotzdem in Situationen geraten, in denen keine serialisierbare Fortsetzung mehr möglich und Transaktionsabbruch erforderlich ist.

2 Erkennen von Verklemmungen Durch Timeout: –Jede Sperrenanforderung wird mit maximaler Wartezeit versehen. –Nach Ablauf wird Verklemmung angenommen. –Einfach zu implementieren, kann aber zu irrtümlichen Abbrüchen oder verspäteter Entdeckung von Verklemmungen führen. Durch Wartegraph: –Wartegraph enthält Knoten K i für jede aktive Transaktion T i sowie Kante von K i nach K j, falls Transaktion T i auf Transaktion T j wartet. –Verklemmung wird durch Existenz eines Zyklus angezeigt. –Verwaltung aufwendiger als Timeouts, liefert aber präzise Ergebnisse.

3 Behandlung von Verklemmungen (1) Auflösung (durch Transaktionsabbruch): –Erfordert Erkennung der Verklemmung und Auswahl der abzubrechenden Transaktion. –Bei mehreren Kandidaten Auswahl der abzubrechenden Transaktion über Kostenfunktion (z.B. bereits investierter Aufwand, Priorität, verbleibender Aufwand bis Abschluss). –Ausgewählte Transaktion wird rückgesetzt und Sperren werden freigegeben.


Herunterladen ppt "Verklemmungen Bei sperrenbasierter Synchronisation können sogenannte Verklemmungen (engl. deadlocks) auftreten, in denen Transaktionen sich gegenseitig."

Ähnliche Präsentationen


Google-Anzeigen