Shaun McCance
shaunm@gnome.org 2011–2012

This work is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License.

За виняткових обставин власники авторських прав можу надати вам дозвіл копіювати, змінювати і розповсюджувати приклади коду, що містяться у цьому документі, за довільних умов, без обмежень.

Канал обміну даними між процесами для надання програмного інтерфейсу для інших процесів
Максим Дзюманенко
dziumanenko@gmail.com 2010
Юрій Чорноіван
yurchor@ukr.net 2020

# D-Bus

D-Bus — шина повідомлень, що не залежить від робочого середовища, і дозволяє обмінюватися повідомленнями різним програмам, середовищем та низькорівневими компонентами системи. D-Bus надає простий програмний інтерфейс надсилання повідомлень окремим службам або широкомовних повідомлень усім службам. D-Bus дозволяє різним типам програм обмінюватися інформацією та інтегруватися одне з одним і з середовищем, забезпечуючи кращу функціональність та взаємодію з користувачем.

D-Bus надає у ваше розпорядження канали обміну даними сеансу та системи. Канал обміну даними сеансу використовується програмами у окремому сеансі роботи користувача і уможливлює для цих програм обмін даними та сповіщеннями щодо подій і інтеграцію у стільничне середовище користувача. Наприклад, програвачі відео можуть надсилати повідомлення D-Bus для запобігання активації зберігача екрана, доки користувач дивиться відео.

Канал обміну даними системи є єдиним каналом обміну повідомленнями, який працює незалежно від сеансів користувача. Канал може обмінюватися даними із програмами у будь-якому сеансі, уможливлюючи взаємодію цих програм із загальносистемними компонентами без потреби у роботі із низькорівневими параметрами системи. Канал обміну даними системи використовують для забезпечення важливих функціональних можливостей, які потрібні користувачам для роботи їхніх систем. Наприклад, канал обміну даними системи використовується для спостереження за встановленням і розірванням з'єднань із мережею, реєстрації з'єднання із системою зовнішніх дисків та визначення моменту критичного розряджання акумуляторів.

Розробку D-Bus виконують спільно на freedesktop.org, тому ним можна скористатися у різних стільничних середовищах і у різних програмах. Оскільки D-Bus є спільним проєктом, ви можете користуватися ним для створення придатного до портування та універсального програмного забезпечення, яке без проблем інтегрується із стільничним середовищем користувача, незалежно від назви цього стільничного середовища.

У GNOME реалізовано повну підтримку D-Bus на основі програмних інтерфейсів GDBus у GIO.

Підручник-довідник з GIO

Настанови щодо D-Bus

Специфікація D-Bus