Log in

No account? Create an account

Previous Entry | Next Entry

Geeks only.

Looks like GNU finally got a copy of Hurd to load a program.  Not that it can do anything considering that there aren't any filesystems and fork()/exec() are but a gleam in a hacker's eye, but hey, it's a start.

Inevitably, it brought about this comment:

Do you think Microsoft will ever live it down... (Score:5, Funny)
...if GNU/HURD comes out before Longhorn?


( Read 2 comments — Leave a comment )
Feb. 4th, 2005 02:06 pm (UTC)
I read that article on /., but I don't understand what the fuss is about HURD. Care to fill me in, Brent?
Feb. 4th, 2005 10:15 pm (UTC)
Around 1985, Richard Stallman wrote the GPL and started both the Free Software Foundation and the GNU Project. The goal of GNU was to create a complete free ("free as in speech, not as in beer") operating system licensed under the GPL. Basically, RMS wanted to run his computer without using any of the proprietary software he considered so evil.

Between 1985 and 1990, GNU was very productive. They wrote an advanced editor (GNU Emacs), a C compiler (gcc) and library (glibc), a Unix shell (bash), and all of the little utilities like cp and rm and tail needed to run a Unix system. All they had left was the kernel, which they called Hurd.

One of GNU's weaknesses is that they're cathedral-builders; they work slowly, in closed groups, not releasing until it's perfect. Naturally, they wanted to make the most advanced kernel they could using the latest technology. In this case, "the latest technology" meant "microkernel"--a kernel made of small individual components.

So they spent years and years writing a kernel based on the Mach microkernel. Around 1992, Linux came along. It was a monolithic kernel (one big piece instead of small components), intended to be a temporary kernel until GNU finished writing Hurd. (Go look at the early Linux release announcements--it's actually pretty funny how Linus was saying that it would be useful until GNU released Hurd in a couple years.) But GNU continued working on Hurd slowly, and within a few years Linux had become powerful enough to be used anywhere.

Around 2000, Hurd was finally becoming useful. But microkernel technology had advanced significantly since they started building Hurd in 1990; Mach was no longer the best thing around. The new best was a microkernel called L4. So a few months from being finished, GNU decided to drop the Hurd-Mach kernel and create Hurd-L4.

Now, in 2005, they've finally made Hurd-L4 load a program. It can't do anything useful yet, but they're slowly getting closer.

What's the relevance? I'm not sure there is much. It's possible that Hurd will clobber Linux when it comes out--after all, Hurd has an extremely elegant design compared to Linux. If it's faster, it might have a chance. But Linux has a huge head start on features and drivers, so I don't know how likely that is.

On the other hand, symbolically it's huge. The GNU project will have achieved its original goal of writing a completely free Unix. RMS will finally be able to sit at a computer running a completely free, extremely well-featured, and exceptionally designed system.

And nobody else will care.
( Read 2 comments — Leave a comment )