Live data from Hacker News

Gnu/Hurd strikes back: How to use the legendary OS in a (somewhat) practical way

mhatta.medium.com

221–230 of 273 posts

Re: Gnu/Hurd strikes back: How to use the legendary OS in a (somewhat) practical way

#221
post #31
post #26

Earlier quoted context omitted.

That's the big unknown question with microkernels. It was (in the 90s) a reasonable theory that a microkernel could be much more robust and secure and easy to develop than a monolithic kernel. It would be more robust because individual services could crash and restart. That could really work for, say, WiFi drivers. It doesn't quite work for disk drivers or the file system, since how do you even restart something with…

Right, I remember parts of that history. Memory protection schemes in other operating systems didn't exactly stay static, though. And a ton of the optimizations that monolithic kernels (mostly looking at windows) did went away just with the lack of need for them. Heck, at the time, Mac wasn't even a preemptive multitasking operating system. And "drivers" could just restart is laughable with a role play of it. Ok, you…

It can be done though: see what Windows has managed to do with graphics drivers. I've experienced a full crash of the graphics driver and windows just restarted it and kept on trucking, the only casualty being the 3D application which presumably triggered the crash. It's not just a matter of sprinkling the microkernel architecture on your system, but something like that is a prerequisite.

Re: Gnu/Hurd strikes back: How to use the legendary OS in a (somewhat) practical way

#222
post #57
post #40

Earlier quoted context omitted.

> Ok, your wifi driver restarted. What are the protocols to get everyone caught up between that driver and your application for what messages were lost and the messages that are now arriving? TCP?

Doesn't fully help? Could actually be more difficult if you let the driver do the TCP ack. And you are likely going to back yourself into a situation where you need TCP between the application and the driver... Remember, at that point, it is just a message pass, as well. There is a good article somewhere about how you have to do end to end for any of this to really work.

If your network stack is running isolated to your wifi driver (with the interface being frames to send and receive), it's fine: the network stack just sees some dropped packets the same as if something else dropped them. If your network stack with your TCP state crashes, then it's a bit trickier: the connection will likely be dropped, which requires an application-level retry, which also will generally already exist to deal with more significant network issues. I don't think you've picked a great example for this kind of problem.

Re: Gnu/Hurd strikes back: How to use the legendary OS in a (somewhat) practical way

#224

Once upon a time the Hurd was the future. But that time is long in the past and nowadays the Hurd is a relic and I don't see any chance of a revival. Something entirely new probably stands a better chance at arousing some interest than the Hurd.

seL4 is more interesting than Hurd's Mach kernel. Genode can use seL4 and several different microkernels and has more activity than Hurd.

Re: Gnu/Hurd strikes back: How to use the legendary OS in a (somewhat) practical way

#225
post #45

An idea from the 'Crossing the Chasm' book is to find a niche where whatever characteristics of the product you're working on can win. You are not going to win going head to head with the entrenched competitors. What does that look like for Hurd?

That's the wrong framing for Hurd. Hurd isn't a "product" that's trying to "win" by beating competitors. It's a project that's being built by and for people that care about it. You might as well ask "How can my local pick-up basketball team find a niche to make money, like NBA players do? Can we all wear more colorful jerseys so TV stations cover us?" No, that's silly, the point of the pick-up basketball team isn't t…

> And if enough people come to hang out and have fun

Is Hurd there? I mean, you obviously don't frame 'success' with an open source system in financial terms, but I would argue that developing a critical development mass is pretty important. Without that, the project will wither and die.

Open source is sort of an "attention economy", so the currency isn't dollars, but developer interest.

Fooling around with something for the joy of learning is a motivator, but I don't know that it's enough to sustain a project, long term.

And Hurd very much is a 'product' in the economic sense, whether it's open source, not for profit, or whatever.

Re: Gnu/Hurd strikes back: How to use the legendary OS in a (somewhat) practical way

#226

Earlier quoted context omitted.

They really should just rename the site CapitalistNews or AntiHackerNews or MiddleManagementNews or PMTechNews. Man, y'all are gonna be so mad when you find out some people work on OSS projects for fun or ideological reasons. Again, a sentiment that needs repeating far too often here, not everything is about, or for, you .

