Starting the kdbus discussions

Lennart Poettering mzqohf at 0pointer.de
Thu Jan 9 14:17:05 PST 2014


On Thu, 09.01.14 07:42, Thiago Macieira (thiago at kde.org) wrote:

> On quinta-feira, 9 de janeiro de 2014 09:21:55, Ted Gould wrote:
> > So what Lennart started this thread
> > with is to add to the DBus spec "How to represent DBus on kdbus" just
> > like the current spec is "How to represent DBus over
> > sockets." Please correct me if I'm wrong.
> 
> That would be absolutely correct.

Well, not really. kdbus might not care about the marshalling used,
however the entire semantics are dbus and nothing else. The entire
concept of one-to-many, ordered communication, its activation logic, its
entire name registry are dbus, and nothing else. (Heck, the name registry
implemented in kdbus in the kernel actually validates all names
according to the dbus spec rules for naming services...).  The "d" in
"kdbus" is supposed to indicate that: we are implementing dbus semantics
here and nothing else. We have no intentions to make this any more
generic than it currently it is.

For example, the android binder shares some technical concepts with
kdbus (regarding mmapped data transfer among other things), however it
implements completely different semantics. There is no name registry in
the android binder kernel side, there aren't even broadcast signals, and
the delivery to the destination is strictly unordered since it mandates
dispatching in thread pools which run fully in parallel. 

You cannot make dbus userspace work on the android binder kernel
interface, and you cannot make android binder userspace work on the
kdbus kernel interface. They are too different...

Lennart

-- 
Lennart Poettering, Red Hat


More information about the dbus mailing list