Autore: Rainer Weikusat Data: To: dng Oggetto: Re: [DNG] dbus, Was Re: Systemd-free network-manager package
Mitt Green <mitt_green@???> writes: > Not sure if that was sarcasm though.
>
> Anyway, why do we need dbus if we can live
> without it?
>
> I've seen these [1] cool figures explaining what it is
> but neither them,
> nor the article didn't give me the answer why it is
> necessary.
"Necessary" is a bit of a bad category because anything can be
implemented in some other way, hence nothing is strictly
necessary. D-BUS is an OO RPC system intended to enable long-running
applications to call methods implemented by other long-running
applications provided these other long-running applications run on the
same computer. This implies that it defines a general convention for
naming 'objects' and manages the corresponding names. It also defines
(another) universal encoding for records composed of typed fields so
that these can be serialized into byte streams and then again
deserialized. Lastly, D-Bus is also the program providing the 'single
point of failure' and 'most annoying performance bottleneck' for
programs desiring to exchange data using the D-Bus protocol.
Since its designed to be general enough to be applicable to any
conceivable use, it's also supposed to supplant all other non-networked
IPC methods, eg, some future version of udev is supposed to use the
D-Bus protocol in order to get information from the kernel instead of
receiving mostly textual 'uevent notifications' via AF_NETLINK socket.
That's another "how everyone else does it" usual component of a
graphical dekststop environment and a fundamental building block of the
"everything crossdepends on everything else in a way nobody really
understands" organizational structure dekstop developers consider the only
viable way of doing anything.