D-Bus
Altre info
- Creato da
- Havoc Pennington (Red Hat)
- Anno
- 2003, versione 1.0 nel 2006
- Proprietario
- freedesktop.org
- Tipo
- Bus di messaggi (IPC)
- Licenza
- AFL 2.1 o GPL 2
- Sito ufficiale
- freedesktop.org/wiki/Software/dbus
Il bus di messaggi attraverso cui comunica il desktop Linux, ormai l'intero sistema Linux: un demone che inoltra chiamate di metodo e segnali tra programmi che non si conoscono affatto.
Prima del 2003 ogni desktop aveva il proprio bus: Sun aveva ToolTalk, KDE aveva DCOP, GNOME aveva CORBA tramite Bonobo. Havoc Pennington di Red Hat scrisse D-Bus sotto freedesktop.org come sostituto comune, prendendo DCOP come modello più vicino. Un programma si collega a un demone tramite socket Unix, rivendica un nome in notazione a dominio inverso come org.freedesktop.Notifications ed espone oggetti con percorsi e interfacce. Gli altri ne chiamano i metodi o si iscrivono ai segnali. Il demone può anche avviare un servizio la prima volta che qualcuno lo richiede.
I bus sono due: un bus di sessione per ogni utente connesso, per le esigenze del desktop, e un bus di sistema dove si incontrano eventi hardware, gestore di rete e systemd, con un file di policy che stabilisce chi può parlare con chi. La versione 1.0 uscì nel 2006; KDE 4 e GNOME vi passarono abbandonando i propri sistemi. Il tentativo di portare il bus nel kernel Linux come kdbus fu respinto nel 2015 e il demone fu riscritto come dbus-broker. Ogni chiamata che passa per un intermediario costa due copie, cosa di cui ci si lamenta da vent'anni senza che nulla l'abbia sostituito.