LINUX.ORG.RU

История изменений

Исправление hateyoufeel, (текущая версия) :

Ага, и оба - ядерные реализации. Надо писать нормальный юзерспейс.

што? bus1 – чистый юзерспейс. Ядерный модуль там был для экспериментов и давно заброшен.

https://github.com/bus1/dbus-broker

Про нормальный юзерспейс расскажи гуглу, который сунул свой Binder по самые гланды в твой лялекс.

Чем конкретно тебя концепт не устроил?

Критики DBus в интернетах – просто до жопы. Навскидку:

  • Проблемы с проверкой доступа
  • Проблемы в случаях удалённых пользователей (например, через LDAP)
  • Крайне дерьмовый протокол, где в каждом сообщении за каким-то хреном передаётся куча метаданных. Например, endianness. Т.е. в теории каждое сообщение может быть big endian или little endian, но нахрена так делать – никто не знает. Протокол был сделан на коленке 20 лет назад и с тех пор только расширялся.
  • dbus не работает с линуксовыми неймспейсами и прочими ништяками. Слать сообщения, например, из одного контейнера в другой никак нельзя, если не объединять их в один сетевой неймспейс, что в принципе жопа какая-то. Т.е. dbus в систему почти не интегрирован.

Это так, из головы взял. Можно ещё больше найти.

Исходная версия hateyoufeel, :

Ага, и оба - ядерные реализации. Надо писать нормальный юзерспейс.

што? bus1 – чистый юзерспейс. Ядерный модуль там был для экспериментов и давно заброшен.

https://github.com/bus1/dbus-broker

Про нормальный юзерспейс расскажи гуглу, который сунул свой Binder по самые гланды в твой лялекс.

Чем конкретно тебя концепт не устроил?

Критики DBus в интернетах – просто до жопы. Навскидку:

  • Проблемы с проверкой доступа
  • Проблемы в случаях удалённых пользователей (например, через LDAP)
  • Крайне дерьмовый протокол, где в каждом сообщении за каким-то хреном передаётся куча метаданных. Например, endianness. Т.е. в теории каждое сообщение может быть big endian или little endian, но нахрена так делать – никто не знает. Протокол был сделан на коленке 20 лет назад и с тех пор только расширялся.

Это так, из головы взял. Можно ещё больше найти.