People are missing the point of being asked here. If "fun" and "idological reasons" are the reason there is a community around the project, then that is in fact the answer to the question, if a little vague. For people still not understanding, it would be nice to have an explanation of what people find fun about it, especially as a user and not a developer, and what ideological reason exactly are driving it.

I'm glad someone gets it. I've been using Linux as my daily driver for about a decade at this point. I can understand the desire to hack on that for fun, because doing so would actually bring about a tangible improvement to my life.

I find the desire to work on a 30 year old operating system that still lacks USB support much more confusing.

Re: Gnu/Hurd strikes back: How to use the legendary OS in a (somewhat) practical way

#227

Earlier quoted context omitted.

> It's a project that's being built by and for people that care about it. Okay, then tell us why we should care about it when more popular operating systems fit our needs better anyways.

They really should just rename the site CapitalistNews or AntiHackerNews or MiddleManagementNews or PMTechNews. Man, y'all are gonna be so mad when you find out some people work on OSS projects for fun or ideological reasons. Again, a sentiment that needs repeating far too often here, not everything is about, or for, you .

Hurd is over 30 years old. It didn't get support for SATA drives until 2013. It still does not support USB devices, at all. Working on such an OS doesn't seem like it would be a good use of my time, especially when that time could be spent working on Linux, or a BSD.

Valuing my time doesn't make me a capitalist.

Re: Gnu/Hurd strikes back: How to use the legendary OS in a (somewhat) practical way

#228

Earlier quoted context omitted.

They really should just rename the site CapitalistNews or AntiHackerNews or MiddleManagementNews or PMTechNews. Man, y'all are gonna be so mad when you find out some people work on OSS projects for fun or ideological reasons. Again, a sentiment that needs repeating far too often here, not everything is about, or for, you .

Hurd is over 30 years old. It didn't get support for SATA drives until 2013. It still does not support USB devices, at all. Working on such an OS doesn't seem like it would be a good use of my time, especially when that time could be spent working on Linux, or a BSD. Valuing my time doesn't make me a capitalist.

Hurd does not support USB devices, officially, just yet, but these are surely exciting times. Unless maybe you're a capitalist ;-) https://lists.gnu.org/archive/html/bug-hurd/2023-06/msg00158...>

Re: Gnu/Hurd strikes back: How to use the legendary OS in a (somewhat) practical way

#229
post #182

Earlier quoted context omitted.

> I've known for decades that on paper, microkernels and Hurd should be superior, and I've wondered for nearly as long why then they aren't taking off. If they're so good, they should at least be thriving in some niche where that performance matters, shouldn't they? They (microkernels) thrive in Automobiles, Aircraft, Spacecraft, Security systems (such as hardware encryption devices), Defense Munitions, Embedded Devi…

So Linux is too big for embedded systems. I completely understand that. But I was hoping they'd also be viable for general purpose computers. That's certainly what Tannenbaum argued back in the day. Or could they work if only people would stop focusing on Hurd? Is Hurd a dead end? Or is GNU the real problem and should we abandon that?

I think Hurd is fixable from a functionality standpoint, but I think it is a dead end from a sociocultural standpoint. It’s old, boring, and has never worked well in its entire history, why would anybody think they could be the one that makes the difference? Nobody cares about it anymore, it’s the kernel that almost tanked the GNU ecosystem before it was saved by Linux.

Out of all of the microkernels out there, the one I like the most is SEL4, but the security model is so different from most OS kernels that you essentially have to program for it from the ground up. And it seems like there isn’t any momentum there either. QNX is already very mature and performant though, and it has gotten a huge boost from IoT and electric car development, and IMO all it needs is an open source license and it will eventually creep its way into general purpose OS usage.

Re: Gnu/Hurd strikes back: How to use the legendary OS in a (somewhat) practical way

#230

Earlier quoted context omitted.

A 3950x has 48 bits of virtual address space, or 256TiB.

I'm honestly not sure which counts for this purpose, physical or virtual? And which fraction do you get to use on HURD? But still, 256 TiB is just a dozen drives these days. Not a very consumer-like configuration, but very much a limit you can run against.

48-bit virtual addresses are the most common in use today. All AMD, ARM64 processors, and most of Intel's. Only recent Intel chips support PML5 (5-level paging), giving them 57-bits of virtual address space. There are no 64-bit processors that can use a full 64-bits of virtual address space.
Post reply on HN