Once upon a time, the kernel stood alone and presented services to the system by way of the system call interface. In current systems, instead, users see a view of the system that is created by a whole set of utilities, including the C library, udev, HAL and more. Interactions between these low-level components and the kernel are not always as smooth as they could be, and despite the best efforts of the kernel development community, kernel releases have been known to occasionally break utilities like udev.
Jonathan Corbet calls this the “kernel ecosystem”. We call it the “plumbing,” a collection of essential interfaces and services provided by the libraries, kernel, and utilities that make up a Linux system. Currently, when a problem exists that involves both kernel and user space, a developer must attend several different conferences to discuss the problems face-to-face with other key developers. As a result, problems crossing multiple subsystem boundaries are more difficult to solve than those within a subsystem.
Will update once the conference is over ..time to sleep