Skip to main content

2019 | OriginalPaper | Buchkapitel

4. Semaphore

verfasst von : Christian Maurer

Erschienen in: Nichtsequentielle und Verteilte Programmierung mit Go

Verlag: Springer Fachmedien Wiesbaden

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Zusammenfassung

Wenn sich auch einfache Synchronisationsprobleme durch die Verwendung von Schlossalgorithmen lösen lassen, bergen ihre Implementierungen jedoch eine ganze Reihe von Nachteilen. Die älteste Idee zur Beseitigung einiger dieser Nachteile ist das Synchronisations-Konstrukt der Semaphore von Dijkstra. In diesem Kapitel werden seine Ideen vorgestellt und an vielen Anwendungen wird demonstriert, wie sich Semaphore einsetzen lassen.
In diesem Kapitel werden binäre und – im Kontext beschränkter Puffer – allgemeine Semaphore spezifiziert und die wechselseitigen Beziehungen zwischen ihnen erörtert; und nachdem Dijkstras schlafender Barbier geweckt ist, wird auf die Tücken der Konstruktion allgemeiner Semaphore aus binären hingewiesen. Das Leser-Schreiber-Problem und einige seiner Lösungen mit Semaphoren führen zum Muster des Staffelstab-Algorithmus. Ferner werden einige spezielle Fragen behandelt: Additive Semaphore, Barrierensynchronisation, das Links-Rechts-Problem, Dijkstras speisende Philosophen, das Problem der Zigarettenraucher, Hinweise zur Implementierung von Semaphoren und das Konvoi-Phänomen.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Literatur
1.
Zurück zum Zitat Andrews, G.R.: Concurrent Programming, Principles and Practice. Addison-Wesley, Menlo Park (1991)MATH Andrews, G.R.: Concurrent Programming, Principles and Practice. Addison-Wesley, Menlo Park (1991)MATH
2.
Zurück zum Zitat Andrews, G.R.: Foundations of Multithreaded, Parallel and Distributed Programming. Addison-Wesley, Reading (2000) Andrews, G.R.: Foundations of Multithreaded, Parallel and Distributed Programming. Addison-Wesley, Reading (2000)
4.
Zurück zum Zitat Ben-Ari, M.: Principles of Concurrent and Distributed Programming, 2nd edn. Addison-Wesley, Harlow (2006)MATH Ben-Ari, M.: Principles of Concurrent and Distributed Programming, 2nd edn. Addison-Wesley, Harlow (2006)MATH
5.
Zurück zum Zitat Burns, A., Davies, G.: Concurrent Programming. Addison-Wesley, Harlow (1993)MATH Burns, A., Davies, G.: Concurrent Programming. Addison-Wesley, Harlow (1993)MATH
11.
Zurück zum Zitat Gray, J., Reuter, A.: Transaction Processing, Concepts and Techniques. Morgan Kaufmann, San Francisco (1992) Gray, J., Reuter, A.: Transaction Processing, Concepts and Techniques. Morgan Kaufmann, San Francisco (1992)
17.
Zurück zum Zitat Patil, S.S.: Limitations and Capabilities of Dijkstra’s Semaphore Primitives for Coordination among Processes. MIT Computations Structures Group, Project MAC 57 (1971) Patil, S.S.: Limitations and Capabilities of Dijkstra’s Semaphore Primitives for Coordination among Processes. MIT Computations Structures Group, Project MAC 57 (1971)
Metadaten
Titel
Semaphore
verfasst von
Christian Maurer
Copyright-Jahr
2019
DOI
https://doi.org/10.1007/978-3-658-26290-7_4