Леннарт Поттеринг (Lennart Poettering) объявил об интеграции в дерево исходных текстов systemd нового модуля libsystemd-bus, в рамках которого подготовлена экспериментальная реализация альтернативной клиентской библиотеки для протокола D-Bus. От повсеместно используемой библиотеки libdbus, развиваемой сообществом FreeDesktop.org, вариант от проекта systemd отличается поддержкой работы с использованием подсистемы kdbus, планируемой для интеграции в ядро Linux и представляющей собой аналог протокола D-Bus, реализованный на уровне ядра и позволяющий обойтись без необходимости запуска в пространстве пользователя отдельного демона D-Bus.

Отмечается, что libsystemd-bus предоставляет минималистичный, но полноценный вариант клиентской библиотеки D-Bus. По размеру libsystemd-bus существенно меньше libdbus. Библиотека libsystemd-bus позиционируется прежде всего для внутреннего использования в systemd и отталкивается в своих возможностях от потребностей systemd. Библиотека не предоставляет биндинги для разных языков программирования, не пытается быть переносимой на неподдерживаемые в systemd платформы и не предоставляет расширенный уровень абстракции, но рассчитана на удобное и простое использование из приложений на языке Си.

В настоящее время код libsystemd-bus интегрирован в экспериментальном режиме, не собирается по умолчанию и непосредственно не используется в работе systemd. В текущем виде libsystemd-bus является первой попыткой создания пользовательских компонентов для подсистемы ядра kdbus, разработка которой пока не завершена. Тем не менее, libsystemd-bus поддерживает не только работу поверх kdbus, но и передачу сообщений через традиционный демон dbus, что позволяет организовать передачу сообщений при работе "systemctl -H" на внешние хосты.

Переход на технологии kdbus и libsystemd-bus будет осуществлён пошагово и будет завершён скорее всего в течение следующего года, максимально гладко для дистрибутивов, использующих systemd. Поддержка kdbus пока остаётся прерогативой систем на базе systemd, так как общая инфраструктура для работы D-Bus поверх kdbus изначально развивается командой systemd и достаточно плотно интегрирована в системный менеджер. Для не использующих systemd систем не исключается создания собственных портов libsystemd-bus и реализаций шины D-Bus поверх kdbus, но появление таких реализаций целиком зависит от заинтересованных в них сторонних разработчиков.

Источник: http://www.opennet.ru/opennews/art.shtml?num=36457