[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Linus replies. Re: Computer: Can We Make Operating Systems Reliable
Re: Linus replies. Re: Computer: Can We Make Operating Systems Reliable and Secure?
Thu, 11 May 2006 12:30:44 -0400 (EDT)
On Thu, 11 May 2006, Marco Gerards wrote:
Donnie Jones <address@hidden> writes:
I am very new to kernel development, but I do currently work with
distributed algorithms and I find Linus argument that microkernels
are more complex very interesting, what do you guys think?
Yesterday I heard a talk by Andrew Tanenbaum, in which he claimed
something else. According to him, monolithic kernels are hard to
understand because the interfaces can become a spaghetti (not his
words, though). He claimed that Microsoft wouldn't change the
scheduler, for example. No one really understands how it works and
things might break by just changing it, so they don't. Clearly a well
designed multiserver does not have this problem.
Besides that, interfaces are clear and a lot of code is not
privileges (as in, it runs in user space). So that can make
microkernel based systems more reliable. And from my own experience I
can say some parts of these systems are easier to debug.
But OTOH, I assume it is very hard to get a microkernel based system
from the ground. There is a lot of design work that has to be done.
And perhaps the fact that there are not that many popular multiserver
operating systems can be seen as evidence that it is harder. But it
could also be that people just do not care enough.
Perhaps I misunderstood what Tanenbaum said, what Linus said, etc.
But let it be clear that a lot of smart people are making strong
arguments for "both sides". I think the question is: what kind of
things do you care about?
I care more for maintainability, reliability, security. I think the
argument for performance over the rest is just silly. I always like
the comparisons of cars to computers, such as if a Lamborghini constantly
broke down, I seriously doubt people would still buy them although they go
so fast -when- running...
In particular, I think maintainability produces more reliable, secure, and
faster operating systems (hopefully the maintainability allows for easier
Overall, I really want to learn what it takes to design/implement
operating systems, which is why I am on this mailing list and I bought
Tanenbaum's book, the 2nd edition.
I appreciate all of the responses from the group, I'm sponging up the