Linux

Battle of the bulge: Will Linux 'bloat' begin to rival Microsoft?

Linus Torvalds simultaneously cheers the Linux development model and decries its bloat at LinuxCon. What is he up to? What's your opinion of the current Linux kernel? Take our poll.

Linus Torvalds' remarks at LinuxCon 2009 have been making the rounds. Never one to mince words, he had a few constructive criticisms to make about the Linux kernel:

"We're getting bloated, yes it's a problem," Torvalds said. "I'd love to say we have a plan. I mean, sometimes it's a bit sad and we're definitely not the streamlined hyper-efficient kernel that I had envisioned 15 years ago. The kernel is huge and bloated."

Strong words make good headlines, but practically in the same breath, he also said that he was basically happy with the Linux development cycle, didn't think that too many features were being added too fast, and that, in fact, "the development model seems to be working, and it's working better than it did even six months ago."

Is Torvalds simply playing his role of Linux watchdog by warning the community that they shouldn't try too hard to compete with Microsoft -- in such a way that it becomes the thing it deprecates? What's your opinion?

Considering the flame wars that routinely spring up around the whole Linux vs. Microsoft debate, I thought these further remarks from Torvalds were kind of amusing and prove that the flaming is pretty much built into the kernel as well:

"I really enjoy arguing, it's a big part of my life -- are [sic] these occasional flame threads that I love getting into and telling people they are idiots..."

About

Selena has been at TechRepublic since 2002. She is currently a Senior Editor with a background in technical writing, editing, and research. She edits Data Center, Linux and Open Source, Apple in the Enterprise, The Enterprise Cloud, Web Designer, and...

23 comments
IndianaTux
IndianaTux

It is my experience as of late that Windows actually runs faster on my laptop than newer versions of linux, even with visual effects turned off.

RizSilverthorn
RizSilverthorn

Doesn't matter - I can pick and choose exactly what is included in the kernel. At least with Linux I can recompile the kernel to remove/add only the options and drivers needed for the hardware it will be running on.

kjmartin
kjmartin

The 'bloat' is necessary if you want anyone other than hard-core geeks to find it useful and usable. In other words, as Linux started to respond to realities of the business it became more bloated. That's OK though, you penguins are still 'sticking it to the man' even as you become more like 'him'.

kraterz
kraterz

This reminds me of the old SLS / slackware days when we'd install from floppy and have an NFS-ready Linux server ready in no time, it would run rings around windows 95 at the time, was stable and robust, and the window manager (fvwm? icewm? I forget) was quick and slick.

rob
rob

Keep the setup under control and managed, and use lean flavors such as CENTOS to keep the bloat under control! No problems here!

tech10171968
tech10171968

