Por que preciso do dbus?


17

Eu recentemente removi o dbus do meu sistema (junto com o consolekit e o polkit). Não notei nenhuma alteração (estava sendo executada como daemon do sistema e por usuário a partir do .xinitrc). No entanto, muitas pessoas afirmam que um só precisa de dbus, a maioria dos aplicativos Linux está usando-o etc. etc. Minha pergunta é: por que eu preciso? Acho que não entendo o que exatamente isso faz. Eu sei que é um "sistema de barramento de mensagens", que processos se comunicam através dele etc. E? Ainda não sei o que ganho com o uso. Alguém poderia me explicar, de preferência com exemplos "da vida real"?


3
Não se preocupe, você nem precisará instalar / desinstalar o dbus em um futuro próximo. Agora faz parte do kernel: kroah.com/log/blog/2014/01/15/kdbus-details
yegorich

Respostas:


10

Como usuário final, você não. Não há nada que o D-Bus faça que não possa ser feito de maneira diferente.

Os benefícios do D-Bus são principalmente de interesse dos desenvolvedores. Ele unifica várias partes complicadas de funcionalidade (mensagens orientadas a objetos e com segurança de tipos, ativação de daemon, notificação de eventos, independência de transporte) em um único recurso que funciona da mesma maneira, independentemente da linguagem de programação ou do kit de ferramentas de janelas em uso.


2
Mas alguma aplicação não deveria poder executar se o dbus não estiver presente?
Lalala #

Alguns, com certeza. Mas é possível torná-lo um requisito opcional independentemente.
Ignacio Vazquez-Abrams

As notificações da bandeja do sistema nos DEs são criadas enviando mensagens DBUS. Pelo menos eu tinha uma configuração que usava o DBUS no awesome por esse motivo.
Spidey

@ Spidey: Sim, mas não há razão para que eles não possam usar soquetes de domínio para isso. Acontece que o D-Bus é uma escolha melhor.
Ignacio Vazquez-Abrams

Obviamente, o DBUS é apenas mais um protocolo IPC. Mas este é um dos exemplos que o OP pediu em primeiro lugar.
Spidey
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.