D-Bus Broker: annunciato un nuovo IPC

L’IPC (Inter-Process Communication) D-Bus si avvicina al 15° compleanno. Una bella età per un progetto opensource!
Ma nonostante i tanti anni di sviluppo, D-Bus ha ancora molti punti critici – o veri e propri bug – aperti, alcuni irrisolti da anni. Nessuno di quei problemi è di per sé sufficiente per giustificarne l’abbandono, e per molti sono stati escogitati dei workaround efficaci. Ma per David Herrmann (già autore di BUS1) il problema non è risolto né risolvibile in D-Bus, vista anche la necessità di mantenere questa implemetazione compatibile con il passato. Che fare allora? Farne una nuova, un nuovo punto di partenza che non guardi al passato.

Nel (lungo) post di presentazione viene dapprima fatto un quadro del presente, un po’ di teoria del come dovrebbe essere ed infine l’annuncio dell’esistenza di una nuova implementazione: dbus-broker. E sembra pure già utilizzabile, almeno su Fedora (ed è disponibile un pacchetto per Arch) – per quanto, come sempre per il software in sviluppo, se ne consiglia l’uso solo in macchine di prova.

Le caratteristiche salienti:

  • implementazione di un bus puro;
  • solo locale;
  • nessun supporto a funzionalità considerate deprecate;
  • solo per linux;
  • pipeling (aggregazioni di più operazioni in una unica);
  • nessuna deviazione dalle specifiche;
  • API per il controllo dell’aplicazione.

Tutto questo dovrebbe portare ad un sistema per l’IPC più performante ed affidabile: personalmente non vedo l’ora di provarlo. Anche voi? provate a dare un occhio al wiki con le istruzioni! 😉

Ho coltivato la mia passione per l’informatica fin da bambino, coi primi programmi BASIC. In età adulta mi sono avvicinato a Linux ed alla programmazione C, per poi interessarmi di reti. Infine, il mio hobby è diventato anche il mio lavoro.
Per me il modo migliore di imparare è fare, e per questo devo utilizzare le tecnologie che ritengo interessanti; a questo scopo, il mondo opensource offre gli strumenti perfetti.

6 risposte a “D-Bus Broker: annunciato un nuovo IPC”

  1. Avatar RiccardoC
    RiccardoC

    interessante, ma a guardare la history su github questo progetto ha fatto la prima release a luglio… ok provarlo su sistemi non critici, ma ce ne vorrà prima che diventi una implementazione da prendere in considerazione per deploy più seri…

  2. Avatar Marco Bonfiglio
    Marco Bonfiglio

    Risultato di un veloce test personale su Arch: funziona bene, sia il dbus specifico dell’utenza che quello di sistema.
    Per il secondo ho notato solo un problema con NetworkManager, e nello specifico con una VPN di openVPN (sembra non sia in grado di leggere i certificati).
    Ovviamente non è un test esaustivo, ma direi che la strada è quella giusta.

  3. Avatar RiccardoC
    RiccardoC

    grazie per il feedback; chiaro che io parlavo in termini di computer usati intensamente ed a lungo, sia server sia desktop. Se nel tuo test veloce hai già trovato qualche problema con una singola configurazione, penso che ancora la strada da fare sia davvero molta.
    E’ un buon inizio, ma sarà da valutare in scenari da “real world” (in poche parole lo posso provare sul muletto, ma non è il caso di metterlo sul computer con cui lavoro o su un server per me importante al momento; se il muletto crasha alla peggio faccio un rollback)

  4. Avatar Alberto Mesin
    Alberto Mesin

    … ma a nessuno disturba che sia un IPC che gira solo su Kernel Linux???… e la portabilità delle applicazioni che lo usano?!?!?… stesso discorso vale per il discusso SystemD…

  5. Avatar Marco Bonfiglio
    Marco Bonfiglio

    Se interessa, con l’ultima versione git (e sempre su Arch) anche quel problema è sparito: ora lo uso sia per il sistema che per l’utenza con soddisfazione (ripeto che è sempre e solo un test sul mio pc personale).

  6. Avatar Marco Bonfiglio
    Marco Bonfiglio

    Dbus-broker, sfruttando le particolarità del kernel Linux, non può fare altro che girare solo sotto linux. Per systemd il discorso potrebbe essere un poco diverso, ma non molto: l’interesse dello sviluppatore è sempre stato solo Linux e nessuno ha ancora fatto un porting (reale).
    Ricordo poi che la portabilità è – normalmente – più un gradito effetto collaterale che una caratteristica richiesta; parlando poi di componenti del sistema operativo diventa – praticamente- un controsenso: se ho bisogno delle caratteristiche di linux userò linux e non – per dire – FreeBSD…

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *