The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"В рамках проекта D-Bus Broker развивается новая реализация ш..."
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"В рамках проекта D-Bus Broker развивается новая реализация ш..."  +/
Сообщение от opennews on 23-Авг-17, 20:39 
Дэвид Герман (David Herrmann), в своё время разработавший шину обмена сообщениями  Bus1 (https://www.opennet.me/opennews/art.shtml?num=45382) для ядра Linux, представил (https://dvdhrm.github.io/rethinking-the-dbus-message-bus/) новый проект D-Bus Broker (https://github.com/bus1/dbus-broker/wiki), в рамках которого предпринята попытка переосмысления D-Bus и создания новой реализации, устраняющей недостатки штатного демона D-Bus (https://www.freedesktop.org/wiki/Software/dbus/). Код проекта написан на языке Си и распространяется (https://github.com/bus1/dbus-broker/) под лицензией Apache 2.0.


Мотивом создания новой реализации стала излишняя раздутость и переусложнённость  dbus-daemon, в сочетании с обилием отражённых в системе отслеживания ошибок проблем - от неконтролируемого расходования памяти и пропадании сообщений, до возникновения взаимных блокировок и крахов процесса. Некоторые из проблем остаются нерешёнными до 7 лет, в большей части из-за того, что их принципиально невозможно устранить без нарушения гарантированной в dbus-daemon функциональности и существенных архитектурных изменений.

В отличие от Bus1 проект D-Bus Broker реализован целиком в пространстве пользователя, остаётся полностью совместим с эталонной  реализацией D-Bus и может (https://github.com/bus1/dbus-broker/wiki#using-dbus-broker) быть использован для прозрачной замены dbus-daemon. При этом новая реализация спроектирована с оглядкой на поддержку востребованной на практике функциональности и уделяет главное внимание работе по увеличению производительности и повышению надёжности. В D-Bus Broker также принципиально не реализованы функции, помеченные как устаревшие, и расширенные (https://github.com/bus1/dbus-broker/wiki/Deviations) возможности, не отражённые в спецификации D-Bus.


Ключевые  архитектурные изменения в D-Bus Broker:


-  Уход от идеи глобальной совместной шины (Shared Medium), к которой соединяются все обработчики сообщений и через которую осуществляется отправка сообщений. Вместо общей шины предложена концепция отдельных пиров, не имеющих глобального состояния. Когда какой-то пир отправляет сообщения, эта операция рассматривается как транзакция между отправителем и одной или несколькими точками назначения.

-  Отказ от использования дополнительных IPC-механизмов, так как D-Bus сам по себе является IPC и создание надстроек IPC над IPC приводит к появлению взаимных блокировок. Иными словами D-Bus Broker является самодостаточным процессом, который позволяет оперировать только локальными данными и не привязан к внешним обработчикам, таким как чтение файлов и обращение к NSS.


-  Учёт ресурсов в привязке к пользователям. Каждый ресурс и переданный в шину объект привязан к конкретному пользователю. Таким образом, существенно упрощается реализации ограничений и лимиты больше не привязываются к пиру (ограничения теперь зависят от активности каждого пользователя, а не от общей нагрузки на обработчик).

-  Воплощение принципа, что сообщение никогда не может быть потеряно без обработки ошибки. В случае возникновения проблем недопускается возникновения неопределённых ситуаций, каждая ошибка доставки должна быть выявлена и обработана, а в случае невозможности обработки ошибки процесс должен завершить свою работу, а не просто игнорировать возникшие проблемы.


Что касается высокой производительности D-Bus Broker, то её ценой является привязка к современным окружениям Linux -  для своей работы проект требует наличия ядра Linux 4.10 и glibc  2.16, и принципиально не может быть использован в старых дистрибутивах Linux или в других ОС. Предоставляются опциональные компоненты для интеграции с systemd и SELinux.  Обеспечивается работа только локального IPC без поддержки сетевого взаимодействия (при необходимости проброса на другой хост предлагается пробрасывать локальный сокет через SSH).

URL: https://dvdhrm.github.io/rethinking-the-dbus-message-bus/
Новость: http://www.opennet.me/opennews/art.shtml?num=47071

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +13 +/
Сообщение от gogo on 23-Авг-17, 20:39 
Звучит шикарно.
Вот только обратная совместимость выглядит скорее пессимистично. Впрочем, не думаю, что  будут какие-то принципиально нерешаемые проблемы.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  –8 +/
Сообщение от Аноним (??) on 23-Авг-17, 20:44 
> то её ценой является привязка к современным окружениям Linux - для своей работы проект требует наличия ядра Linux 4.10 и glibc 2.16,
> и принципиально не может быть использован в старых дистрибутивах Linux или в других ОС.

Поттеринг покусал?

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

9. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +/
Сообщение от Аноним (??) on 23-Авг-17, 21:40 
systemd-dbusd
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

48. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +2 +/
Сообщение от Анонист on 24-Авг-17, 12:02 
system-d-bus
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

10. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +1 +/
Сообщение от Аноним (??) on 23-Авг-17, 21:41 
А Вы попробуйте разрабатывать под старые дистрибутивы. Куда не ткни, не хватает функции, которая уже давно есть в новых дистрибутивах.

Взять тот же Питон. Для версии 3.4 (ubuntu 14.04) у pathlib.Path.mkdir(...) нет аргумента exist_ok, который есть в версии 3.6 (Debian 9). В результате вместо 6 строк будет уже 12 (добавляется if not p.exists()).

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

11. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  –20 +/
Сообщение от Аноним (??) on 23-Авг-17, 21:55 
> В результате вместо 6 строк будет уже 12

Ого, это же катастрофа!

Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

12. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +9 +/
Сообщение от Аноним (??) on 23-Авг-17, 22:04 
Экстраполировать информацию и делать выводы не умеем?
Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

17. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +3 +/
Сообщение от Elhana (ok) on 23-Авг-17, 22:34 
Экстраполируя эту информацию, в питоне  когда-нибудь будет всего одна функция СделайТоЧтоЯХочу(), но работать оно будет только на самом последнем квантовом компьютере.

Или можно написать 12 строчек, которые в итоге сделают тоже самое, может даже быстрее и оно будет работать у всех и на чем угодно.

Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

18. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +/
Сообщение от Аноним (??) on 23-Авг-17, 22:50 
> Экстраполируя эту информацию, в питоне  когда-нибудь будет всего одна функция СделайТоЧтоЯХочу(),
> но работать оно будет только на самом последнем квантовом компьютере.
> Или можно написать 12 строчек, которые в итоге сделают тоже самое, может
> даже быстрее и оно будет работать у всех и на чем
> угодно.

Дело даже не в этом (не только в этом), а в том, что когда ты видишь эти строки, ты понимаешь, что проверка то нужна. В другом варианте ты потихоньку забываешь о проверках, и в результате .овнокодовость (без воспитателя) возрастает.

Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

21. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +3 +/
Сообщение от cmp (ok) on 24-Авг-17, 00:09 
Сдается мне это проблема питона, а старого линукса, и именно поэтому он идет лесом.
Ответить | Правка | ^ к родителю #18 | Наверх | Cообщить модератору

32. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +1 +/
Сообщение от Аноним (??) on 24-Авг-17, 07:44 
Странные выводы. Проверка бесполезна, если можно указывать аргумент. Это проще. А если таких строчек много, то код становится понятнее, т. к. уменьшается в размере.

А быстрее, чем if это работать не может, т. к. проверка переносится просто внутрь функции. Как была, так и осталась, только в другом виде.

Ответить | Правка | ^ к родителю #18 | Наверх | Cообщить модератору

52. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +/
Сообщение от Аноним (??) on 24-Авг-17, 12:50 
> А быстрее, чем if это работать не может, т. к. проверка переносится просто внутрь функции. Как была, так и осталась, только в другом виде.

Тссс! Не мешай людям наслаждаться плацебо.

Ответить | Правка | ^ к родителю #32 | Наверх | Cообщить модератору

37. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +/
Сообщение от EHLO on 24-Авг-17, 09:16 
>Или можно написать 12 строчек, которые в итоге сделают тоже самое, может даже быстрее и оно будет работать у всех и на чем угодно.

При условии что 12 строчек не на Питоне

Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

13. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +1 +/
Сообщение от Аноним (??) on 23-Авг-17, 22:05 
а еще, а еще!! нельзя например использовать тип auto, если нет с++11
Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

14. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +3 +/
Сообщение от Аноним (??) on 23-Авг-17, 22:07 
Я использую var. Например, var leftpad = require('leftpad').
Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

33. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +/
Сообщение от X2asd (ok) on 24-Авг-17, 07:57 
зарегистрируйся пожалуйста, о гроза электрон-программирования..

...чтоб тебя можно было бы сразу распознавать (и восторгаться твоим электроном, даже когда ты о нём не пишешь)

Ответить | Правка | ^ к родителю #14 | Наверх | Cообщить модератору

22. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  –1 +/
Сообщение от cmp (ok) on 24-Авг-17, 00:12 
А еще на старых ядрах не работает назначение прав на shm, - старые это 3-4 года, для сабжа это критично, сам решал сабжевую задачу, а уперся в штангу.
Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

28. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +/
Сообщение от Аноним (??) on 24-Авг-17, 06:16 
Этот shm - тот ещё костыль. Неудивительно, что в Android написали свой с нуля.
Ответить | Правка | ^ к родителю #22 | Наверх | Cообщить модератору

29. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +1 +/
Сообщение от Аноним (??) on 24-Авг-17, 07:27 
Может что-то неправильно поняли? shm - это разделяемая память. Есть два варианта API: SysV и POSIX. Но реализация в ядре одинаковая. В Андроиде скорее всего она либо неиспользуется, либо используется на уровне системных компонентов (т. к. Java).
Ответить | Правка | ^ к родителю #28 | Наверх | Cообщить модератору

57. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +/
Сообщение от Аноним (??) on 24-Авг-17, 17:51 
Абстрактный "shm" это механизм использования одних страниц памяти в нескольких процессах, тривиально реализуемый в любой ОС с разделяемой памятью.

SysV и POSIX SHM с точки зрения внутреннего устройства — одного поля ягоды. Оба позволяют выделить глобальный сегмент памяти и оставить его валяться, когда выделивший процесс откинул концы. В связи с проистекающим отсюда потенциалом ля утечек памяти (и прочими национальными особенностями), в Android был выпилен апстримный shm драйвер и реализован собственный ("/dev/ashmem"), в котором память выделяется строго по файловым дескрипторам (и соответственно освобождается после закрытия процесса-владельца).

Ответить | Правка | ^ к родителю #29 | Наверх | Cообщить модератору

58. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +/
Сообщение от Аноним (??) on 24-Авг-17, 18:33 
Тогда может не процесса-владельца, а по счётчику ссылок? Почитал, по сути та же разделяемая память, но имя файла тут же удаляется после старта (остаётся только inode со счётчиком ссылок). А подключить в другом процессе можно только передав файловый дескриптор через IPC. Очень даже грамотное решение.

Почти то же самое в плане предотвращения утечек будет, если в разделяемой памяти POSIX удалить файл (unlink) сразу после его создания.

Насколько я понял, разница только в плане безопасности: между созданием и удалением в POSIX можно успеть подключить разделяюмую память в другом процессе.

А по факту сама разделяемая память обычная - через mmap.

Ответить | Правка | ^ к родителю #57 | Наверх | Cообщить модератору

23. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +/
Сообщение от Аноним (??) on 24-Авг-17, 00:36 
> А Вы попробуйте разрабатывать под старые дистрибутивы. Куда не ткни, не хватает
> функции, которая уже давно есть в новых дистрибутивах.

4.10 вышло в этом году. Хотя да, шесть месяцев уже старье старое. Кстати, дебиан таким образом - в пролете.

> Взять тот же Питон.

А, ну если питон брать то да, другое дело! Ведь только питона еще в зависимостях dbus нам для полного Щастья не хватает!
Для пущего ускорения еще в ядро желательно воткнуть, а то ведь обмен сообщениями подразумевает потоки данных в гигазы/сек. - видосик в raw прокинуть или еще что. Механизмов для таких случаев ведь в самом ядре нема, а надобность возникает у каждого второго приложения! Правда, kdbus не прокатил, ну так попытка ведь не пытка!


Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

30. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  –1 +/
Сообщение от Аноним (??) on 24-Авг-17, 07:28 
> 4.10 вышло в этом году. Хотя да, шесть месяцев уже старье старое.
> Кстати, дебиан таким образом - в пролете.

В бэкпортах 4.12 уже.

Ответить | Правка | ^ к родителю #23 | Наверх | Cообщить модератору

53. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +/
Сообщение от Аноним (??) on 24-Авг-17, 12:51 
> Кстати, дебиан таким образом - в пролете.

Один фиг не примут до версии 2.0.

Ответить | Правка | ^ к родителю #23 | Наверх | Cообщить модератору

40. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  –1 +/
Сообщение от Аноним (??) on 24-Авг-17, 09:30 
Linux 2.6.9 хватит всем.
Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

43. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +1 +/
Сообщение от Аноним (??) on 24-Авг-17, 10:39 
Почему именно 2.6.9, а не, например, 2.4.37?
Ответить | Правка | ^ к родителю #40 | Наверх | Cообщить модератору

55. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +/
Сообщение от Аноним (??) on 24-Авг-17, 16:42 
А разработчики питона разве не пишут хорошо переносимый интерпретатор? Что им мешает выпустить версию 3.6 для старых версий, они autoconf не освоили? Благо, mkdir -p как-то же работает во всех версиях, почему бы и exist_ok не быть? :)
Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

60. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +/
Сообщение от Аноним (??) on 24-Авг-17, 21:31 
exist_ok - это не аналог аргумента -p у mkdir. exist_ok не генерирует исключение, если целевой каталог существует. У mkdir подобной опции нет (mkdir my_dir &>/dev/null || true). А аналог опции -p - это аргумент parents у pathlib.Path.mkdir. Он есть и в версии 3.4.

Бэкпортировать новые версии Питона Вам скорее всего никто не станет. Слишком сложная задача будет. Пробовал поставить ansible последний в ubuntu 14.04 через pip3, уже наткнулся на отсутствие библиотеки, а также баг, из-за которого библиотека не тянулась автоматически при наличии прокси-сервера.  В конце концов поставил, но программа не заработала. Дальше разбираться уже не стал.

А если дальше про версии говорить, то, например, в том же ansible в ubuntu 14.04 я не смогу использовать openvswitch_bridge. Просто потому, что там ещё не было опции parent. А без неё мост будет бесполезен в рамках задачи. Попробуйте на ansible то же самое сделать ручками и качественно, чтобы задача исполнялась только один раз и не вызывала событие изменения своего состояния.

Используя новые версии можно сильно сэкономить своё время.

Ответить | Правка | ^ к родителю #55 | Наверх | Cообщить модератору

19. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +1 +/
Сообщение от Аноним (??) on 23-Авг-17, 22:51 
> Обеспечивается работа только локального IPC без поддержки сетевого взаимодействия (при необходимости проброса на другой хост предлагается пробрасывать локальный сокет через SSH).

KISS!

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

24. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  –1 +/
Сообщение от Аноним (??) on 24-Авг-17, 02:19 
...me in ass?
Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

25. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +7 +/
Сообщение от Аноним (??) on 24-Авг-17, 02:45 
Ты любишь, когда в твоей жопе целуются?
Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

34. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +9 +/
Сообщение от Аноним (??) on 24-Авг-17, 08:00 
MGIMO finish?
Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

45. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +/
Сообщение от Аноним (??) on 24-Авг-17, 11:19 
"Поцелуй меня в России"

Слово "Россия" переведено иносказательно.

Ответить | Правка | ^ к родителю #34 | Наверх | Cообщить модератору

44. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +/
Сообщение от Аноним (??) on 24-Авг-17, 10:41 
Всё хорошо в меру и этот KISS тоже.
Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

20. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +/
Сообщение от Аноним (??) on 23-Авг-17, 23:40 
Пользуюсь WM без DBus. Не понимаю зачем он нужен. Единственное что - BlueZ 5 без него не работает. Вы знаете хоть одну прогу, которая хочет DBus? Я - нет, а пользуюсь я не менее 3 софтин постоянно и 15-20 иногда. Даже то, что слинковано с libdbus, спокойно работает с выключенной системной службой.

Вне контекста всяких разных DE - лишняя сущность.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

46. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  –1 +/
Сообщение от SysA on 24-Авг-17, 11:50 
> Пользуюсь WM без DBus. Не понимаю зачем он нужен. Единственное что -
> BlueZ 5 без него не работает. Вы знаете хоть одну прогу,
> которая хочет DBus? Я - нет, а пользуюсь я не менее
> 3 софтин постоянно и 15-20 иногда. Даже то, что слинковано с
> libdbus, спокойно работает с выключенной системной службой.
> Вне контекста всяких разных DE - лишняя сущность.

Для админов локалхоста - однозначно! (С)

Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору

54. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +4 +/
Сообщение от Аноним (??) on 24-Авг-17, 13:41 
>> Пользуюсь WM без DBus. Не понимаю зачем он нужен. Единственное что -
>> BlueZ 5 без него не работает. Вы знаете хоть одну прогу,
>> которая хочет DBus? Я - нет, а пользуюсь я не менее
>> 3 софтин постоянно и 15-20 иногда. Даже то, что слинковано с
>> libdbus, спокойно работает с выключенной системной службой.
>> Вне контекста всяких разных DE - лишняя сущность.
> Для админов локалхоста - однозначно! (С)

То ли дело одмины нелокалхостов - без Desktop-Bus жить не могут!


Ответить | Правка | ^ к родителю #46 | Наверх | Cообщить модератору

64. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +1 +/
Сообщение от Аноним (??) on 25-Авг-17, 07:05 
На серверах dbus тем более не нужен.
Ответить | Правка | ^ к родителю #46 | Наверх | Cообщить модератору

49. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +2 +/
Сообщение от Аноним (??) on 24-Авг-17, 12:07 
>Единственное что - BlueZ 5 без него не работает.

Расскажу тайну, брат анонимус. BlueZ и с dbus не работает. Он просто не работает, потому что написан через задницу.

Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору

51. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +/
Сообщение от Аноним (??) on 24-Авг-17, 12:19 
>>Единственное что - BlueZ 5 без него не работает.
> Расскажу тайну, брат анонимус. BlueZ и с dbus не работает. Он просто
> не работает, потому что написан через задницу.

Что использовать для работы с bluetooth? Желательно что бы и из CLI работало и bluetooth pairing из скриптов можно было сделать!

Ответить | Правка | ^ к родителю #49 | Наверх | Cообщить модератору

26. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +3 +/
Сообщение от eSyr (ok) on 24-Авг-17, 03:24 
Не прошло и 10 лет, как кто-то последовал заветам Линуса.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

72. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +/
Сообщение от Аноним (??) on 29-Авг-17, 22:29 
Не прошло и 10 лет и сишники поняли как должна работать шина
Ответить | Правка | ^ к родителю #26 | Наверх | Cообщить модератору

27. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  –1 +/
Сообщение от Аноним (??) on 24-Авг-17, 03:30 
Нелавно узнал про D-Bus отличная штука можно сообщения посылать между приложениями и даже действия совершать. Почти что шина для умного дома, но в рамках одного компьютера. Насчет смены концепции не знаю, но звучит как реализация PubSub. Вот только ни одной реализацией я что-то не был доволен.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

31. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  –5 +/
Сообщение от лютый жабист__ on 24-Авг-17, 07:44 
Столько лет наступать на одни и те же грабли, переписал бы на rust-е.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

41. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +4 +/
Сообщение от Аноним (??) on 24-Авг-17, 09:34 
Не, лучше на хацкеле и встроить в ядро, вместе с хацкелем. Полумеры - для слабаков.
Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

62. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  –1 +/
Сообщение от leap42 (ok) on 25-Авг-17, 06:58 
а хацкель должен быть написан на расте, иначе растофанатики не успокоятся и будут под каждым релизом гадить своими комментами в духе: "а писали бы все на расте..."
Ответить | Правка | ^ к родителю #41 | Наверх | Cообщить модератору

67. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  –1 +/
Сообщение от нах on 25-Авг-17, 19:30 
> Не, лучше на хацкеле

на OCaml. хацкель каждый дурак понять сможет.

Ответить | Правка | ^ к родителю #41 | Наверх | Cообщить модератору

68. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  –1 +/
Сообщение от Kitty email(??) on 27-Авг-17, 17:07 
>>встроить в ядро, вместе с хацкелем

Уже было, но GHC мусор после себя не прибирает. Он же скорее под userspace сделан.
https://wiki.haskell.org/Kernel_Modules

Ответить | Правка | ^ к родителю #41 | Наверх | Cообщить модератору

35. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +4 +/
Сообщение от Аноним (??) on 24-Авг-17, 08:15 
Вот что животворящий gprof от Линуса делает. Как он и говорил не нужно всю эту каку в ядро тянуть, достаточно юзерспейса.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

61. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +2 +/
Сообщение от Аноним (??) on 24-Авг-17, 21:32 
David Hermann пишет, что dbus-broker полагается на возможности, появившиеся в ядре совсем недавно, буквально пару месяцев назад. Т.ч. в споре разработчиков kdbus и ядерщиков фактически победил компромисс: Торвальдс отказался от kdbus, но вместо этого смерджил код, необходимый для реализации чего-то подобного в юзерспейсе. Т.е. придумал более компактное и универсальное решение - впрочем ничего нового, за способность видеть такие вещи наперед Торвальдса и уважают в индустрии.
Ответить | Правка | ^ к родителю #35 | Наверх | Cообщить модератору

39. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +1 +/
Сообщение от Аноним (??) on 24-Авг-17, 09:25 
> kdbus
> Bus1
> D-Bus Broker

Больше дубасов хороших и разных!

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

42. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +1 +/
Сообщение от Аноним (??) on 24-Авг-17, 09:59 
Это лучше. Это брокер дубаса.
Ответить | Правка | ^ к родителю #39 | Наверх | Cообщить модератору

66. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  –1 +/
Сообщение от annual slayer on 25-Авг-17, 19:08 
шутки шутками, а в этом году целых 4 компании с дубасом вышли на биржу
Ответить | Правка | ^ к родителю #42 | Наверх | Cообщить модератору

47. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +2 +/
Сообщение от Demo (??) on 24-Авг-17, 11:50 
> D-Bus Broker ... принципиально не может быть использован
> в старых дистрибутивах Linux или в других ОС.

Просто прелесть!

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

56. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +2 +/
Сообщение от anonymous (??) on 24-Авг-17, 16:49 
Мне всегда нравилась идея общей шины и dbus. Пока я не обнаружил, что большинство реализаций не умеет корректно обрабатывать отсутствие dbus сервиса. Что будет делать браузер, если у тебя отключён интернет? Просто перестанет открывать странички из интернета, локальные будет показывать. Что делает браузер, если у тебя отключён dbus (а браузер собран с поддержкой dbus) - перестаёт работать. Офигеть. Неужели нельзя было проверить доступность? Большая часть клиентских библиотек для dbus тупо пытается стартовать dbus сервис сама (и не выключает его после завершения работы программы). Когда я это пресёк, я и выяснил, что вариант "dbus не доступен" авторами 95% софта не учитывается.

Всё это от того, частично, что есть всего одна популярная реализация стандарта dbus. Был бы стандарт зрелый, было бы несколько вариантов софта, и какой-то из них научился бы обрабатывать отсутствия сервиса корректно.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

63. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  –1 +/
Сообщение от leap42 (ok) on 25-Авг-17, 07:00 
dbus - жуткий костыль, возникший на месте вменяемого ipc в GNU/Linux. откуда же взяться нормальной реализации?
Ответить | Правка | ^ к родителю #56 | Наверх | Cообщить модератору

65. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +1 +/
Сообщение от anonymous (??) on 25-Авг-17, 08:36 
С чего это вы message queue называется костылём? Очень часто встречающаяся концепция IPC. RabbitMQ - тоже костыль? ОС предоставляет низкоуровневые концепции IPC. Абсолютно нормально дополнять их более высокоуровневыми концепциями, реализованными поверх них. Система акторов и транзакционная память - тоже костыли?
Ответить | Правка | ^ к родителю #63 | Наверх | Cообщить модератору

71. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  –1 +/
Сообщение от intelfx (ok) on 29-Авг-17, 05:21 
> Что делает браузер, если у тебя отключён dbus (а браузер собран с поддержкой dbus) - перестаёт работать. Офигеть. Неужели нельзя было проверить доступность?

Ну офигеть теперь. Ты ещё предложи программам обходиться без наличия UNIX-сокетов, там, графического тулкита или libc. "Собираю ядро без сокетов, а у меня все программы отваливаются! Неужели нельзя было проверить доступность? Ну и г-ноделы!"

Ответить | Правка | ^ к родителю #56 | Наверх | Cообщить модератору

73. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +/
Сообщение от Аноним (??) on 01-Сен-17, 20:36 
Тащемт@, всякие autotools на этапе сборки проверяют. :)

Но это не спасает в случае, когда софт собран на одной системе, а эксплуатируется на других, а таких случаев большинство.

P.S. С чего это вдруг "т@щемта" форум посчитал ненормативной лексикой? Обычное не неприличное, хоть и слэнговое, слово.

Ответить | Правка | ^ к родителю #71 | Наверх | Cообщить модератору

59. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  –1 +/
Сообщение от Аноним (??) on 24-Авг-17, 19:17 
Ошибка при компиляции c-sundry - static assertion failed: "" ( Gcc 7.2.0 Glibc 2.26)
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

75. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +/
Сообщение от Аноним (??) on 01-Янв-18, 01:42 
А не проще PUB/SUB в Redis использовать?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

76. "В рамках проекта D-Bus Broker развивается новая реализация ш..."  +/
Сообщение от username (??) on 01-Янв-18, 23:46 
Шел 2018 год, Линукс до сих пор игнорил десктоп а задачей номер один была бесконечная война за реализацию шины и перестройка графических подсистем.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру