A year of the Hurd: 2010.

Originally published in GNU Status Reports: January 2011.

From Olaf Buddenhagen, Arne Babenhauserheide, Thomas Schwinge: Yeah, that's quite right: the GNU Hurd project is still alive!

According to our mission statement, the goal is creating a general-purpose kernel suitable for the GNU operating system, which is viable for everyday use, and gives users and programs as much control over their computing environment as possible. It has a unique multi-server microkernel-based architecture---bringing advanced operating system research to the mainstream. More concretely, it's a collection of user-space server processes that run on the GNU Mach microkernel.

The Hurd doesn't fully deliver on the everyday usability goal yet, but it is seeing continuous improvement---and 2010 has been no exception. Let's take a look at the progress throughout the year.

  • Apart from having done a lot of other work, Samuel Thibault, our Jack of all trades, merged his development branch that added Xen domU support to GNU Mach, which makes it possible to run a GNU/Hurd system as a Xen guest. Development of this started in 2007, and since then it has been heavily tested by using it for the Debian GNU/Hurd build servers, most of our public GNU/Hurd systems, http://www.gnu.org/software/hurd/public_hurd_boxen.html, and the Hurd project's wiki web server.

  • We had Zheng Da work on a new hardware device driver framework, which is based on the Dresden L4 (Fiasco) group's DDE project, and allows running modern Linux kernel drivers as user-space server processes. Many network cards already work perfectly with this new framework. (It has not yet been integrated into the mainstream Hurd code base, so it needs to be compiled and set up by hand.) Other driver classes, such as hard disk controllers, will require further work.

  • As in the previous years, we again participated in the Google Summer of Code 2010. Olaf Buddenhagen is our main guy for organizing this.

    Jérémie Koenig ported the modern Debian Installer to Debian GNU/Hurd. Installation images using the new installer are replacing the previous CD images, which were using an installer based on the old Debian boot floppies (and running under the Linux kernel)---Philip Charles has been maintaining these single-handedly for almost ten years! The new installer images are available from https://cdimage.debian.org/cdimage/ports/stable/hurd-i386.

    Emilio Pozuelo Monfort was investigating specific compatibility problems exposed by the extensive test suites coming with some software packages. Emilio's analysis uncovered a number of programming errors in the Hurd code, and he fixed several of them. As these typically affected other programs too, this improved stability and compatibility in general.

  • Jérémie Koenig created a new implementation of a procfs translator, which is considerably more robust and efficient than the previous one. Tools such as top can now be used without problems.

    Some other translators (gopherfs, netio, tarfs) which have been created by external contributors in the past have been fixed up by Manuel Menal, and packaged in Debian. Thus, some of the results of Hurd's extensible architecture are now easier to access, and these updated translators can serve as examples for other developers to implement their own ideas.

  • In addition to various general stability, compatibility, and portability fixes, several people (Samuel Thibault, Pino Toscano, Emilio Pozuelo Monfort, and others) have been working on fixing issues with specific Debian packages. So far, about 68% of all Debian packages are also available for Debian GNU/Hurd.

  • Michael Walker started the Arch Hurd distribution, and together with other enthusiastic Arch developers (Allan McRae, Matthias Lanzinger, Alexander Preisinger, Stephen Gilles, Diego Nieto Cid) they got it working in an amazingly short amount of time, both as an installable system, and a live CD. So now there is a choice between two well-featured distributions for the Hurd. These new people of course also help forwarding Hurd development in general---Diego in particular contributed various patches to the Hurd console and other components.

  • Carl Fredrik Hammar finished and presented his thesis, Generalizing mobility for the Hurd, http://lists.gnu.org/archive/html/bug-hurd/2010-01/msg00078.html, and passed with distinction.

This is a very short digest of what happened in the last year. You can read our regular Month of the Hurd at http://www.gnu.org/software/hurd/news.html, or by subscribing to our RSS feed at http://www.gnu.org/software/hurd/index.rss.

If you are interested, for example, in doing a university project on a multi-server microkernel-based operating system, or if you are interested in contributing to Hurd development in general, please see http://www.gnu.org/software/hurd/contributing.html. Or just talk to us at bug-hurd@gnu.org or the #hurd IRC channel on freenode.

French article by Manuel Menal, Gnu : L'année 2010 du Hurd.