The rump kernels provide existing real world drivers from netbsd. Since DDE no longer seems like a promising approach to get drivers for the Hurd, it appears that rump kernels are the best alternative. It already does the hard work of providing an environment where the foreign drivers can run, and offers the additional benefit of being externally maintained. Rump also offers the necessary facilities for running all drivers in separate userspace processes, which is more desirable than drivers running in the microkernel.

A rump kernel is a minimal and portable NetBSD kernel running in userspace. Rump kernels provide drivers for modern hard drives, sound cards, usb support, and a TCP/IP stack. Instead of re-inventing and maintaining drivers ourselves, we can re-use the existing NetBSD drivers.

Hurd developers have enabled experimental support for modern hard drives with a rump kernel. We call it rumpdisk, and you can try it in the Debian GNU/Hurd image.

As of May 2023, Hurd users are having good success with it in qemu environments and some are using it on real hardware!

We do hope to use rump kernels for usb support, sound support (this was working at some point), and possibly a new TCP/IP stack, but work has not completed on those projects.

Documentation

Source Code