【发布时间】:2010-10-09 00:10:51
【问题描述】:
D-Bus 允许程序进行通信。这个IPC是如何实现的? Unix域套接字,共享内存+信号量,命名管道,还有什么?也许是一个组合?
【问题讨论】:
D-Bus 允许程序进行通信。这个IPC是如何实现的? Unix域套接字,共享内存+信号量,命名管道,还有什么?也许是一个组合?
【问题讨论】:
我认为它通常使用 UNIX 套接字。在 Linux 下,它可以使用“抽象命名空间”Unix 套接字,它们是相同的,只是它们在文件系统中实际上不作为可见文件存在。
【讨论】:
这与问题DBus query 非常相似。谷歌搜索的答案是套接字——用于 TCP/IP 或 Unix 域。
【讨论】:
显然,IPC 或 TCP/IP:
http://www.freedesktop.org/wiki/Software/dbus
更新:
我的意思是,不同操作系统上的多种 IPC 方法,加上 TCP/IP。
http://dbus.freedesktop.org/doc/dbus-daemon.1.html 表明 unix 参考版同时使用 unix 域套接字和 tcp/ip。
【讨论】:
有has been in the past some attempt to use netlink sockets直接来自内核。最近(在上次 LPC 期间宣布),一些人正在努力摆脱 D-Bus 用户空间守护进程并将 D-Bus 放入内核中,它可能也会使用套接字,但可能会恢复 netlink 或其他方法。
【讨论】: