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?
GNU/Hurd vs. GNU/Linux
gnuhurd
Related Solutions
busybox
the favorite of Embedded Linux systems.
BusyBox combines tiny versions of many common UNIX utilities into a single small executable. It provides replacements for most of the utilities you usually find in GNU fileutils, shellutils, etc. The utilities in BusyBox generally have fewer options than their full-featured GNU cousins; however, the options that are included provide the expected functionality and behave very much like their GNU counterparts. BusyBox provides a fairly complete environment for any small or embedded system.
BusyBox has been written with size-optimization and limited resources in mind. It is also extremely modular so you can easily include or exclude commands (or features) at compile time. This makes it easy to customize your embedded systems. To create a working system, just add some device nodes in /dev, a few configuration files in /etc, and a Linux kernel.
You can pretty much make any coreutil name a link to the busybox binary and it will work. you can also run busybox <command>
and it will work. Example: if you're on Gentoo and haven't installed your vi
yet, you can run busybox vi filename
and you'll be in vi. It's
Alpine Linux - based on BusyBox and uClibc, here's an overview
GNU will not adopt something as a project unless the developers agree to certain stipulations which bind all official GNU projects.
Currently the Linux kernel probably does not fit these restrictions, and there is nothing for Linus Torvalds, kernel.org, et al. to gain from placing themselves under the GNU umbrella, and a lot to lose -- the aforementioned binding agreement, and the public perception that the kernel is now a GNU project, which would have a mostly negative impact. GNU's parent organization, the Free Software Foundation (FSF), is a political organization and Torvalds has made various public criticisms of it and the somewhat controversial, iconoclastic lifetime leader/founder of GNU and the FSF, Richard M. Stallman.
Further, the Linux kernel does not require the GNU userspace any more than the GNU userspace requires the Linux kernel. This independence should be considered a good thing by the basic principles of software engineering, which favour modularity and looser coupling as opposed to the opposite (monolithic things with tight coupling).
Another point against this idea is that while HURD may not be of interest to as many people as Linux, the developers and users of HURD may object to having their project effectively dustbinned in a popularity contest. And good for them; "competition" of this sort is a positive thing, whereas bowing to monopolization is not -- you end up with massive entities that stifle creativity in part because they are prone to monolithic/meglomaniacal control. The Linux Foundation already is an independent organization, it might as well stay that way.
Best Answer
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.