Bolt-Variable

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Bolt-Variablen dienen in der Informatik zur Abstimmung des konkurrierenden Zugriffs auf Betriebsmittel. Der Unterschied zum häufig verwendeten Semaphor besteht darin, dass die Bolt-Variable drei statt zwei Zustände annehmen kann und damit eine flexiblere Reservierung von Ressourcen ermöglicht, beispielsweise durch Realisierung eines Read-Write-Locks. Der Name ist vom englischen Wort bolt (Riegel) abgeleitet.[1]

Beschreibung[Bearbeiten | Quelltext bearbeiten]

Bolt-Variablen werden bei der Programmierung zur Prozesssynchronisation eingesetzt, also zur Lösung von Aufgaben, bei denen die parallele Ausführung mehrerer Prozesse oder Threads eine zeitliche Abstimmung der Ausführungen erfordert. Sie beschreiben den Belegungszustand eines Betriebsmittels. Dabei werden drei Zustände unterschieden:[2]

  • nicht belegt (A)
  • belegt (B)
  • Belegung nicht möglich (C)

Regeln zur Belegung:

  • Eine Änderung in Zustand B kann vorgenommen werden, wenn sich die Bolt-Variable im Zustand A befindet. Zustand B entspricht einem exklusiven Zugriff beziehungsweise einem Write-Lock.
  • Zustand C kann erfolgreich eingenommen werden, wenn die Variable im Zustand A oder C ist. Damit können mehrere Prozesse parallel das reservierte Betriebsmittel verwenden ohne von potentiell schreibenden Zugriffen (Zustand B) gestört zu werden. Damit kann ein Read-Lock realisiert werden.

Praxis[Bearbeiten | Quelltext bearbeiten]

In Mainframe-Betriebssystemen wie z.B. z/OS von IBM stehen diese Dienste unter anderen Namen zur Verfügung. Dort wird die Bezeichnung Enqueue / Dequeue mit 'shared'- oder 'exclusive'-Option verwendet.

Weblinks[Bearbeiten | Quelltext bearbeiten]

HTW Dresden Vorlesung Betriebssysteme II Thema 2: Synchronisation. Abgerufen am 2. September 2011 (PDF; 193 kB, bes. S. 28f).

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. RTOS-UH Ein Überblick Seite 19 (PDF; 411 kB)
  2. Bodo Heimann, Wilfried Gerth, Karl Popp: Mechatronik: Komponenten- Methoden-Beispiele. Hanser Verlag, 2006, ISBN 3-446-40599-2, S. 167 f.