Un socket de dominio Unix o socket IPC (socket de comunicación entre procesos) es un punto final de comunicaciones de datos que es similar a una toma de Internet, pero no utiliza un protocolo de red para la comunicación. Se usa en los sistemas operativos POSIX para la comunicación entre procesos. El término estándar correcto de POSIX es POSIX Local IPC Sockets.
Las conexiones de dominio Unix aparecen como secuencias de bytes, al igual que las conexiones de red, pero todos los datos permanecen dentro de la computadora local. Los sockets de dominio UNIX usan el sistema de archivos como espacio de nombres de direcciones, es decir, los procesos los utilizan como inodos en el sistema de archivos. Esto permite que dos procesos distintos abran el mismo socket para comunicarse. Sin embargo, la comunicación real (el intercambio de datos) no utiliza el sistema de archivos, sino búferes en la memoria del kernel.
Además de enviar datos, los procesos pueden enviar descripciones de archivos a través de una conexión de socket de dominio Unix utilizando las llamadas al sistema sendmsg() y recvmsg().
gracias por la respuesta, por lo que el socket de dominio unix es para la comunicación entre procesos entre dos procesos en el mismo sistema, al igual que cualquier otro mecanismo de ipc como sharedmemory.Al usar el dominio de Unix no podemos hacer la comunicación entre dos máquinas. – mawia
@mawia - eso es correcto. Por ejemplo, puede hablar con el servidor de ventana X local sobre un socket de dominio Unix configurando su variable de entorno DISPLAY a ": 0.0" o sobre un socket TCP/IP configurándolo en "localhost: 0.0". –
Busque AF_INET para que los enchufes IP se comuniquen entre diferentes hosts. – user39113