iceoryx
Eclipse iceoryx进阶基于共享内存的零拷贝进程间通信库,常被 DDS 和 ROS 2 用来传大数据
iceoryx 是 Eclipse 基金会托管的开源进程间通信(IPC)中间件,最初由博世团队为汽车软件开发。普通通信要把数据从发送方拷贝到接收方,图像、点云这类大消息拷贝一次就很耗时;iceoryx 让发送方直接把数据写在共享内存里,接收方只拿到一个指向它的引用,实现「零拷贝」,传输延迟基本与消息大小无关。它只管同一台机器内的进程,跨机器仍需 DDS 等网络协议。Cyclone DDS 可以用它作为本机共享内存传输层。后续推出了用 Rust 重写的 iceoryx2。
例子在机器人主控上把 Cyclone DDS 配置为启用 iceoryx 共享内存,相机节点发给感知节点的高分辨率图像不再经过拷贝。
- 也叫
- iceoryx2
- 相关
- 零拷贝、Cyclone DDS、中间件、ROS 2、dora-rs
- 来源
- Eclipse iceoryx 官网
iceoryx GitHub