On Wed, Mar 08, 2006 at 05:13:44PM -0800, walt wrote: > I'm just thinking about how to keep software as free from bugs as > possible. Linus once said: 'All bugs are shallow, given enough eyes.' > > Wouldn't moving kernel code into userspace increase the number of eyes?
The Thousand Eye Ball Theorem is a very old and very common myth. It doesn't work in reality for many problems. How many people do you believe have a reasonable understanding of the internals of TCP/IP, well enough to trace down bugs in the stack? I don't think very many do. This equation doesn't change *at all* if the implementation moves to userland. That said, VJC argues that the complexity of TCP/IP is partly a result of having to deal with the kernel buffering. I disagree with that rhetoric. E.g. the second loop between kernel and userland is tightly coupled enough that in almost any situation the outer loop is dominating and the inner loop vanishes effectively. This changes when the link is fast enough to overpower the local CPU, but the proposed fix is nothing but a fancy congestation control. That's the technical point where I disagree :-) Joerg
