Take the 2-minute tour ×  Ok, this is a stupid question...  Are
pipes, FIFOs, and sockets shared memory or message passing..?
At first I thought they were shared memory because pipes use
read() and write(), but now I'm just totally confused.
Technically the "messages" are stored in the kernal's address
space, so is it a message or stored memory? I have an exam for
Intro to OS's in a few hours, and I just need this cleared up.
Thanks in advance!  share|improve this question add comment  2
Answers  up vote 5 down vote accepted  message passing, as they
require participation on both sides, sender and receiver in case
of sockets for example. they can be implemented using shared
memory, but communication pattern is message passing
share|improve this answer +1: The presence or absence of a
"shared buffer" has no relevance at all -- it's an
implementation detail. A FIFO can certainly work without a
shared buffer -- it would be slow, but it would work. Shared
memory, on the other hand, can't work without shared mem