System and Session Bus

Oliver Frommel ofrommel at linuxnewmedia.de
Mon Mar 20 00:20:47 PST 2006


> 
> - What is the point in having a separate session bus when
> > a system bus is already running?
> 
> 
> The system bus is there to provide coordination between system-wide services
> that are independent
> of individual users and their apps running, while the session bus is there
> for "desktop communication" primarily,
> that is, to provide coordination and communication between apps that an
> individual user would run (as opposed
> to apps/services that the "system would run").
> 

Ok, thank you so far. 
Can you provide any more actual use cases / examples for
both busses? For instance if I want to make use of HAL
I have to connect to the system bus, right?
In order to have my application communicate with other
programs running in my desktop session I would connect to
my session bus. In practice that would mean most applications
would need to connect to both busses.

When I list the interface names of both busses on FC5 I get:
(system:)
[u'org.freedesktop.DBus', u':1.7', u':1.8',
u'org.freedesktop.NetworkManagerInfo', u'org.freedesktop.Avahi',
u':1.10', u'com.redhat.CupsDriverConfig', u':1.1',u':1.2',
u'org.freedesktop.Hal', u':1.3', u':1.4', u':1.5',
u'com.redhat.PrintDriverSelection', u':1.6']

(session:)
[u'org.freedesktop.DBus', u':1.3', u':1.0', u':1.1',
u'com.redhat.PrinterManager']

So what is the purpose and difference of the printer services 
that are available on the respective busses. 

And to come back to my original question: is it possible to 
connect both busses, maybe just in respect to certain services.
For example I could imagine to have the session bus relay 
all HAL events from the system bus. 

Best
Oliver



More information about the dbus mailing list