I, too, have noticed the increasing size of the kernel in recent years. But, from my observations, a lot of this alleged "bloat" has come about because people aren't doing the same things with their computers as they were back in 1991. Well, let me take that back: they are doing the same things they were nearly 20 years ago, but also a lot of other stuff in addition. Also, a lot of peripheral technologies have been spawned in that timeframe. For Linux-based OS's to remain a feasible alternative, things had to be added to the kernel to allow users to take advantage of functionalities which were probably not even envisioned "back in the day". I do agree with "jlwallen" that a lot of this extra functionality probably should have remained in the form of modules (rather than having one big honking monolithic kernel) but, even then, one can always custom-compile a kernel to fit his needs (BTW, I'm surprised that no one has come up with a more "user-friendly" way to do this). As always, it seems that one man's bloat is another man's functionality.

CharlieSpencer
CharlieSpencer

Is it necessary to compete with Microsoft? If so, is it also necessary to compete with Apple?

jlwallen
jlwallen

is that so much support for so many technologies has to be rolled into the kernel. but Linux was supposed to be a modular kernel. one of the beauties of the kernel used to be rolling your own so you could only add in the functionality that you needed. very few people do this any more because the generic linux image is so inclusive. but to be user friendly you can not require users to compile a kernel. nor can you require too much user-input during installation or the ADHD generation will turn their backs to Linux.

TNT
TNT

What version of Windows are you running, and what's your system like? (RAM, HD speed, processor, etc.)

chipppy
chipppy

Rolling your own kernel is possible but the average user dosent. I have always wondered if there is some easier way to select your hardware (or auto detect) when you download or install a distro. This is then used to roll a kernel specific to that machine. The machine specific kernel would then be very lean. There would also need to be a mechanism for the kernel to self-install additional sections as/when they are needed eg new hardware added.

Sagax-
Sagax-

Linux is largely based on 3 kernels. These are Debian, Red Hat and Slackware. From these spring a myriad of distributions. I say have at least one lean mean kernel and the let distro compilers load it up (or not).

tom
tom

When I had my Osborne 1 there was a community supported OS called ZCPR3, written for the Z80 and any user could easily compile their own kernel. There was a question and answer interface that let you include functions in the kernel or have them be separate executables. I compiled a kernel that was 5K in size, so out of 64K I had 59 free to run my software.

Bristar
Bristar

I agree. The modularity and scalability of the OS is what is truly lacking in either Linux or Microsoft. Is it really so difficult to make a checklist of options, similar to the way the (annoying) Manage Your Server function for Microsoft Servers works? Why not have a list of options, such as accessibility options, mobility options, multimedia options, networking options, and gaming options, each category enabling drill down to specifics, so users can enable the functions they want and scrutinize carefully if they want? If Windows did this, more people would be accepting of Windows. Since they try to create a "one size fits all" OS, they have to excessively bloat their system more and more with new "features." All you can do is disable features, you could uninstall modules.

TNT
TNT

A Linux distro that wants to be every home users desktop OS of choice will have to have bloat as the user will not put up with having to recompile the kernel. A Linux distro that wants to be used in the lab or for extreme number crunching will likely have a tech that knows how to recompile and therefore needs only a base kernel. The purpose of you Linux build has a lot to do with the amount of bloat (or lack thereof) there is. So what problem(s) do the current round of Linux distros solve? Are they all wanting to be desktop/server replacements? Or are there niche markets that Linux could capitalize on like Apple did?

inoregon-22652233791432605540596455455229
inoregon-22652233791432605540596455455229

Why can't the "official" kernel attend to basic functionality and compatibility and have the organizations that create the various distributions modify it according the purpose of that particular distro? I think trying to make the Linux kernel all things to all people is not the way to go.

Brad.Whitehead
Brad.Whitehead

Back in '92, Linus Torvalds and Dr. Andrew Tanenbaum had debate on 'microkernel' versus 'monolithic' kernel: http://www.dina.dk/~abraham/Linus_vs_Tanenbaum.html Linus was definitely in favor of the monolithic kernel. This pre-destined the Linux kernel to grow in size as new features were added. So, the kernel may be bloating, but it's not a surprise or anything that can be altered, short of putting more "OS" responsibilities in the user space. Linus wasn't wrong in choosing a monolithic kernel, given Unix's memory model (Linux was intended to be a Unix clone). Microkernels may have more flexibility, but having to make repeated process context switches, with the attendant memory cache reloads, is a performance killer. This is the same reason that Windows is a monolithic kernel and it also incorporates device drivers in the kernel; for the performance gains. So, a steadyly increasing kernel size is just what we have to pay for increased functionality and a 'per-process' private memory model ;-)

CharlieSpencer
CharlieSpencer

It sounds like the same basic growth problem many technologies have. Attempting to appeal to the masses may result in sacrificing features that appealed to the early adopters and purists. Station wagons don't perform like sports cars but they sell better, and sports car companies must make compromises if they're going to make wagons. This may upset existing customers, especially if those station wagon compromises affect their new sports cars. The option to build one's own kernel still exists. I doubt it takes any more effort to learn how to do so now than it did fifteen years ago; it's probably easier. Sports car enthusiasts, get out your tool boxes.

mattie289404
mattie289404

What is the Linux Mission Statement? If it is planning on competing with Windows then yes, ease of use is a big issue. Windows users (I've done both) are used to turning it on and clicking to get what they want. If Linux wants to market to Linux savvy crowd then the bloat is not necessary. Not sure where Linux is trying to go.

mattie289404
mattie289404

Well I'm kinda bittersweet on that one. I want Linux to be a success worldwide but at what price? Becoming a GUI driven Windows clone, hope not. Honestly, I like the fact that Linux reqires a little more knowledge of your computer to make it work and command line input. Kinda ole school I guess. So I agree strongly both ways..haha..

CharlieSpencer
CharlieSpencer

"...once the big companies like Dell start adding it ... loses some of its mystery and uniqeness of being for people on the edges." Do you regard that as a good thing or a bad one?

mattie289404
mattie289404

Microsoft definetely had a mission statement. Put a PC in every household in the world using Windows and they have almost reached that point. For Linux, people like Linus Torvalds could influence how it is being marketed to a point, but, in my humble opinion once the big companies like Dell start adding it to the computers then its driven by sales and user needs and loses some of its mystery and uniqeness of being for people on the edges.

CharlieSpencer
CharlieSpencer

I'm don't know what organization would set one. Most Linux web sites have an 'About' page that describes the goal of that individual site or organization, and those are the types of sites that appear when Googling the terms 'Linux', 'mission', and 'statement'. Is there a mission statement for the operating system itself? I don't think there's one for Windows, although Microsoft assuredly has one. Can software have a mission? Doesn't the term apply to the developers?

Editor's Picks