Go Systems Programming
460 Seiten
German
PDF
4.5

Go Systems Programming

Go Systems Programming

Autor:

Jahr:

Zusammenfassung:

Einleitung

Das Buch „Go Systems Programming“ (Autor: Mihalis Tsoukalos, 2017, 460 Seiten) ist nicht nur ein weiterer Leitfaden für die Sprache Go. Es ist ein tiefer Einstieg in die Welt der Systemprogrammierung, der sich an Entwickler richtet, die effiziente, zuverlässige und hardwarenahe Dienstprogramme für UNIX-ähnliche Betriebssysteme schreiben möchten. Der Autor, bekannt für seine technischen Bücher und Artikel, bietet einen praktischen Ansatz, der Theorie mit zahlreichen Codebeispielen verbindet.

Worum geht es in dem Buch

Das Buch deckt ein breites Spektrum an Themen ab, die mit der Interaktion eines Go-Programms mit dem Betriebssystem zusammenhängen. Der Schwerpunkt liegt auf Linux und macOS, aber die meisten Beispiele sind auf andere UNIX-Systeme übertragbar. Sie erfahren, wie Sie mit Dateisystemen, Prozessen, Signalen, Netzwerk-Sockets arbeiten und eigene Systemdienstprogramme erstellen (z. B. eine Entsprechung zu ps, ls oder netstat).

Für wen ist dieses Buch geeignet

Das Buch richtet sich an Programmierer, die bereits mit den Grundlagen von Go vertraut sind (Syntax, Goroutinen, Kanäle). Es ist nützlich für:

  • Entwickler, die von C/C++ auf Go umsteigen und die Kontrolle über Systemressourcen behalten möchten;
  • DevOps-Ingenieure und Administratoren, die Tools für Überwachung und Automatisierung schreiben;
  • Alle, die verstehen möchten, wie Go auf niedriger Ebene mit dem Betriebssystemkern interagiert.

Was der Leser lernen wird

Nach der Lektüre werden Sie in der Lage sein:

  • Mit Dateideskriptoren und Systemaufrufen über die Pakete os und syscall zu arbeiten;
  • Prozesse zu verwalten (Erstellung, Beendigung, Warten, Signale);
  • Mehrthread-Server und -Clients mit TCP/UDP-Sockets zu erstellen;
  • Eigene Befehlszeilen-Dienstprogramme mit Argument- und Flag-Verarbeitung zu schreiben;
  • Mit Zeit, Timern und Synchronisation auf Betriebssystemebene zu arbeiten;
  • Das Paket os/exec zum Starten externer Programme zu verwenden;
  • Den Aufbau von Dateisystemen zu verstehen und mit Inodes, Zugriffsrechten und Verknüpfungen zu arbeiten.

Stärken

Der Hauptvorteil des Buches ist seine praktische Ausrichtung. Jedes Kapitel enthält zahlreiche Code-Listings, die sofort ausgeführt und modifiziert werden können. Der Autor scheut sich nicht, „schmutzige“ Details zu zeigen: Fehlerbehandlung, Arbeit mit Binärdaten, Besonderheiten verschiedener Betriebssysteme. Das Buch ist in einer lebendigen Sprache mit Beispielen aus der Praxis geschrieben. Besonders hervorzuheben sind die Kapitel über Netzwerk-Sockets und die Erstellung eigener Server – sie bieten eine solide Grundlage für das Schreiben hochbelastbarer Systeme.

Empfehlung

Ich empfehle dieses Buch allen, die über die Webentwicklung mit Go hinausgehen und lernen möchten, Systemwerkzeuge zu schreiben, die schnell und zuverlässig arbeiten. Es ist sowohl für erfahrene Entwickler als auch für diejenigen nützlich, die gerade erst mit Go beginnen, aber bereits über Grundkenntnisse verfügen. Wenn Sie verstehen möchten, wie Go mit dem Linux-Kernel „kommuniziert“ – dieses Buch ist für Sie.

Empfehlungen