Movatterモバイル変換


[0]ホーム

URL:


Ir al contenido
WikipediaLa enciclopedia libre
Buscar

D-Bus

De Wikipedia, la enciclopedia libre
Para la compañía explotadora de autobuses urbanos de San Sebastián, d·bus, véaseCompañía del Tranvía de San Sebastián.
D-Bus
Parte deEscritorio Linux
Información general
Tipo de programaComunicación entre procesos (IPC)
Desarrolladorfreedesktop.org
Lanzamiento inicial12 de enero de 2005
LicenciaGPL yAcademic Free License
Versiones
Última versión estable1.8.18( 14 de mayo de 2015 (9 años, 10 meses y 2 días))
Enlaces

Eninformática,D-Bus (Desktop Bus) es un sistema decomunicación entre procesos (IPC) y una llamada a procedimiento remoto (RPC) , paraaplicaciones de software con el fin de comunicarse entre sí. D-Bus fue desarrollado como parte del proyectofreedesktop.org, el cual fue fundado por Havoc Pennington de Red Hat para normalizar los servicios proporcionados por los entornos de escritorio de Linux como GNOME y KDE.[1]

Arquitectura

[editar]

D-Bus es un mecanismo decomunicación entre procesos (IPC) consistente en tres capas:

  • Unabiblioteca,libdbus, que permite a dos aplicaciones conectarse e intercambiar mensajes.
  • Undemonio ejecutable que funciona como bus de mensajes, construido sobre libdbus, al cual pueden conectarse varias aplicaciones. El demonio puede encaminar mensajes desde una aplicación a ninguna o más aplicaciones.
  • Bibliotecas adaptadas (wrappers en inglés) para su uso enframeworks concretos.

Los dos principales puntos de uso de D-Bus son los siguientes:

  • Comunicación entre aplicaciones de escritorio en la misma sesión, facilitando la integración de aplicaciones dentro de un mismoentorno de escritorio y el tratamiento de asuntos relativos al ciclo de vida de procesos.
  • Comunicación entre elsistema operativo y la sesión de escritorio, incluyendo dentro del sistema operativo alnúcleo y algunos demonios oprocesos.

Funcionamiento de D-Bus

[editar]

Toda aplicación que utilice D-Bus contiene objetos, normalmente definidos (aunque no es necesario) como GObject, QObject, objetosC++ u objetosPython. Cuando se recibe un mensaje a través de una conexión D-Bus, este se envía a un objeto específico, no globalmente a la aplicación. De esta forma, D-Bus se apoya en componentes software, y de cara al usuario parece como si un objeto fueraserializado a través de la conexión IPC, sin importar si existe o no un objeto al otro lado de la comunicación.

Para permitir la especificación de destino a los mensajes, debe existir un medio para indicar esa referencia. En muchos lenguajes de programación, esto recibe el nombre depuntero o referencia. Sin embargo, estas referencias se implementan como direcciones de memoria relativas al espacio de direcciones de la aplicación, lo cual no puede intercambiarse de una aplicación a otra.

Para resolver esto, D-Bus introduce un nombre para cada objeto. Dicho nombre se muestra como una ruta delsistema de ficheros. Por ejemplo, un objeto podría llamarse/org/kde/kspread/sheets/3/cells/4/5. Resulta aconsejable utilizar rutas fácilmente inteligibles por humanos, si bien los desarrolladores son libres de crear objetos con nombres como/com/mycompany/c5yo817y0c1y1c5b si así lo desean.

Los nombres de objetos D-Bus se aglutinan enespacios de nombres para asegurar que módulos distintos de código se mantengan separados. Los espacios de nombres generalmente están prefijados en función de los componentes utilizados por los propios programadores (por ejemplo,/org/kde).

Véase también

[editar]

Referencias

[editar]
  1. Vermeulen, Jeroen (14 de julio de 2013). [FreeDesktop.org «Introduction to D-Bus»]|url= incorrecta (ayuda)(en inglés). Consultado el 6 de junio de 2019. 

Enlaces externos

[editar]
Control de autoridades
Obtenido de «https://es.wikipedia.org/w/index.php?title=D-Bus&oldid=133943341»
Categorías:
Categoría oculta:

[8]ページ先頭

©2009-2025 Movatter.jp