Hacker News new | ask | show | jobs
by mhaberl 1050 days ago
> The GNU Hurd’s hardware support is poor, so trying to run it on modern physical machines is suicide.

> ...one reason for using GNU/Hurd is that the Linux kernel has become too huge

By any chance, are these two statements related? Is it smaller because it lacks the drivers?

2 comments

The drivers aren't part of the microkernel and run with limited privilege. So, yeah, OK, if you wrote all those drivers you'd have a lot of code, but not all of it would have total control of the system. You can't really make a direct comparison.

Linux has a hell of a lot of system calls and weird bells and whistles in non-driver code, too.

I also recall it having some ridiculously low limit for partitions, like 1GB or something.

Apparently because it mmaps the entire disk, and under 32 bit CPUs there's not enough address space.

Which is a ridiculous technical limitation. You could have bigger disks than that by the mid 90s.

Come think of it, my Ryzen 9 3950X supports 43 bits of address space which works out to 8TB. So if that limit applies, even the 64 bit version would be limited on modern hardware.

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.