亟待大牛解答! DBUS的自启动过程 !!
网上有提到基于DBus,“当A要调用B的函数,如果B进程还没有启动,则dbus-daemon会自动的先把B进程启动起来”,请问具体内部是怎么实现的?越详细越好~
------解决方案--------------------Linux 一般发行版上 "/usr/share/dbus-1/services/"目录就是dbus放service文件的地方。
需要自动启动的服务器 就在这个目录放一个 service文件,内容如下:
$ cat /usr/share/dbus-1/services/dhcdbd.service
[D-BUS Service]
Name=com.redhat.dhcp
Exec=/usr/sbin/dhcdbd
Name是服务器的公共名,Exec是服务器的执行路径。
在客户请求一个服务,但该服务还没有启动时,dbus会根据这个service文件自动启动服务。
答案来自 http://blog.csdn.net/linweig/article/details/5068205