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

Pieter Hintjens ph at imatix.com
Sat Jul 11 10:22:32 CEST 2015


Ah, so you're saying it's almost impossible :)

On Sat, Jul 11, 2015 at 8:53 AM, Michael Haberler <mail17 at mah.priv.at> wrote:
>
>> 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.
>
> -m
>
>> _______________________________________________
>> zeromq-dev mailing list
>> zeromq-dev at lists.zeromq.org
>> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
>
> _______________________________________________
> 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