D-Bus позволяет программам общаться. Как реализован этот IPC? Доменные сокеты Unix, общая память + семафоры, именованные каналы, что-то еще? Может быть, комбинация?
Я думаю, что обычно он использует сокеты UNIX. В Linux он может использовать Unix-сокеты «абстрактного пространства имен», которые совпадают, за исключением того, что они физически не существуют в виде видимых файлов в файловой системе.
Это замечательно похоже на вопрос Запрос DBus . И ответ от Google был сокетами - либо для TCP / IP, либо для Unix Domain.
Видимо, 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.
Там в прошлом были некоторые попытки использовать сокеты netlink непосредственно из ядра. Совсем недавно (анонсировано во время последнего LPC) некоторые люди работают над тем, чтобы избавиться от демона пользовательского пространства D-Bus и поместить D-Bus в ядро, возможно, он также будет использовать сокеты, но, возможно, возродит netlink или другие подходы.