Möglichkeiten der Zutrittsregelung zu kritischen Abschnitten
Schlossvariablen
Semaphore
Monitore
Eingangs-und Ausgangsprotokoll nötig
feststellen, ob bereits die maximal vorgesehene Anzahl von Prozessen im kritischen Abschnitt arbeitet
Verlassen des kritischen Abschnitts wird bekannt gegeben, womit andere Prozesse die Möglichkeit erhalten, den kritischen Abschnitt zu betreten.
Schlossvariable
Zutrittsregelung über gemeinsame Variable
erlaubt oder verriegelt Zutritt zu kritischen Abschnitt
merkwürdig: Schutz vor gem. Variable durch gemeinsame Variable
Hilfsmittel zur Synchronisation nebenläufiger Prozesse
aktives Warten eines Prozesses wird vermieden
abstrakter Datentyp der aus einem Zähler und einer Warteschlange bestehen
definiert 2 Operationen, P passierem, V freigeben, die unteilbar sind
Mit V wird Zähler um eins erhöht
Mit P wird Zähler um eins erniedrigt
sowohl einseitige als auch mehrseitige Synchronidsation implementierbar
OPerationen der Prozessverwaltung
Beispiel: Wartezimmer beim Arzt
FAZIT SEMAPHOR
durch Blockierung von Prozessen beim warten auf ein Ereignis, wird Ziel möglichst effizienter Synchronisation erfüllt
führt schnell zu unübersichtlichen Prozessen
Semantik benutzten Syntaktisch besser lenken
statt Synchronisation über mehrere Prozesse zu verteilen in einer Datenstruktur zusammenfassen - so bei jedem Zugriff automatisch gegenseitigen Ausschluss garantieren
am weitesten verbreitet
basierend auf Semaphoren
Synchronisationsmittel für Zugriff auf gemeinsame Variable
abstrakte Datenstruktur mit impliziten Synchronisationseigenschaften
Benutzern bleibt Implementierung Zugriffsfunktion und Realisierung gegenseitiger Ausschluss verborgen
Daten, auf denen kritische Abschnitte arbeiten und diese Abschnitte selbst werden in zentralen Konstrukt zusammengefasst
Alle Zugriffsoperationen eines Monitors werden im gegenseitigen Ausschluss durchgeführt.
Die im Monitor vereinbarten Variablen können aufgrund dieses gegenseitigen Ausschlusses nie nebenläufig benutzt werden.
Sie stellen damit exklusive Betriebsmittel für Prozesse dar.
Zum Monitor gehört eine Warteschlange, in die alle Prozesse, die Monitoroperationen aufrufen, eingereiht werden, sollte der Monitor gerade durch Ausführung einer Operation belegt sein
Last changeda year ago