All,

ZeroMQ is/was quite popular, but its author redesigned it, created a much 
cleaner implementation called “nanomsg”,
        ref: https://nanomsg.org/documentation-zeromq.html 
<https://nanomsg.org/documentation-zeromq.html>
        ref: https://nanomsg.org/index.html <https://nanomsg.org/index.html>

And then he rewrote it again:
        ref: https://nng.nanomsg.org/RATIONALE.html 
<https://nng.nanomsg.org/RATIONALE.html>
and called it nng:
        ref: https://nng.nanomsg.org <https://nng.nanomsg.org/>

So, in short, if one is interested in ZeroMQ and NuttX, I’d suggest nanomsg 
would be a much more efficient replacement; and finally the best choice of the 
three IMHO would be nng for an embedded system (Cortex-M3/4 class) system.

Just my $0.025, I hope it’s helpful.

Cheers,
-david



> On Feb 3, 2023, at 2:24 AM, Xiang Xiao <xiaoxiang781...@gmail.com> wrote:
> 
> On Fri, Feb 3, 2023 at 4:31 PM Marco Casaroli
> <marco.casar...@midokura.com.invalid 
> <mailto:marco.casar...@midokura.com.invalid>> wrote:
> 
>> Hello,
>> 
>> I've been experimenting to build ZeroMQ work with NuttX and I wanted to
>> share my results so far.
>> 
>> TLDR: it works
>> 
>> Please, understand that I am very new to NuttX so please tell me with any
>> conceptual errors I might be facing!
>> 
>> https://github.com/casaroli/incubator-nuttx/tree/zeromq
>> 
>> I think we need to be able to use this library both from kernel code and
>> from applications, so I guessed this would fit along libxx and libdsp, etc.
>> 
>> 
> Kernel code needs to call some special API(e.g. kmm_malloc, psock_send and
> file_open), I amn't sure whether is it easy to adjust ZeroMQ for this type
> of change.
> 
> 
>> So I basically copied many stuff from those directories into libs/libzmq
>> 
>> Still needs a lot of work, so next steps are to find a way to run the
>> tests, then to make platform.hpp defines use nuttx/config.h, add czmq
>> (higher level interface).
>> 
>> However, in the current state, I could get IPC through Unix Domain Sockets
>> and TCP. inproc also works fine.
>> 
>> I wrote some simple examples (not on the repo) and they work.
>> 
>> I want to know if anyone else is interested in helping with this (make
>> ZeroMQ/czmq, nng, etc. work).
>> 
>> 
> Yes, it's definitely good to support more 3rd party general libraries.
> 
> 
>> Thank you.

Reply via email to