Um arquivo de soquete Unix / Linux é basicamente um FIFO bidirecional.
Desde sockets foram originalmente criados
como uma maneira de gerenciar as comunicações de rede,
é possível manipulá-los
usando as chamadas de sistema send()
e recv()
.
No entanto, no espírito Unix de "tudo é um arquivo",
você também pode usar write()
e read()
.
Você precisa usar socketpair()
ou socket()
para criar soquetes nomeados.
Um tutorial para usar sockets em C pode ser encontrado aqui:
Guia do Beej para o Unix IPC: Sockets Unix .
O utilitário de linha de comando socat
é útil quando você deseja brincar com sockets sem escrever um programa "real". É semelhante a netcat
e atua como um adaptador entre diferentes interfaces de rede e de arquivo.
Links: