Warum brauche ich dbus?

17

Ich habe kürzlich dbus aus meinem System entfernt (zusammen mit consolekit und polkit). Ich habe keine Änderung bemerkt (ich habe es als System-Daemon und pro Benutzer von .xinitrc ausgeführt). Viele Leute behaupten jedoch, man brauche nur dbus, die meisten Linux-Anwendungen verwenden es usw. usw. Meine Frage ist, warum brauche ich es? Ich glaube nicht zu verstehen, was es genau macht. Ich weiß, dass es sich um ein "Nachrichtenbussystem" handelt, über das Prozesse kommunizieren usw. Und? Ich weiß immer noch nicht, was ich davon habe. Könnte es mir jemand erklären, am liebsten mit Beispielen "aus dem wirklichen Leben"?

eregus
quelle
3
Keine Sorge, Sie müssen in naher Zukunft nicht einmal dbus installieren / deinstallieren. Es ist jetzt Teil des Kernels: kroah.com/log/blog/2014/01/15/kdbus-details
yegorich

Antworten:

10

Als Endbenutzer tun Sie das nicht. Es gibt nichts, was D-Bus anders nicht machen könnte.

Die Vorteile von D-Bus sind vor allem für Entwickler von Interesse. Es vereint mehrere knifflige Funktionen (objektorientiertes und typsicheres Messaging, Daemon-Aktivierung, Ereignisbenachrichtigung, Transportunabhängigkeit) unter einer einzigen Funktion, die unabhängig von der verwendeten Programmiersprache oder dem verwendeten Windows-Toolkit funktioniert.

Ignacio Vazquez-Abrams
quelle
2
Aber sollte dann eine Anwendung nicht laufen können, wenn dbus nicht vorhanden ist?
Lalala
Einige sicher. Es ist jedoch auch möglich, dies als optionale Anforderung festzulegen.
Ignacio Vazquez-Abrams
Benachrichtigungen in der Taskleiste von DEs werden durch Senden von DBUS-Nachrichten erstellt. Zumindest hatte ich aus diesem Grund ein Setup, das DBUS auf awesome verwendete.
Spidey
@Spidey: Ja, aber es gibt keinen Grund, warum sie dafür keine Domain-Sockets verwenden könnten. Zufällig ist D-Bus die bessere Wahl.
Ignacio Vazquez-Abrams
Natürlich ist DBUS nur ein weiteres IPC-Protokoll. Dies ist jedoch eines der Beispiele, nach denen das OP zunächst gefragt hat.
Spidey