D-BUS
维库,知识与思想的自由文库
|
D-BUS是提供简单的应用程序互相通讯的途径的软件系统,它是做为freedesktop.org项目的一部分来开发的。 [编辑] 架构D-BUS是一个设计目标为应用程序间通信的消息总线系统。它是个3层架构的进程间通信(IPC)系统,包括:
D-BUS是为了两个特定情况而设计的:
[编辑] D-BUS运作方式所有使用D-BUS的应用程序都包含一些对象,它们一般映射为GObject、QObject、C++对象、或者Python对象(也许不需要)。一个对象是一个实例而不是类型。当经由一个D-BUS连接受到一条消息时,该消息是被发往一个对象而不是整个应用程序。 为了允许消息能指定接受对象,还要提供引用对象的方法。在你偏爱的编程语言中,它也许叫做指针或者引用。但是上述所谓引用一般实现为与应用程序相关的内存地址,因此无法在应用程序之间传递。 为了解决这一问题,D-BUS为每个对象引入名字。这些名字看起来像是文件系统路径,例如一个对象可能叫做“/org/kde/kspread/sheets/3/cells/4/5”。易读的路径名是受鼓励的做法,但也允许使用诸如“/com/mycompany/c5yo817y0c1y1c5b”等,只要它可以为你的应用程序所用。 Namespacing的对象路径以开发者所有的的域名开始(如 /org/kde)以避免系统相同进程内不同代码模块互相干扰。 [编辑] 链接 |


