D-Bus | ||||
---|---|---|---|---|
![]() | ||||
Ontwikkelaar(s) | Red Hat en de community | |||
Recentste versie | 1.16.0(16 december 2024)[1] ![]() | |||
Status | Actief | |||
Besturingssysteem | Multiplatform | |||
Geschreven in | C | |||
Categorie | Interprocescommunicatie | |||
Licentie(s) | GPL orAcademic Free License 2.1[2] | |||
Versiebeheer | Officiële broncode | |||
Website | (en)D-Bus op FreeDesktop.org | |||
|
D-Bus (Desktop Bus) is ontwikkeld doorRed Hat als onderdeel van hetfreedesktop.org-project om processen onderling gemakkelijk met elkaar te laten communiceren. De concurrerende oplossingDCOP (Desktop Communications Protocol), dat een belangrijk onderdeel was van zowelKDE 2 en 3, heeft als blauwdruk gediend voor de ontwikkeling van D-Bus. Met de komst van D-Bus is DCOP in KDE 4 vervangen door D-Bus en wordt bijGNOME D-Bus ingezet om het oudere Bonobo-mechanisme te vervangen. Ook anderedesktopomgevingen enwindowmanagers maken gebruik van D-Bus.
Met de komst van D-Bus delen de twee grotere werkomgevingen opUnix-achtigebesturingssystemen een gezamenlijke infrastructuur en uniforme manier om op events te reageren. Eenapplicatie zoalsBrasero kan zich bij D-Bus registreren om hardware-events te ontvangen betreffende veranderingen van optische spelers. Wanneer deHardware Abstraction Layer (HAL) deze wijzigingen detecteert zullen deze via een kanaal binnen D-Bus bij de juiste applicaties terechtkomen.
Uit veiligheidsoverwegingen is er een algemeen systeemkanaal, waar voor sommige acties rechten nodig zijn om deze te kunnen zien of om berichten te kunnen versturen. Tevens is er voor elke actieve gebruiker een privékanaal waar alle processen van deze gebruiker overheen kunnen communiceren. Een voorbeeld hiervan is de audiospelerRhythmbox, die informatie verstuurt over welk nummer nu wordt afgespeeld.