D-Bus soll in den Linux-Kernel

Die Kernel-Entwickler planen, den Linux-Kernel um ein neues System zur Interprozess-Kommunikation als Grundlage einer schnelleren Kommunikation per D-Bus zwischen System und Anwendungen zu erweitern.

In Pocket speichern vorlesen Druckansicht 8 Kommentare lesen
Lesezeit: 2 Min.
Von
  • Dr. Oliver Diedrich

Der Kernel-Entwickler Greg Kroah-Hartman hat in seinem Blog über Pläne berichtet, den Linux-Kernel um ein System zur Interprozess-Kommunikation (IPC) zu erweitern, das sowohl eine direkte Punkt-zu-Punkt-Verbindung als auch Multicasts an viele Empfänger erlaubt. Nach den Plänen von Kroah-Hartman soll auf den Kernel-Mechanismen eine D-Bus-Schnittstelle aufsetzen, sodass Linux-Anwendungen ohne Änderungen die Kernel-IPC anstelle von D-Bus nutzen können. Ziel ist es letztlich, die Kommunikation über D-Bus schneller zu machen.

Auf aktuellen Linux-Desktop-Systemen laufen typischerweise mindestens zwei D-Bus-Instanzen: Über den System-Bus kommunizieren Anwendungen mit Systemkomponenten wie Udev, Upower, UDisks und so weiter; der Session-Bus stellt einen Weg zur Kommunikation zwischen den Anwendungen einer Session (normalerweise der Desktop eines Anwenders) bereit. Laut Kroah-Hartman soll das neue IPC-System im Kernel so implementiert werden, dass Anwendungen gar nicht merken, ob sie über einen traditionellen D-Bus oder den Kernel miteinander kommunizieren.

Der Android-Kernel enthält mit Binder bereits einen von Google entwickelten kernel-basierten IPC-Mechanismus; bislang befindet sich der Binder-Code im Standard-Kernel allerdings noch im Staging-Bereich, in den die Kernel-Entwickler Code stecken, den sie nicht für ausgereift genug für den allgemeinen Einsatz halten. In der Google+-Diskussion zum Thema macht Kroah-Hartman deutlich, dass Binder nicht die Grundlage der neuen Kernel-IPC sein werde; vielmehr möchte er umgekehrt das Binder-Protokoll auf Basis der neuen Kernel-IPC implementieren. Die Socket-Adress-Familie AF_BUS, die im Automotive-Bereich als Grundlage schneller IPC per D-Bus dient, komme nicht in Frage, da die Kernel-Entwickler die AF_BUS-Patches für den Standard-Kernel abgelehnt hätten. (odi)