Zum Inhalt springen

„Unix Domain Socket“ – Versionsunterschied

aus Wikipedia, der freien Enzyklopädie
[gesichtete Version][gesichtete Version]
Inhalt gelöscht Inhalt hinzugefügt
K Weblinks: Sprachschreibweise
K Kapitelreihenfolge
Zeile 2: Zeile 2:
Entsprechend der [[Unix-Philosophie]] („[[Everything is a file|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 [[Puffer (Informatik)|Pufferspeicher]] im Speicher des [[Kernel (Betriebssystem)|Kernel]]s.
Entsprechend der [[Unix-Philosophie]] („[[Everything is a file|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 [[Puffer (Informatik)|Pufferspeicher]] im Speicher des [[Kernel (Betriebssystem)|Kernel]]s.
Neben Daten können über die Socketverbindungen mit den [[Systemaufruf]]en ''sendmsg()'' und ''recvmsg()'' auch [[Datei-Handle]]s übertragen werden.
Neben Daten können über die Socketverbindungen mit den [[Systemaufruf]]en ''sendmsg()'' und ''recvmsg()'' auch [[Datei-Handle]]s übertragen werden.

== Weblinks ==
*{{man|2|socketpair|gnu|zwei verbundene Sockets erstellen}}
*{{man|2|socketpair|bsd|create a pair of connected sockets}} (Erzeugen miteinander verbundener Sockets)
*{{man|2|sendmsg|bsd|send a message from a socket}} (Verschicken von Nachrichten über ein Socket)
*{{man|2|recvmsg|bsd|receive a message from a socket}} (Empfangen von Nachrichten über ein Socket)
*<!--- 2014-04-08 16:05: auf deutsch noch nicht verfügbar
{{man|3|cmsg|gnu|Senden/Empfangen/Verwalten von Zusatzinformationen}} (''access ancillary data''
--><code>[http://manpages.debian.org/cgi-bin/man.cgi?query=cmsg&sektion=&apropos=0 cmsg(3)]</code>: access ancillary data – [[Debian]] Linux Programmer's Manual (Senden/Empfangen/Verwalten von Zusatzinformationen)
*[http://lists.freebsd.org/pipermail/freebsd-performance/2005-February/001143.html Vergleich zwischen Unix Domain Sockets und Internet Sockets] unter [[FreeBSD]], 2005 (englisch)
*[http://code.google.com/p/junixsocket/ Unix Domain Sockets für Java] (englisch)
*[http://untroubled.org/ucspi-unix/ ucspi-unix], Client und Server Implementation von [http://cr.yp.to/proto/ucspi.txt UCSPI] über UNIX-Domain-Sockets (englisch)


== Literatur ==
== Literatur ==
Zeile 19: Zeile 7:
* {{bibISBN|0321525949|Kapitel=17.3 UNIX Domain Sockets|Seite=594-601}}
* {{bibISBN|0321525949|Kapitel=17.3 UNIX Domain Sockets|Seite=594-601}}
* {{Literatur| Autor=Johannes Plötner, Steffen Wendzel | Titel=Linux. Das umfassende Handbuch | Verlag=Galileo | Jahr=2012 | Auflage=5. | ISBN=978-3-8362-1822-1 | Kommentar=[http://openbook.galileocomputing.de/linux/linux_kap26_006.html#dodtpd8ae8f81-efba-4153-a66d-a36a74022be4 26.6.5 Unix-Domain-Sockets] | Online=[http://openbook.galileocomputing.de/linux Inhaltsverzeichnis] }}
* {{Literatur| Autor=Johannes Plötner, Steffen Wendzel | Titel=Linux. Das umfassende Handbuch | Verlag=Galileo | Jahr=2012 | Auflage=5. | ISBN=978-3-8362-1822-1 | Kommentar=[http://openbook.galileocomputing.de/linux/linux_kap26_006.html#dodtpd8ae8f81-efba-4153-a66d-a36a74022be4 26.6.5 Unix-Domain-Sockets] | Online=[http://openbook.galileocomputing.de/linux Inhaltsverzeichnis] }}

== Weblinks ==
* {{man|2|socketpair|gnu|zwei verbundene Sockets erstellen}}
* {{man|2|socketpair|bsd|create a pair of connected sockets}} (Erzeugen miteinander verbundener Sockets)
* {{man|2|sendmsg|bsd|send a message from a socket}} (Verschicken von Nachrichten über ein Socket)
* {{man|2|recvmsg|bsd|receive a message from a socket}} (Empfangen von Nachrichten über ein Socket)
*<!--- 2014-04-08 16:05: auf deutsch noch nicht verfügbar
{{man|3|cmsg|gnu|Senden/Empfangen/Verwalten von Zusatzinformationen}} (''access ancillary data''
--><code>[http://manpages.debian.org/cgi-bin/man.cgi?query=cmsg&sektion=&apropos=0 cmsg(3)]</code>: access ancillary data – [[Debian]] Linux Programmer's Manual (Senden/Empfangen/Verwalten von Zusatzinformationen)
* [http://lists.freebsd.org/pipermail/freebsd-performance/2005-February/001143.html Vergleich zwischen Unix Domain Sockets und Internet Sockets] unter [[FreeBSD]], 2005 (englisch)
* [http://code.google.com/p/junixsocket/ Unix Domain Sockets für Java] (englisch)
* [http://untroubled.org/ucspi-unix/ ucspi-unix], Client und Server Implementation von [http://cr.yp.to/proto/ucspi.txt UCSPI] über UNIX-Domain-Sockets (englisch)


{{SORTIERUNG:Posix Local Inter-process Communication Socket}}
{{SORTIERUNG:Posix Local Inter-process Communication Socket}}

Version vom 23. März 2017, 20:26 Uhr

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. 3. Auflage. Band 1. Addison Wesley, 2004, ISBN 0-13-141155-1, 15. Unix Domain Protocols, S. 411–433 (englisch).
  • 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 (englisch).
  • 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).