Differenze tra le versioni di "Introduzione a DBus"
(Creata pagina con ''''''[http://it.wikipedia.org/wiki/D-Bus D-Bus]''''' è un sistema di bus di messaggi, un modo semplice per le applicazioni di comunicare tra di loro. In tal senso, dunque, ''...') |
|||
Riga 1: | Riga 1: | ||
− | '''''[http://it.wikipedia.org/wiki/D-Bus D-Bus]''''' è un sistema di | + | '''''[http://it.wikipedia.org/wiki/D-Bus D-Bus]''''' è un sistema di ''[http://it.wikipedia.org/wiki/MBus Message Bus]'', un modo semplice per le applicazioni di comunicare tra di loro. In tal senso, dunque, ''DBus'' è un sistema di comunicazione fra i processi. |
Oltre alla comunicazione tra processi, ''D-Bus'' aiuta a coordinare la vita del processo, lo rende semplice e affidabile per codificare un'applicazione a "''singola istanza''" o ''demone'', e per lanciare applicazioni e demoni su richiesta, quando sono necessari i loro servizi. | Oltre alla comunicazione tra processi, ''D-Bus'' aiuta a coordinare la vita del processo, lo rende semplice e affidabile per codificare un'applicazione a "''singola istanza''" o ''demone'', e per lanciare applicazioni e demoni su richiesta, quando sono necessari i loro servizi. | ||
− | ''D-Bus'' è costituito da un demone, che può essere eseguito sia a livello di sistema e per ogni sessione utente, e una serie di librerie per consentire alle applicazioni di utilizzare ''D-Bus''. Come semplice sistema di scambio messaggi tra processi (demone e utilità), fornisce, dunque, sia un demone di sistema (per eventi del tipo "nuovo hardware aggiunto" o "coda di stampa modificata"), sia un demone ''per-user-login-session'' (per generali esigenze IPC tra le applicazioni utente). Inoltre, il ''[http://it.wikipedia.org/wiki/MBus Message Bus]'' è costruito sulla base di un quadro di riferimento di passaggio di messaggi "''ad uno-a-uno''", che può essere utilizzato dalle due applicazioni per comunicare direttamente (senza passare attraverso il demone del '' | + | ''D-Bus'' è costituito da un demone, che può essere eseguito sia a livello di sistema e per ogni sessione utente, e una serie di librerie per consentire alle applicazioni di utilizzare ''D-Bus''. Come semplice sistema di scambio messaggi tra processi (demone e utilità), fornisce, dunque, sia un demone di sistema (per eventi del tipo "nuovo hardware aggiunto" o "coda di stampa modificata"), sia un demone ''per-user-login-session'' (per generali esigenze IPC tra le applicazioni utente). Inoltre, il ''[http://it.wikipedia.org/wiki/MBus Message Bus]'' è costruito sulla base di un quadro di riferimento di passaggio di messaggi "''ad uno-a-uno''", che può essere utilizzato dalle due applicazioni per comunicare direttamente (senza passare attraverso il demone del ''Message Bus''). |
+ | |||
+ | Qualsiasi applicazione che utilizza il D-Bus contiene oggetti, normalmente definita (anche se non necessario) come GObject, QObject, + oggetti o gli oggetti Python C + +. Quando un messaggio viene ricevuto tramite connessione D-Bus, questo viene inviato a un oggetto specifico, non globalmente all'applicazione. Così, D-Bus si basa sulla componente software, e per l'utente guarda come se un oggetto serializzato esterno attraverso connessione IPC, indipendentemente dal fatto che un oggetto sull'altro lato della comunicazione. | ||
+ | <BR>Per consentire la specificazione dell'obiettivo per i messaggi, è necessario indicare quel riferimento. In molti linguaggi di programmazione, si parla di un puntatore o riferimento. Tuttavia, questi riferimenti sono implementati come indirizzo di memoria nello spazio degli indirizzi dell'applicazione, che non possono essere scambiati tra le applicazioni. Per risolvere questo problema, ''D-Bus'' introduce un nome per ciascun oggetto. Questo nome viene visualizzato come un ''percorso del file system''. I nomi degli oggetti di ''D-Bus'' sono raggruppati in spazi dei nomi per garantire che i vari moduli di codice sono tenuti separati. Gli spazi dei nomi sono generalmente preimpostati a seconda dei componenti utilizzati dagli stessi programmatori. | ||
Riga 10: | Riga 13: | ||
* [http://it.wikipedia.org/wiki/D-Bus D-Bus] | * [http://it.wikipedia.org/wiki/D-Bus D-Bus] | ||
* [http://www.freedesktop.org/wiki/IntroductionToDBus/ IntroductionToDBus] | * [http://www.freedesktop.org/wiki/IntroductionToDBus/ IntroductionToDBus] | ||
+ | * [http://dbus.freedesktop.org/doc/dbus-tutorial.html Tutorial su DBus] | ||
* [http://www.freedesktop.org/wiki/Software/dbus/ Dbus] | * [http://www.freedesktop.org/wiki/Software/dbus/ Dbus] | ||
* [http://www.mbus.org/ Message Bus] | * [http://www.mbus.org/ Message Bus] |
Versione delle 15:21, 8 giu 2013
D-Bus è un sistema di Message Bus, un modo semplice per le applicazioni di comunicare tra di loro. In tal senso, dunque, DBus è un sistema di comunicazione fra i processi.
Oltre alla comunicazione tra processi, D-Bus aiuta a coordinare la vita del processo, lo rende semplice e affidabile per codificare un'applicazione a "singola istanza" o demone, e per lanciare applicazioni e demoni su richiesta, quando sono necessari i loro servizi.
D-Bus è costituito da un demone, che può essere eseguito sia a livello di sistema e per ogni sessione utente, e una serie di librerie per consentire alle applicazioni di utilizzare D-Bus. Come semplice sistema di scambio messaggi tra processi (demone e utilità), fornisce, dunque, sia un demone di sistema (per eventi del tipo "nuovo hardware aggiunto" o "coda di stampa modificata"), sia un demone per-user-login-session (per generali esigenze IPC tra le applicazioni utente). Inoltre, il Message Bus è costruito sulla base di un quadro di riferimento di passaggio di messaggi "ad uno-a-uno", che può essere utilizzato dalle due applicazioni per comunicare direttamente (senza passare attraverso il demone del Message Bus).
Qualsiasi applicazione che utilizza il D-Bus contiene oggetti, normalmente definita (anche se non necessario) come GObject, QObject, + oggetti o gli oggetti Python C + +. Quando un messaggio viene ricevuto tramite connessione D-Bus, questo viene inviato a un oggetto specifico, non globalmente all'applicazione. Così, D-Bus si basa sulla componente software, e per l'utente guarda come se un oggetto serializzato esterno attraverso connessione IPC, indipendentemente dal fatto che un oggetto sull'altro lato della comunicazione.
Per consentire la specificazione dell'obiettivo per i messaggi, è necessario indicare quel riferimento. In molti linguaggi di programmazione, si parla di un puntatore o riferimento. Tuttavia, questi riferimenti sono implementati come indirizzo di memoria nello spazio degli indirizzi dell'applicazione, che non possono essere scambiati tra le applicazioni. Per risolvere questo problema, D-Bus introduce un nome per ciascun oggetto. Questo nome viene visualizzato come un percorso del file system. I nomi degli oggetti di D-Bus sono raggruppati in spazi dei nomi per garantire che i vari moduli di codice sono tenuti separati. Gli spazi dei nomi sono generalmente preimpostati a seconda dei componenti utilizzati dagli stessi programmatori.