2008-11-21 62 views
5

我正在寻找适合嵌入式Linux设备(Linux和uClinux)的良好开源消息总线。什么是嵌入式Linux的良好的开源消息总线?

它需要满足以下条件:

  • 必须是自由软件和LGPL或更自由的许可证,由于uClinux的只支持静态链接
  • 必须有一个C API
  • 必须有相对较小的空间并且不依赖于第三方库
  • 必须与Linux/uClinux兼容2.4.22+
  • 应该经过充分测试,最好有一个现有的测试框架扫设置
  • 应该有一个有据可查的协议
  • 应移植到消息总线将主要由我们的系统上的应用程序,以传达配置参数使用其它平台

等所以它不”不需要满足实时要求。

回答

4

这一切都取决于你的架构。您是否打算通过背板将消息传递到集群中的其他节点,或者这是否都在单个节点内,但在不同的地址空间中?

如果是后者,那就像卡森说的:man mq_overview

如果是前者,那么首先要看你的嵌入式linux厂商。许多供应商将提供某种分布式消息库。如果没有,请查看0MQMPICH2 MPI库。

更新:我还应该补充说,去年的大部分时间都是为分布式处理框架编写这样一个API,并且我可以告诉你,POSIX兼容性值得保留。如果可能的话,使用POSIX消息队列。

1

这听起来很适合SYSV or POSIX message queues。他们可以满足您列出的所有需求。 POSIX更新,所以它们不符合内核要求,但SYSV在较旧的内核中。

+0

根据其手册页,它仅在Linux 2.6.6+中可用。自从kernel 2.6.6以来,POSIX消息队列在Linux上受到支持。“ – 2008-11-21 14:56:04

7

还有D-Bus。它在用户空间中运行。它通常需要守护进程(但也许你可以让进程专门连接到对方,而不是通过中央守护进程)。

1

如果你的意思是IPC,socket对uclinux工作正常。

相关问题