Dlaczego potrzebuję dbus?


17

Niedawno usunąłem dbus z mojego systemu (wraz z Consolekit i Polkit). Nie zauważyłem żadnej zmiany (działałem jako demon systemowy i na użytkownika z .xinitrc). Jednak wiele osób twierdzi, że wystarczy dbus, większość aplikacji linuksowych go używa itp. Moje pytanie brzmi: dlaczego go potrzebuję? Nie sądzę, że rozumiem, co to dokładnie robi. Wiem, że jest to „system magistrali komunikatów”, który przetwarza komunikację za jego pośrednictwem itp. I? Nadal nie wiem, co mogę zyskać, używając go. Czy ktoś mógłby mi to wytłumaczyć, najlepiej przykładami „z prawdziwego życia”?


3
Nie martw się, nie musisz nawet instalować / odinstalowywać dbus w najbliższej przyszłości. Jest teraz częścią jądra: kroah.com/log/blog/2014/01/15/kdbus-details
yegorich

Odpowiedzi:


10

Jako użytkownik końcowy nie. Nic nie robi D-Bus, czego nie można było zrobić inaczej.

Korzyści z D-Bus są przede wszystkim interesujące dla programistów. Ujednolica kilka trudnych elementów (wiadomości obiektowe i bezpieczne dla typu, aktywacja demona, powiadamianie o zdarzeniach, niezależność transportu) w jednym obiekcie, który działa tak samo bez względu na używany język programowania lub zestaw narzędzi do okienkowania.


2
Ale czy jakaś aplikacja nie powinna być uruchomiona, jeśli dbus nie jest obecny?
lalala

Niektóre, jasne. Ale niezależnie od tego można to uczynić opcjonalnym.
Ignacio Vazquez-Abrams

Powiadomienia z zasobnika systemowego dotyczące DE są tworzone przez wysyłanie komunikatów DBUS. Miałem przynajmniej jedną konfigurację, która z tego powodu używała DBUSa na awesome.
Spidey

@Spidey: Tak, ale nie ma powodu, dla którego nie mogły do ​​tego używać gniazd domen. Tak się składa, że ​​D-Bus jest lepszym wyborem.
Ignacio Vazquez-Abrams

Oczywiście DBUS to tylko kolejny protokół IPC. Jest to jednak jeden z przykładów, o które w pierwszej kolejności poprosił PO.
Spidey
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.