22

I was quite surprised to learn that the GNU project has an independent kernel of their own called Hurd. And there are mainstream distributions like Arch Hurd and Debian GNU/Hurd which uses it. Is there any significant advantage for Hurd over Linux?

3
  • 9
    The distribution of Debian which runs the FreeBSD kernel is a more significant player. People are actually using that for production work, unlike the Hurd. Oct 29, 2011 at 16:54
  • <a href="rixstep.com/1/20110807,00.shtml">Here</a> are some further thoughts on the OS differences that arise from different kernel architectures (monolithic kernel vs microkernel).
    – user11967
    Oct 31, 2011 at 8:21
  • I agree. GNU/HURD today is no less effective than GNU/Linux. Aug 6, 2016 at 10:24

3 Answers 3

19

At this point in time, considering there is no "stable" distribution of GNU/Hurd, the major advantages seem to lie with Linux.

A good place to start understanding the differences between a Mach microkernel, and a traditional monolithic unix kernel is the Wikipedia page on Mach (Kernel).

As an interesting note, Mac OS X, uses a Mach Kernel, called XNU. Though based on Mach 3.0, it's not a microkernel, like Hurd is. It makes sense, since Jobs brought the Mach kernel from NeXT to Apple when Apple bought NeXT.

Happy Reading.


Status Update 2018

In the first 6 months of 2018, the git repo for HURD received only 40 commits, so rumors of stability may be exaggerated. And the number of active code contributors is down to something like 5. So, GNU/Hurd is still at a major disadvantage to GNU/Linux. Check back in 2025 after another 7 years, for another update.

See this article from Phoronix for detail.

5
  • You might want to update your answer now. As of 2013 the hurd is a remarkable piece of software that is moving forward nicely, and is now in the position to stay online for quite some time before needing to be taken down (there are still some memory leaks). You can find more information here and here Feb 17, 2013 at 8:55
  • 6
    @NlightNFotis Suggest you post your own answer.
    – derobert
    Aug 22, 2013 at 15:27
  • @NlightNFotis how about as of 2016? any updates? Oct 27, 2016 at 20:28
  • As of March 2017, it is finally getting to be stable. But, it is still not ready for production. It still has serious unresolved bugs and missing features. Mar 23, 2017 at 17:29
  • 2
    A low number of commits may mean stability. A high number of commits may mean unstable. Or it may be the opposite. It kinda depends on what's committed.
    – Kusalananda
    Feb 8, 2019 at 8:39
12

Hurd was the original 'anticipated' kernel BEFORE Linux existed. It has been under development, seemingly for years. During that time, Linus Torvalds along with volunteers worldwide, developed and implemented a kernel that is large, but worked. It was enhanced with programmers from many software firms including Redhat, HP and IBM. It is reliable and works. Mach adhere to the Minix philosophy of having a simple microkernel. I would suggest you take a look at the work of Minix if you would like to see the differences in philosophy. Though the microkernel may have some theoretical advantages, all of the literature I have read, seems to favor the kernel strategy taken by Linux.

3
  • 6
    There are cases where the separation a microkernel offers is worth the costs - usually systems that have to be highly reliable and able to cope with as many errors as possible. Typically anything running on an aircraft (apart from on-board entertainment systems) or in automotive industry. Generally places where less is more, since lives are at risk.
    – peterph
    Jan 30, 2014 at 21:34
  • "seemingly" for years?
    – Kusalananda
    Feb 8, 2019 at 8:39
  • @Kusalananda decades. When Linus was writing his own code, Stallman was being publicly laughed at on the forums (well... on USENET), because Linus managed to complete 'his' non-proprietary kernel code for the x386 architecture, while GNU Hurd, well, was still in the drawing board... not really, but nothing serious could be done with it. Aug 9, 2023 at 15:27
5

According to the Wikipedia article on GNU Hurd:

In 2010, after twenty years under development, Stallman said that he was "not very optimistic about the GNU Hurd. It makes some progress, but to be really superior it would require solving a lot of deep problems", but added that "finishing it is not crucial" for the GNU system because a free kernel already existed (Linux), and completing Hurd would not address the main remaining problem for a free operating system: device support.

It seems that it would take a large amount of work to complete the project and resolve the issues that it is facing. On top of this, it is quite unclear what (if any) benefits the Hurd kernel would bring to most normal users over the current Linux kernel, which has had a large amount of resources poured into it over many years and works very well on a wide range of architectures.

Because of this, it seems that Hurd is little more than an academic exercise at this point. With no real driving need behind it, it seems unlikely that it will reach full usability any time soon, let alone catch up with or exceed the impressive capabilities of Linux. I don't mean to knock the Hurd developers, but I wouldn't hold your breath ...

1
  • 1
    Having been around since 1990 waiting for Stallman to 'finish' Hurd, I have long ago stopped holding my breath. GNU/Linux was already 'a thing' before even Hurd was a name. Aug 9, 2023 at 15:29

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .