Exokernels Anyone? 12
shankark asks: "I was doing a paper review on the exokernel, and found some pretty good design ideas in it comparing the work with the monolitic kernel and microkernel architectures. There was also a Slashdot story way back in 1998, but the thread sort of died out. I wanted to know if there is any work being done in trying to incorporate the exokernel design ideas into the mainstream linux kernel. What would be the pros and cons of doing such a thing?"
goat.cx or whatever in above post (Score:1)
the MIT project (Score:4, Insightful)
But, is this really all true? I have some doubts, but it looks really interesting.
Re:the MIT project (Score:2)
A microkernel. Wonderful --- not. (Score:3, Insightful)
Somehow, I really don't think that'll work out for a large operating system. (Mind you, for a box with simple functionality, this may actually be good in terms of performance.)
It seems like the only real argument they are pushing is speed. (But, although they don't really admit it, you put some major kinks in compatibility.) The only real comparable example is something called "Socket". Their version is twice as fast as a version running under BSD.
But then again, all the OS code that would make it 'play nice' with other things on the operating system probably aren't there, which would explain the gain. (I'll go ahead and throw out the notion of academic dishonest, which was there in microkernels, using different compiling options, etc. Ask Linux all about what he thinks of it.)
Anyhow, what little I've seen emphasis speed, but doesn't show the downside. That would appear to be the cost of converting *complex* applications, and the ability to coexist with other things.
I see no real benefit of going with this method. For example, if I was a company, given the choice of having my internal app ported to an Exokernel, or throwing more hardware at it, I'd throw more hardware at it. No brainer. No big boon for developers.
Re:A microkernel. Wonderful --- not. (Score:3, Interesting)
And many of the Exokernel ideas are just a slight refinement on the Partitioning idea used by large server systems. So by that token, it makes sense.
I think the bigger problem, however, is the idea in the academic community that they can build a perfect system for every application if they just abstract things enough. This drove Microkernels and this is driving Exokernels.
Re:A microkernel. Wonderful --- not. (Score:1)
Most applications that take advantage of the Exokernel features will just use predesigned libraries for customized OS features, much like replacing malloc with a specially tuned version.
Tux might be considered to be the Linux attempt at doing what an Exokernel is intended to do.
Patrick Bridges OS pages (Score:3, Informative)
I don't know about any linux exokernel projects, but linux.org might have some relevant stuff on their projects [linux.org] page.