Martin Franco wrote:
I've read that hurd is better designed than linux, but slower and way
behind in resources, drivers, and stability.
I wouldn't necessarily say that it has a better design. It is a microkernel/multi-server design, which is well appreciated in the academic OS design world, but in practice introduces a number of design problems that the GNU Hurd guys have yet to fully address. Furthermore, the project has shifted from one microkernel to another, and with each shift there have been not insignificant changes to the design needed, so whatever merits its design has have shifted over time.

That said, the multi-server design does have some inherent appealing characteristics: in theory it should be able to take advantage of multiple cores better, and it should be easier to experiment with customized OS services because each service has a discrete, well defined interface that runs in user space. In practice though, the multi-server design is extraordinarily complex and difficult to get right, and it is difficult to keep the interfaces to services generic while ensuring efficiency.

In the end, the getting the Linux kernel to the point where it can take advantage of multiple cores as easily as Hurd's design ought to may prove easier than to get the Hurd running as efficiently as Linux.
  There is work on a port to
the L4 microkernel which I think would speed it up, but years of
optimization would be needed to make it competitive, I think.
Yes, that seems likely.
Does anyone think hurd might eventual become better than the linux or bsd
kernels?  I'm considering contributing to its development, running it
inside a virtual machine at least until it supports all of my hardware
I think Hurd may have missed the window of opportunity to reach critical mass. Already Linux kernel modules achieve many of the benefits of Hurd's modular multiserver design, and the Linux folks are finally charging in full bore in an effort to kill the BKL, which ought to get the kernel to the point where it is even exceeding Hurd's theoretical multiprocessing capabilities.

Minix3 also has a similar design to Hurd, and seems to be much closer to a real world usable system. You might consider committing efforts there instead.

--Chris

--
[email protected]
http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-lpsg

Reply via email to