зачем нужен D-BUS?
Модератор: Модераторы разделов
-
amaora
- Сообщения: 95
- ОС: Slackware
зачем нужен D-BUS?
Да да, я знаю это IPC, разработано RedHat, для взаимодействия дексктопных приложений. Но как только пытаюсь узнать об этом больше, вижу сходство с COM, ActiveX и остальными созданиями Microsoft из этой области, смысл существования которых мне тоже неизвестен. Ни когда не понимал зачем все так усложнять, здесь опять же все замешано на ООП, та же монстрообразность, те же недостатки всех RPC, и та же невозможность взаимодействия приложений явно не предусмотренного разработчиком. Один из примеров использования D-BUS, это получение от ядра или от HAL событий связанных с hot-plug устройствами, почему нельзя просто читать эти события из файла, в виде текста?
кто здесь?
-
*Sasha*
- Сообщения: 2519
- Статус: Мимо шёл
- ОС: Debian
-
Portnov
- Модератор
- Сообщения: 1786
- Статус: Матёрый линуксоид
- ОС: Debian testing/unstable
Re: зачем нужен D-BUS?
А как узнать, что в файле появились новые данные? Придётся регулярно его проверять, а это трата системных ресурсов (а на ноутах - еще и трата батареи). В linux есть inotify, но это linux-специфичная штука, непортируемо. Потом, нужно как-то различать сообщения от разных источников и разные типы данных.
Ну и в качестве конструктива: http://vitus-wagner.livejournal.com/293683.html
Работа: Ubuntu 9.10
Дом: Debian testing/unstable и на всякий случай winxp в virtualbox.
Для разнообразия: моя домашняя страница -http://iportnov.ru
Дом: Debian testing/unstable и на всякий случай winxp в virtualbox.
Для разнообразия: моя домашняя страница -http://iportnov.ru
-
Gogast
- Сообщения: 549
- ОС: Gentoo amd64
Re: зачем нужен D-BUS?
для того чтобы одно приложение могло управлять другим
для управления приложением из консоли\скрипта
для управления приложением из консоли\скрипта
Без виндовза 3 года
-
amaora
- Сообщения: 95
- ОС: Slackware
Re: зачем нужен D-BUS?
Portnov писал(а): ↑05.10.2008 18:17
А как узнать, что в файле появились новые данные? Придётся регулярно его проверять, а это трата системных ресурсов (а на ноутах - еще и трата батареи). В linux есть inotify, но это linux-специфичная штука, непортируемо. Потом, нужно как-то различать сообщения от разных источников и разные типы данных.
Ну и в качестве конструктива: http://vitus-wagner.livejournal.com/293683.html
Либо блокировка чтения, либо select/poll.
Мне нравится такой способ,
Все программы создаются в виде сервера, с простым файлово-текстовым интерфейсом, и клиента, с одним сервером может взаимодействовать более одного клиента, графический клиент и например скрипт, одна программа - один интерфейс для всех. А с D-BUS надо делать графический интерфейс для пользователя-человека и ещё один интерфейс для взаимодействия с пользователями-процессами, два интерфейса - рассинхронизация неизбежна.
кто здесь?