

A Debian GNU/Hurd snapshot - sciurus
https://lwn.net/Articles/554992/

======
mindstab
As time goes on GNU HURD becomes sadder and sadder :/

They can't even seem to be consistently settled on their basics like what
micro kernel they are using

[https://en.wikipedia.org/wiki/Hurd#Other_microkernels](https://en.wikipedia.org/wiki/Hurd#Other_microkernels)

In the 2000s they experimented with 3 other micro kernels, all of which went
"no where". Over half a decade spending their limited dev resources on work
that ultimately went no where since they are still apparently using Mach.

and now (from the article):

\- GNU/Hurd 2013 is available for the 32-bit x86 architecture only

\- Hurd can currently only make use of one CPU (or CPU core). That is to say,
it will still run on multi-core and SMP machines, but only utilizing a single
processor.

\- Hurd generally uses device drivers ported from Linux 2.0 ... So the latest
and greatest shiny hardware might cause trouble.

Once upon a time if you could get it to run on your hardware it was at least
vaguely competitive, but now the thought of putting it on my 64bit quad core
laptop... well... what a waste.

And instead of trying to even keep up, they are still trying to pick the right
micro kernel...

"In years past, Richard Stallman was quoted as saying that Linux was a good
option to use while the Hurd was still incomplete"

~~~
p9idf
The Hurd authors might find your part-time projects just as sad and pathetic
as you find theirs. There's not much I can say beyond that, since you've based
your judgement on vague and wishy-washy concepts like going somewhere, being
"vaguely competitive", and keeping up. It's no business of yours to criticize
the direction of a project you have no involvement or stake in, especially
when you can't articulate what direction you'd prefer.

~~~
mindstab
The problem is HURD isn't positioned as a part time product, it's positioned
as a replacement to Linux, which is inferior technically, just has more hands
on deck right now. I'm not so scornful of the many many many other OS projects
out there because they don't generally act like they are better than all that
exists and going to naturally supplant it if they can just find the right
microkernel... Also very few "side projectS" have been going on for like 25
years... So again my _personal_ side projects are hard to compare to an
organization's quarter century effort.

Direction I'd prefer? Working on modern hardware and taking full advantage of
it! Was that not clear? That's the whole point. They spend all their time on
on designing and redesigning archetecture and their software is now getting
less relevant on real hardware. Mostly only makes sense now to run as a VM.
Which is probably not what they want for the OS that is supposed to replace
Linux....

------
m0th87
Hurd is one of those pieces of tech that just makes me sad. Performance
implications aside, micro-kernels feel so much more "right". It feels like
proper software engineering techniques applied to the kernel-level. How cool
would it be to be able to, e.g. replace the default scheduler with something
that satisfies your niche requirements?

But in Hurd's quarter century of life, it's gone nowhere, while Linux, Windows
and OS X have zipped by. It feels like nothing short of an apocalypse will
bring the micro-kernel back. I think the only major one in the wild in QNX
(Blackberry OS), and that's waning. OS X / NT are no longer microkernels.

"Worse is better" still rings true, in more ways than one.

~~~
strictfp
Remember that microkernels aren't just trying to achieve modularity - they
also take a stab at robustness by failure recovery. This is IMO doomed to fail
- you are much better off trying to achieve robustness by correctness.
Monolithic kernels focus more on correctness and therefore progress much
faster.

~~~
papsosouid
Monolithic kernels don't "focus on correctness". Some people might when
writing one, plan 9 for example. But plenty don't, like linux as the most
obvious example.

~~~
p9idf
Reading the Plan 9 kernel code hasn't convinced me that its authors focused on
correctness. The kernel code is pretty, and its twenty-year-old architecture
could pass as only ten years old; but even excluding drivers, there is no
shortage of bugs.

~~~
papsosouid
You found lots of bugs reading the plan 9 kernel source, and forgot to report
them?

------
rookieMP
A lot of people will point and laugh at HURD, calling it a really sad project
or whatever. Why? Considering the small number of developers, it has come
along spectacularly. Over time, HURD has been improving at a decently
consistent rate. I remember a time when it was nearly impossible to get it
running even on QEMU. God damn people, sure it's missing features; but those
features don't inhibit it running. I, for one, am glad that they decided to
get it stable before they get it fast.

I will always wait for the day I can say my computer runs GNU. Nothing else,
just GNU.

~~~
InclinedPlane
Are you joking?

Linux is named after a guy, why? Because it started out as a single person
project. So did many other major open source projects. The reason why so few
people still work on HURD is because it's not seen as very promising or
interesting or practical.

~~~
rookieMP
Oh right, and Linus Torvalds wrote all the millions of lines of code that
comprise the Linux kernel. Sure it started out as a single person project, but
it certainly didn't stay that way. One of the reasons development on Linux
progresses so quickly is because of the vast number of developers.

HURD, to contrast, had a small base initially and has remained that way.

~~~
Tobu
Linus is a good, pragmatic designer and a fantastic manager. Do give him some
credit for fostering the kernel community.

~~~
rookieMP
I did say "one of the reasons", not "the only reason".

------
lelf
I tried it long time ago. And it's something magical about the fact that you
can have one system (GNU/Linux) and don't have any binaries for other
(GNU/Hurd), only sources for mach, hurd, gcc, glibc and can piece by piece
(cross-)compile everything and get a working system (with gcc! you compile it
by cross-gcc which you compile from your native gcc).

And yes, /dev/null is just translator (think of it as mount point), user-space
program discarding stdin. Oh, and / is just a translator giving access to
/dev/hdX

~~~
Florin_Andrei
Wait, these are all separate processes?

What happens if you crash / ?

~~~
robotresearcher
The service restarts. What happens if you crash the Linux kernel?

I'm a happy monolithic kernel user, but there are some great ideas in the
microkernel model. Just seems to never quite be the best practical choice
except in some niches.

~~~
Florin_Andrei
I was not criticizing, I was genuinely curious.

Okay then, I donwloaded Debian Hurd and made a VirtualBox image out of it.
This should be fun.

