Linux And The 'B' Word: Bloat
If Linus Torvalds himself is saying that the Linux kernel is bloated, something's wrong. Or is it just a matter of expectations and perspective?</p>
If Linus Torvalds himself is saying that the Linux kernel is bloated, something's wrong. Or is it just a matter of expectations and perspective?
The ZDNet / Adrian Kingsley-Hughes blog post that relates Linus's remarks also contains this observation:
... it is interesting to see how open source is vulnerable to the same problems associated with bloat in the same way that commercial projects are. What I think is interesting is how as Linux has become bloated, both Microsoft and Apple have been working hard at optimizing code and tidying up their code.
Open source development's been touted as a panacea for many things, but bloat is something that can plague any project, no matter how it's developed. Bloat's a problem of vision and management, not architecture and development.
The Linux kernel bloat problem as it's been described, as I see it, stems from a couple of things: 1) trying to be all things to all people at the same time, and 2) having the ecosystem be a large collection of disparate pieces that are not overseen in any one specific way. This is all by design.
The first is one of Linux's strengths and weaknesses, both. Linux can be bent and shaped as needed, and I've written before that Linux's big strength is in being raw material -- a starting point rather than an endpoint. But that typically requires a fair amount of work out of the gate both to pare down what isn't needed and add what is.
The second's a by-product of the way Linux evolved: over time, the kernel was paired up with many other pieces (Apache, GNOME, X.org, etc.), with each one -- kernel included -- continuing to be its own project. The distributions don't oversee how each of those projects could be organized into a coherent single vision; none of them seem to want that, anyway. The end result is a lot of accumulated pieces that were broadly useful, but also not part of any top-down vision except as implemented by the individual distributions.
To that end, maybe "bloat" is the wrong word. I see Linux as being more sprawling than bloated: it can be shaped into so many different things that by default it has trouble being any one thing. The different distributions do go a long way towards taming that sprawl, but not effortlessly.
Kingsley-Hughes didn't seem to think bloat was as much of an issue. If Linux performs well enough, then criticisms of "bloat" are more subjective than anything else. E.g.: bloated compared to what, exactly? To Windows, to BSD, to embedded systems, to other versions of Linux?
I see it a little differently. "Bloated" is one of those labels that once applied, is very hard to get rid of. If Linux is gaining a reputation amongst one of its own creators for becoming bloated, that's a sign some serious rethinking of its vision is in order -- that it should be, by definition, a little less amorphous and a little more refined.
InformationWeek has published an in-depth report on Sun's future under Oracle. Download the report here (registration required).
Follow me and the rest of InformationWeek on Twitter.
About the Author
You May Also Like