Date: Tue, 01 Jan 2002 13:32:08 -0800 From: Terry Lambert <tlambert2@mindspring.com> To: Rafter Man <rafter@linuxmail.org> Cc: freebsd-hackers@FreeBSD.org Subject: Re: The Hurd Message-ID: <3C322AD8.FF22D765@mindspring.com> References: <20020101191456.17623.qmail@linuxmail.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Rafter Man wrote: > [ ... ] but now I have one more question. > From the 27/12 too the 29/12 I was at the CCC congress and attended > a lecture called "Unix Redesigned". It was Neal H Walfield who talked > about The Hurd: [ ... ] > So my question is: Will FreeBSD take a good look at the Hurd? Your focus appears to be on security, so you should really look at the POSIX 1e effors currently underway in the FreeBSD community. However, I'll try to be more general... Hurd is a multiserver running on top of MACH. FreeBSD already has an unencumbered single server version that runs on top of MACH, and MAC OS X is already a multiserver implementation. As a general comment, MACH is a dead horse. The problem is that it contains significantly more protection domain crossing than it should in order to communicate between OS components, and for each crossing, you pay a hefty penalty. During develeopement, it would be useful to have the ability to seperate the component you are developing into its own address space, but really, Chorus is a better model. Though 4G RAM machines are increasingly common, statistical memory protection approaches are still quite valid for doing this type of work on 64 bit architectures: even with a full 4G of RAM, program only have a 1 in 4 billion chance of finding a valid byte of memory through random accident. So despite the fact that I am quite impressed with MAC OS X, it is really somewhat of a blind alley, according to current work in CS. I think a much better project to learn from would be "Choices": http://choices.cs.uiuc.edu/ There are also several lesser known capabilities-based OS projects (the license on them is commercially restricted), and they are capable of dealing with the Capabilities Security Model bootstrap process, and are self checkpointing to the extent that you could "have your dog kick out the plug, plug the machine in again, and be up and running where you were in a matter of seconds". At one point in time, John Dyson, the original author of the FreeBSD unified VM and buffer cache code (not to belittle the excellent work done by Matt, Alfred, and others) was talking about a project to write a drop-in-replacement SMP kernel that was designed for SMP from the ground up. I personally never joined this effort, because John wanted to "cop out" on doing kernel preemption, which is necessary for hard real time, and for high granularity SMP and node migration of processes (for example, in a NUMA cluster, rather than an Intel model SMP system). I think that many of us are aware and up to date on the most recent research. In fact, I would say that there are a fair number of us who believe that FreeBSD is about a decade and a half or more behind the state of the art; but since there is not an infinite amount of time, and we have day jobs, we can't "fix everything" over night. There are some lessons that can be taken from HURD, but there are other projects and products which have already taken those lessons, and pushed them much farther than HURD has considered pushing them. It is much better to learn from them, instead, rather than learning the same lessons from HURD directly, and reinventing the wheel as a result. -- Terry To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3C322AD8.FF22D765>