nanomsg / nng

nanomsg-next-generation -- light-weight brokerless messaging
https://nng.nanomsg.org
MIT License
3.63k stars 472 forks source link

FreeRTOS support #15

Open gdamore opened 7 years ago

gdamore commented 7 years ago

A question has come up about integration in FreeRTOS. It would be meaningful to demonstrate that the code works for FreeRTOS as an example non-mainstream platform.

nullr0ute commented 6 years ago

Zephyr (http://zephyrproject.org/) could be another similar RTOS option.

gdamore commented 6 years ago

Looks interesting.

On Sun, Jun 17, 2018, 10:52 AM Peter Robinson notifications@github.com wrote:

Zephyr (http://zephyrproject.org/) could be another similar RTOS option.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/nanomsg/nng/issues/15#issuecomment-397895087, or mute the thread https://github.com/notifications/unsubscribe-auth/ABPDfUm04I8IUIM5cSh98_Kv0UkJtNy5ks5t9pdGgaJpZM4LkG2x .

raveslave commented 3 years ago

anyone been playing around with this? nng on embedded via zephyr would be a great fit

unspecd commented 3 years ago

I have implemented some bare minimum functionality here: https://github.com/unspecd/nng/tree/freertos

leonardp commented 3 years ago

concering Zephyr: when chosing posix_native as board and setting CONFIG_BOARD_NATIVE_POSIX_64BIT=y (or 32BIT) it *just works*.

leonardp commented 3 years ago

i've added the zephyr demo i used to test this here: https://github.com/leonardp/nng-zephyr to make nng work as a zephyr module you basically only need to add a zephyr directory as seen here: https://github.com/leonardp/nng/commit/741c4e84fdc285065103796052e8bfd03757bb50 however i am unable to get it to work with anything other than native_posix_64 mostly because i am running into cmake related issues...

pgorgon-hem commented 3 years ago

i've added the zephyr demo i used to test this here: https://github.com/leonardp/nng-zephyr to make nng work as a zephyr module you basically only need to add a zephyr directory as seen here: leonardp@741c4e8 however i am unable to get it to work with anything other than native_posix_64 mostly because i am running into cmake related issues...

I worry that it works, because you compile it in native (probably linux) environment. I'm not sure how zephyr works, ie. compile in that case, but in my opionion it has to be compiled with native linux libs, hasn't it? It would be nice if you compile it to bare metal (e.g. some cortex-m). I considered zephyr instead of freeRTOS so if it works, it is really big advantage.

Jzhenli commented 2 years ago

hi, what's the status for support freertos?