LINUX.ORG.RU

dbus - это и есть кривой недоделанный xml-rpc, работающий через сокеты.

anonymous
()

Наивные сокеты — это соединение точка-точка. А dbus — это именно шина, то есть она умеет в бродкасты и в подписки с фильтрацией. Кроме того, dbus реализует такие сущности как пользовательские сессии и сервисы.

Manhunt ★★★★★
()
Последнее исправление: Manhunt (всего исправлений: 1)

Чтоб два раза не вставать.

Кто что думает о pipe vs socket vs D-Bus в смысле применимости в различных случаях?

anonymous
()
Ответ на: комментарий от Manhunt

.

И ещё в d-bus есть перечислители методов с описаниями типов и сигнатур. В XML-RPC этого типа нет. И ещё, в википедии пишут:

Адреса отправителей и получателей называются путями объектов, поскольку D-Bus предполагает, что каждое приложение состоит из набора объектов, а сообщения пересылаются не между приложениями, а между объектами этих самых приложений

anonymous
()

XML-RPC

Потому-что протокол дыбаса бинарный, а xml - ascii щит.

И да, почему бы не задать вопрос так: Зачем нужен D-Bus, когда есть сокеты и SunRPC?

И вообще, оба ненужнo, потому-что есть erlang.

nanoolinux ★★★★
()
Ответ на: комментарий от Grehaky

А теперь представь, что тсп/ип и езернет вместе с ним - аски бейсед.

nanoolinux ★★★★
()
Ответ на: комментарий от Grehaky

Затем же, зачем plumber и /shr/ в Plan 9.

Но ведь бинарные интерфейсы данных это не юниксвей.

На самом деле, бинарные интерфейсы это не всегда плохо.

quantum-troll ★★★★★
()
Ответ на: комментарий от Grehaky

Но ведь бинарные интерфейсы данных это не юниксвей.

UNIXway умер с появлением разделяемых библиотек, перла и кодировок.

x3al ★★★★★
()
Ответ на: комментарий от x3al

Кодировки умерли с изобретением UTF-8, perl жив, но лишь пока.

quantum-troll ★★★★★
()
Ответ на: комментарий от KendovNorok

Это ЛОР. Ты бы еще на военном фронте вышел и сказал «Братья, хватит воевать, бросайте оружие и будем вместе жить в мире». Ты вроде и прав, но людям нужны флаги

vertexua ★★★★★
()
Последнее исправление: vertexua (всего исправлений: 1)
Ответ на: комментарий от templarrr

This is the Unix philosophy: Write programs that do one thing and do it well. Write programs to work together. Write programs to handle text streams, because that is a universal interface.

С распространением линковки стало более обычным писать библиотеки, делающие одну вещь хорошо, а софт делать жирными обёртками на все случаи жизни над всем этим (пример: весь гнутый софт). Программы получили возможность не работать вместе (завися от багов/изменений друг в друге, пример — недавнее изменение формата выхлопа ifconfig и deprecation того же ifconfig'а), а таскать всё с собой, попутно юзеры избавились от лишних fork()'ов. Вместо текстовых потоков стало возможно использовать стандартизованные бинарные интерфейсы, реализованные в тех же библиотеках. Нет больше смысла надеяться, что всё есть файл (тем более, что это ложь: в юниксах далеко не всё есть файл), если можно вызвать более-менее стандартную функцию из библиотеки.

x3al ★★★★★
()
Ответ на: комментарий от Manhunt

А ничего, что есть ядреный netlink (который, по сути те же сокеты), который умеет и броадкаст и подписки? Единственный минус - доставка сообщений не гарантируется, вот не знаю, как с этим в d-bus.

eagleivg ★★★★★
()
Ответ на: комментарий от eagleivg

netlink он же для ядро-юзерспейс коммуникаций. Зачем в ядро пихать юзерспейс-юзерспейс никто не понимает. Я придерживаюсь мнения, что в ядре это ненужно.

nanoolinux ★★★★
()

дыбас нужен, чтобы причинять боль и страдания разработчикам. не иначе.
проверено, инфа 146%.

aol ★★★★★
()
Ответ на: комментарий от eagleivg

А ничего, что есть ядреный netlink (который, по сути те же сокеты), который умеет и броадкаст и подписки?

И какие у него преимущества, кроме прибитости гвоздями к Linux?

tailgunner ★★★★★
()
Ответ на: комментарий от nanoolinux

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

aol ★★★★★
()
Ответ на: комментарий от tailgunner

А что, кроме линукса есть что-то ещё? BSD - так там есть сокеты, навернуть туда netlink - дело техники, это вам не systemd

А вообще, в контексте обсуждение требование кросс-платформы даже не звучало. Если уж на то пошло, на виндах тоже дбаса нет - следовательно дбас прибит гвоздями к *nix

eagleivg ★★★★★
()
Ответ на: комментарий от eagleivg

BSD - так там есть сокеты, навернуть туда netlink - дело техники

Ахаха.

А вообще, в контексте обсуждение требование кросс-платформы даже не звучало.

В контексте какого обсуждения - этого топика? Что за детские отмазки. DBus делался в рамках freedesktop.org для работы на свободных Unix. Это не говоря уже о том, что и в Linux сокеты netlink предназначены для общения ядра и юзерспейса, а не юзерспейса с юзерспейсом. Ты правда считаешь, что надо было доработать netlink?

Кстати, порт DBus на венду существует и даже включен в основную кодовую базу.

tailgunner ★★★★★
()
Последнее исправление: tailgunner (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.