Unix Domain Socket

POSIX local inter-process communication sockets (auch Unix Domain Socket oder IPC Socket) sind Endpunkte von bidirektionalen Kommunikationsverbindungen bei der lokalen Interprozesskommunikation (IPC) unter Unix-Betriebssystemen. Die Kommunikation über diese Sockets ist die im POSIX-Standard standardisierte Methode zur Interprozesskommunikation für Unix-ähnliche Systeme. Entsprechend der Unix-Philosophie („alles ist eine Datei“) sind Sockets über einen Inode im Dateisystem adressierbar und werden mit denselben Befehlen angesprochen wie gewöhnliche Dateien. Um zu kommunizieren, öffnen zwei Prozesse denselben Socket. Die Daten fließen als Bytestrom über Pufferspeicher im Speicher des Kernels. Neben Daten können über die Socketverbindungen mit den Systemaufrufen sendmsg() und recvmsg() auch Datei-Handles übertragen werden.

Literatur

  • W. Richard Stevens, Bill Fenner, Andrew M. Rudoff: UNIX Network Programming. The Sockets Networking API. Volume 1. 3. Auflage. Addison Wesley, 2004, ISBN 0-13-141155-1, 15. Unix Domain Protocols, S. 411–433.
  • W. Richard Stevens, Stephen A. Rago: Advanced Programming in the UNIX Environment. 2. Auflage. Addison Wesley, 2005, ISBN 0-321-52594-9, 17.3 UNIX Domain Sockets, S. 594–601.
  • Johannes Plötner, Steffen Wendzel: Linux. Das umfassende Handbuch. 5. Auflage. Galileo, 2012, ISBN 978-3-8362-1822-1 (Inhaltsverzeichnis26.6.5 Unix-Domain-Sockets).

Weblinks