Using ACH instead of DBus for real-time application

54 views
Skip to first unread message

ZRA

unread,
Mar 25, 2014, 10:38:56 AM3/25/14
to ach-...@googlegroups.com
Hello,
    I am working on a project where I need to comunicate between multiple processes with real-time constraints. I have already used DBus in other project but it is not suitable for real-time applications. I would like to have more informations about ACH. Can I use ACH in the same way as DBus ? Does ACH uses a broker like DBus ?

I really thank you for an eventual response.

Best regards,
ZRA

Neil T. Dantam

unread,
Mar 25, 2014, 4:07:06 PM3/25/14
to ach-...@googlegroups.com

> Can I use ACH in the same way as DBus ?

Sort of. Both Ach and DBus are publish-subscribe. AFAIK, DBus
includes some high-level pieces like data types. Ach just passes raw
byte arrays.

> Does ACH uses a broker like DBus ?

No broker. The interface in Ach is publish-subscribe message passing.
The implementation uses a double-circular buffer in POSIX shared
memory.

The result is that the kernel can switch directly from the sending to
the receiving process(es), which cuts down latency.

For communication between different hosts (i.e., TCP or UDP), a
broker-like process is involved to relay the data. This is of course
quite a bit slower than intrahost communication -- hundreds of
microseconds vs. a few microseconds.

Cheers,
-ntd

On 03/25/2014 10:38 AM, ZRA wrote:
> Hello,
> I am working on a project where I need to comunicate between
> multiple processes with real-time constraints. I have already used DBus
> <http://www.freedesktop.org/wiki/Software/dbus/> in other project but it
Reply all
Reply to author
Forward
0 new messages