Re: Student Project Ideas

From: Kyle Moffett
Date: Thu Mar 29 2007 - 20:25:44 EST


On Mar 29, 2007, at 20:09:11, Jan Engelhardt wrote:
On Mar 29 2007 18:54, Kyle Moffett wrote:

One thing that I think is fairly non-obvious to newcomers is that Linux kernel development is not done at all the way they teach you in your Large Scale Software Engineering classes. Many of those classes talk much about careful design (whether top-down, bottom- up, outside-in, waterfall, spiral, $BUZZWORD_OF_THE_DAY) and detailed unit-testing, whereas Linux kernel development isn't really "designed" at all.

Well, linux kernel is "extreme programming" - hack away until it works, care about a design shape and stable API later.

I somewhat disagree. Look at the amount of _design_ which is going into the linux-virtualization stuff, the replacement SLAB subsystems (SLOB/SLUB), or the current queued-spinlock thread. Admittedly with Linux 90% of the design process is rewriting the code a thousand times based on comments before it goes into mainline, but that's design nonetheless. It's just evolved-design-by-committee, a very knowledgeable committee made of the people who are interested in and understand what's going on well enough to give useful input and with enough sense of technical value to veto anything with significant architectural problems.

Cheers,
Kyle Moffett

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/