Back To Schedule
Saturday, February 8 • 10:40 - 11:20
Anatomy of kdbus

Sign up or log in to save this to your schedule, view media, leave feedback and see who's attending!

In contrast to later OS designs Unix/Linux since its beginning has not provided a standardized, high-level IPC system as part of its system APIs. It has provided various primitives such as AF_UNIX sockets, FIFOs, and various forms of shared memory and synchronization facilities, but it always lacked an established mechanisms for secure, introspectable, standardized local RPC with multicasting signalling. Various attempts have been made to build such a system on top of the available primitives, the most important and successful project being D-Bus. D-Bus brought standardization and introspectability however being designed for exchanging control messages only, brings serious performance issues when it is used to deliver payload.

In this talk we'll discuss "kdbus", our attempt to move D-Bus into the kernel layer, to make it truly universal, and how it is integrated into systemd and its APIs. kdbus brings scalabale, secure, high performance IPC on the kernel level, while staying compatible with classic D-Bus in most ways. From the beginning it has been designed to provide single-copy and zero-copy communication, and namespacing and sandboxing has been designed into it from the beginning.

When designing "kdbus" we took a lot of inspiration from IPC systems in the Operating Systems, including most importantly Android Binder, Mach Ports, Solaris Doors, and QNX IPC, which we will cover in this talk too.

avatar for Lennart Poettering

Lennart Poettering

Red Hat
Lennart works for Red Hat in the Server Experience group, mostly on systemd and related technologies.
avatar for Kay Sievers

Kay Sievers

Software Engineer, Red Hat
Kay Sievers is a computer programmer, best known for developing the udev device manager of Linux, the systemd replacement for the System V init daemon and the Gummiboot EFI boot loader. Kay Sievers made major contributions to the hardware hotplug and device management... Read More →

Saturday February 8, 2014 10:40 - 11:20 CET
Lecture room D3

Attendees (0)