25 comments

[ 3.2 ms ] story [ 69.6 ms ] thread
HURD is 11 years older than Duke Nukem Forever, if that puts things in perspective. Is it the oldest (ongoing) major software project that has yet to ship?
I used to think that microkernels would eventually become the architecture of choice for desktops and it's nice to see that Hurd is still making progress in that direction. It seems like such an obvious reliability improvement to move as much as possible to user space and as hardware progresses we should be able to make the performance good enough.
Mac OS X is using a Mach microkernel.
Not really. AFAIK, NeXTSTEP/OS X is based on Mach 2.x which wasn't really a microkernel (the BSD code wasn't moved to userspace until 3.0).
XNU (the Mac OS X / Darwin kernel) is based on Mach 3.0 but still has BSD in the kernel:

Early versions of Mach had monolithic kernels, with much of BSD's code in the kernel. Mach 3.0 was the first microkernel implementation.

XNU's Mach component is based on Mach 3.0, although it's not used as a microkernel. The BSD subsystem is part of the kernel and so are various other subsystems that are typically implemented as user-space servers in microkernel systems.

from http://osxbook.com/book/bonus/ancient/whatismacosx/arch_xnu....

(comment deleted)
They are. They're called hypervisors. The way I hear it Xen et alia are the new hotness in deploying Windows across the org in IT.
Have you heard of any major deployments of software directly on top of Xen? I know that HaLVM (http://halvm.org/wiki/) supports doing that but I haven't heard of any production uses for it. Some things, like stateless web servers, seem like they'd be a great fit for deploying on top of Xen.
Everyone who cloud hosts? From Amazon to Linode? http://www.linode.com/wiki/index.php/PV-GRUB

I was talking about client workstations in non-technical environments where central command wants to be able to patch your OS. The Hypervisor downloads OS of the day and runs it, the OS downloads personal settings from some shared server and you have your environment on a disposable workstation.

I meant deployments of software without an operating system other than Xen. Running an operating system on Xen means that you now have the Xen kernel and guest kernel that can have bugs.
I knew I must have been misunderstanding you. No, I am not aware of any.
Webservers can handle a big OS. The hardware is typically over specced as it is. You might find some utility in shrinking/streamlining the OS for embedded or mobile.
(comment deleted)
It's one of my dreams to see it ship and I use it as my primary OS.
These projects violate the spirit and traditions of GNU Hurd, by not including a 'rewrite the system to change the underlying microkernel to something else' project.

We are way overdue for one of these changes. Who will step up to add to the long list (Mach / L4 / Coyotos / Viegoos / back to Mach) of Hurd would-be microkernels?

Bonus points for multiple competing projects in that space...

2011 is the year of the Hurd desktop.
interesting ... i don't know about stallman's involvement in Hurd, but iirc he's been pretty critical of all major software companies, even ones like Google that are friendly to the open-source community. i wonder how he feels about Hurd participating in Summer of Code.
I don't understand how Hurd has taken so long. The GNU project managed to get gcc out, and compilers are harder than kernels. At least, that's how it seems to me as a former Unix kernel hacker. I've had occasion to replace the stock process and memory handling with new implementations of my own from scratch, so I've been pretty deep into the system, and so don't think I've missed some hidden vein of difficulty.