D-Bus介绍
1 D-Bus 简介 D-Bus 是 Desktop Bus 的缩写,是针对桌面环境优化的 IPC(interprocess communication) 机制,用于进程间的通信或进程与内核的通信。 IPC 种类很多,适用的情景也不一样: CORBA 是用于面向对象编程中复杂的 IPC 的一个强大的解决方案。 DCOP 是一个较轻量级的 IPC 框架,功能较少,但是可以很好地集成到 K 桌面环境中。 SOAP 和 XML-RPC 设计用于 Web 服务,因而使用 HTTP 作为其传输协议。 D-BUS 设计用于桌面应用程序和 OS 通信。 D-Bus 中 D 是代表桌面“ Desktop ”的意思,即用于桌面操作系统的通信通道。现在逐渐被引入到嵌入式系统中,不过名字还是保留原先的叫法而已。 典型的桌面都会有多个应用程序在运行,而且,它们经常需要彼此进行通信。 DCOP 是一个用于 KDE 的解决方案,但是它依赖于 Qt ,所以不能用于其他桌面环境之中。类似的, Bonobo 是一个用于 GNOME 的解决方案,但是非常笨重,因为它是基于 CORBA 的。它还依赖于 GObject ,所以也不能用于 GNOME 之外。 D-BUS 的目标是将 DCOP 和 Bonobo 替换为简单的 IPC ,并集成这两种桌面环境。由于尽可能地减少了 D-BUS 所需的依赖,所以其他可能会使用 D