Skip to main content
  • Textbook
  • © 2018

Nichtsequentielle und Verteilte Programmierung mit Go

Synchronisation nebenläufiger Prozesse: Kommunikation – Kooperation – Konkurrenz

Authors:

  • Kompakte Einführung in die Programmierung mit Google Go
  • Systematischer Überblick zur Synchronisation und Kommunikation nebenläufiger Prozesse
  • Sämtliche Go-Quelltexte stehen zum Download bereit
  • 26k Accesses

Buy it now

Buying options

eBook USD 19.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Other ways to access

This is a preview of subscription content, log in via an institution to check for access.

Table of contents (18 chapters)

  1. Front Matter

    Pages I-XXII
  2. Einführung

    • Christian Maurer
    Pages 1-33
  3. Schlösser

    • Christian Maurer
    Pages 35-79
  4. Pakete, Interfaces und abstrakte Datentypen

    • Christian Maurer
    Pages 81-95
  5. Semaphore

    • Christian Maurer
    Pages 97-146
  6. Der Staffelstab-Algorithmus

    • Christian Maurer
    Pages 147-156
  7. Universelle kritische Abschnitte

    • Christian Maurer
    Pages 157-175
  8. Fairness

    • Christian Maurer
    Pages 177-179
  9. Verklemmungen

    • Christian Maurer
    Pages 181-194
  10. Monitore

    • Christian Maurer
    Pages 195-231
  11. Universelle Monitore

    • Christian Maurer
    Pages 233-251
  12. Botschaftenaustausch

    • Christian Maurer
    Pages 253-283
  13. Vergleich der bisherigen Sprachkonstrukte

    • Christian Maurer
    Pages 285-286
  14. Netzweiter Botschaftenaustausch

    • Christian Maurer
    Pages 287-302
  15. Universelle ferne Monitore

    • Christian Maurer
    Pages 303-316
  16. Netzwerke als Graphen

    • Christian Maurer
    Pages 317-340
  17. Pulsschlag-Algorithmen

    • Christian Maurer
    Pages 341-350
  18. Traversierungsalgorithmen

    • Christian Maurer
    Pages 351-388
  19. Auswahlalgorithmen

    • Christian Maurer
    Pages 389-404
  20. Back Matter

    Pages 405-412

About this book

Dieses Buch führt in die Nichtsequentielle und Verteilte Programmierung mit Go ein und stellt grundlegende Konzepte zur Synchronisation und Kommunikation nebenläufiger Prozesse systematisch dar. Dazu zählen unter anderem Schlösser, Semaphore, Fairness und Verklemmungen, Monitore sowie der lokale und netzweite Botschaftenaustausch. Um Lesern die Konzepte nahezubringen, greift der Autor immer wieder die gleichen klassischen Beispiele auf. Das erleichtert das Lernen, denn die vorgestellten Konzepte lassen sich auf diese Weise besser mit den Sprachmitteln vergleichen.

Das Buch folgt in seiner Grundstruktur den beiden Vorauflagen, enthält aber in der aktuellen, dritten Auflage einen neuen Teil zur Verteilten Programmierung mit drei Klassen von Algorithmen. Neben Netzwerken als Graphen werden dort unter anderem Algorithmen behandelt, die die Auswahl eines Leiters im Netzwerk ermöglichen oder das Kennenlernen des vollständigen Netzwerks, wenn jeder Beteiligte anfangs nur seine Nachbarn kennt.

Die Algorithmen sind in der Programmiersprache Go formuliert. Mit dieser Sprache lassen sich zahlreiche Synchronisationskonzepte ausdrücken. Go bietet aufgrund der einfachen Syntax außerdem den Vorteil, dass auch Leser ohne Vorkenntnisse den grundlegenden Konzepten folgen können. In den Abschnitten zu Schlössern, Semaphoren und Monitoren werden darüber hinaus auch einige grundlegende Ansätze zur Programmierung in C und Java vorgestellt.

Das Buch richtet sich an Studierende der Informatik und wurde für die Neuauflage klarer gegliedert. Zahlreiche Abschnitte wurden zudem teils erheblich erweitert. So wurden zusätzliche Algorithmen in das Kapitel über Schlösser aufgenommen und ein kurzes Kapitel übergrundlegende Aspekte der Softwaretechnik und deren Realisierung in Go eingefügt. Die Abschnitte über Semaphore und Monitore wurden um das Problem der Zigarettenraucher erweitert und den universellen Synchronisationsklassen sind nun eigene Kapitel gewidmet. Sämtliche Quelltexte sind online verfügbar. 

Authors and Affiliations

  • Institut für Informatik, Freie Universität Berlin, Berlin, Germany

    Christian Maurer

About the author

Dipl.-Math. Dr.rer.nat. Christian Maurer studierte in Berlin und promovierte in Mathematik an der Universität Bremen. Er war längere Zeit als Wiss. Assistent und Assistenzprofessor für Mathematik an der Freien Universität Berlin, dann kurze Zeit als Fachleiter für Informatik an einem Berliner Gymnasium und schließlich viele Jahre lang als Leiter der Lehrerweiterbildung am Fachbereich Mathematik und Informatik der Freien Universität Berlin tätig. Während dieser Zeit – und auch noch danach im Ruhestand – war er Lehrbeauftragter für Informatik.

Bibliographic Information

Buy it now

Buying options

eBook USD 19.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Other ways to access