A list of Linux IPC mechanisms
Here is a list of Linux inter-process communication mechanisms that I know of:
- pipes
- FIFOs
- POSIX IPC (semaphores, message queues, shared memory)
memfd
- UNIX domain sockets
- TCP/UDP sockets on loopback interface
eventfd
splice
and friends- signals
- the filesystem, including
mmap
‘ed files process_vm_readv
andprocess_vm_writev
ptrace
withPTRACE_PEEK{TEXT,DATA,USER}
andPTRACE_POKE{TEXT,DATA,USER}
I’ll link or explain them a bit better soon, but for now I just want to collect them. If you know of any I’m missing, please tweet or email me!