[zeromq-dev] Why no shared-memory IPC?

Michael Haberler mail17 at mah.priv.at
Sat Jul 11 08:53:49 CEST 2015

> Am 09.07.2015 um 21:09 schrieb Thomas Johnson <thomas.j.johnson at gmail.com>:
> My understanding is that on Linux, inproc is implemented using shared memory and ipc is implemented using named pipes. Is there a reason why inter-process communication via shared memory is not supported?

I touched on this before: http://lists.zeromq.org/pipermail/zeromq-dev/2014-February/025128.html

the eventfd notification across process boundaries works fine, but allocation and processing of messages (and pointers for that matter) in shared memory is likely hard because one cannot assume the arena be mapped at the same address in all participating processes; a lot of assumptions on pointers go out of the window if you go down that route, and overhead increases. It's more doable in C++ - boost.interprocesses addresses the issue but pretty hard in C.


> _______________________________________________
> zeromq-dev mailing list
> zeromq-dev at lists.zeromq.org
> http://lists.zeromq.org/mailman/listinfo/zeromq-dev

More information about the zeromq-dev mailing list