As far as I can tell, IPC through shared memory is fastest, but the drawback is that when one process introduces memory corruption (stack/heap corruption due to programming errors) then all bets are off and all processes accessing it might get affected.What is the situation with IPC using sockets or named pipes? If a corrupted process communicates with healthy processes through pipes/sockets, can other processes also get affected, or is there some kind of data validation in place? For example, would passing an open file descriptor to a potentially corrupted process be safer than using shared files/memory?
Is using POSIX pipes/sockets for IPC memory-safe?
ipc