• Welcome to Overclockers Forums! Join us to reply in threads, receive reduced ads, and to customize your site experience!

Excellent article about how Linux is getting too bloated

Overclockers is supported by our readers. When you click a link to make a purchase, we may earn a commission. Learn More.

Too Smart

Member
Joined
Feb 16, 2002
6/10/2004 | Bob Marr - Consider these memory requirements for Fedora Core 2, as specified by Red Hat: Minimum for graphical: 192MB and Recommended for graphical: 256MB Does that sound any alarm bells with you? 192MB minimum? I've been running Linux for five years (and am a huge supporter), and have plenty of experience with Windows, Mac OS X and others. And those numbers are shocking -- severely so. No other general-purpose OS in existence has such high requirements. Linux is getting very fat.

I appreciate that there are other distros; however, this is symptomatic of what's happening to Linux in general. The other mainstream desktop distros are equally demanding (even if not as much as Fedora, for example Arch Linux or Slackware run Gnome on 128 MB, but not very comfortably when you load 2-3 apps at the same time), desktops and apps are bloating beyond control, and it's starting to put Linux in a troublesome situation. Allow me to elaborate.

A worrying tale

Recently, a friend of mine expressed an interest in running Linux on his machine. Sick and tired of endless spyware and viruses, he wanted a way out -- so I gave him a copy of Mandrake 10.0 Official. A couple of days later, he got back to me with the sad news I was prepared for: it's just too slow. His box, an 600 MHz 128MB RAM system, ran Windows XP happily, but with Mandrake it was considerably slower. Not only did it take longer to boot up, it crawled when running several major apps (Mozilla, OpenOffice.org and Evolution on top of KDE) and suffered more desktop glitches and bugs.

Sigh. What could I do? I knew from my own experience that XP with Office and IE is snappier and lighter on memory than GNOME/KDE with OOo and Moz/Firefox, so I couldn't deny the problem. I couldn't tell him to switch to Fluxbox, Dillo and AbiWord, as those apps wouldn't provide him with what he needs. And I couldn't tell him to grudgingly install Slackware, Debian or Gentoo; they may run a bit faster, but they're not really suitable for newcomers.

Now, I'm not saying that modern desktop distros should work on a 286 with 1MB of RAM, or anything like that. I'm just being realistic -- they should still run decently on hardware that's a mere three years old, like my friend's machine. If he has to buy more RAM, upgrade his CPU or even buy a whole new PC just to run desktop Linux adequately, how are we any better than Microsoft?

Gone are the days when we could advocate Linux as a fast and light OS that gives old machines a new boost. BeOS on an ancient box is still faster than Linux on the latest kit. And to me, this is very sad. We need REAL reasons to suggest Linux over Windows, and they're slowly being eroded -- bit by bit. Linux used to be massively more stable than Windows, but XP was a great improvement and meanwhile we have highly bug-ridden Mandrake and Fedora releases. XP also shortened boot time considerably, whereas with Linux it's just getting longer and longer and longer...

Computers getting faster?

At this rate, Linux could soon face major challenges by the upcoming hobby/community OSes. There's Syllable, OpenBeOS, SkyOS, ReactOS and MenuetOS -- all of which are orders of magnitude lighter and faster than modern Linux distros, and make a fast machine actually feel FAST. Sure, they're still in early stages of development, but they're already putting emphasis on performance and elegant design. More speed means more productivity.

To some people running 3 GHz 1G RAM boxes, this argument may not seem like an issue at present; however, things will change. A 200 MHz box used to be more than adequate for a spiffy Linux desktop, and now it's almost unusable (unless you're willing to dump most apps and spend hours tweaking and hacking). In those times, us Linux users were drooling over the prospect of multi-GHz chips, expecting lightning-fast app startup and super-smooth running. But no, instead, we're still waiting as the disk thrashes and windows stutter to redraw and boot times grow.

So when people talk about 10 GHz CPUs with so much hope and optimism, I cringe. We WON'T have the lightning-fast apps. We won't have near-instant startup. We thought this would happen when chips hit 100 MHz, and 500 MHz, and 1 GHz, and 3 GHz, and Linux is just bloating itself out to fill it. You see, computers aren't getting any faster. CPUs, hard drives and RAM may be improving, but the machines themselves are pretty much static. Why should a 1 GHz box with Fedora be so much slower than a 7 MHz Amiga? Sure, the PC does more - a lot more - but not over 1000 times more (taking into account RAM and HD power too). It doesn't make you 1000 times more productive.

It's a very sad state of affairs. Linux was supposed to be the liberating OS, disruptive technology that would change the playing field for computing. It was supposed to breathe new life into PCs and give third-world countries new opportunities. It was supposed to avoid the Microsoftian upgrade treadmill; instead, it's rushing after Moore's Law. Such a shame.

Denying ourselves a chance

But let's think about some of the real-world implications of Linux's bloat. Around the world in thousands of companies are millions upon millions of Win98 and WinNT4 systems. These boxes are being prepared for retirement as Microsoft ends the lifespan for the OSes, and this should be a wonderful opportunity for Linux. Imagine if Linux vendors and advocates could go into businesses and say: "Don't throw out those Win98 and NT4 boxes, and don't spend vast amounts of money on Win2k/XP. Put Linux on instead and save time and money!".

But that opportunity has been destroyed. The average Win98 and NT4 box has 32 or 64M of RAM and CPUs in the range of 300 - 500 MHz -- in other words, entirely unsuitable for modern desktop Linux distros. This gigantic market, so full of potential to spread Linux adoption and curb the Microsoft monopoly, has been eliminated by the massive bloat.

This should really get people thinking. A huge market we can't enter.

The possibility of stressing Linux's price benefits, stability and security, all gone. Instead, businesses are now forced to buy new boxes if they are even considering Linux, and if you're splashing out that much you may as well stick with what you know OS-wise. Companies would LOVE to maintain their current hardware investment with a secure, supported OS, but that possibility has been ruined.

Impractical solutions

Now, at this point many of you will be saying "but there are alternatives". And yes, you're right to say that, and yes, there are. But two difficulties remain: firstly, why should we have to hack init scripts, change WMs to something minimal, and throw out our most featureful apps? Why should newcomers have to go through this trouble just to get an OS that gives them some real performance boost over Windows?

Sure, you can just about get by with IceWM, Dillo, AbiWord, Sylpheed et al. But let's face it, they don't rival Windows software in the same way as GNOME/KDE, Moz/Konq, OpenOffice.org and Evolution. It's hard to get newcomers using Linux with those limited and basic tools; new Linux convertees need the powerful software that matches up to Windows. Linux novices will get the idea that serious apps which rival Windows software are far too bloated to use effectively.

Secondly, why should users have to install Slackware, Debian or Gentoo just to get adequate speed? Those distros are primarily targeted at experienced users -- the kind of people who know how to tweak for performance anyway. The distros geared towards newcomers don't pay any attention to speed, and it's giving a lot of people a very bad impression. Spend an hour or two browsing first-timer Linux forums on the Net; you'll be dismayed by the number of posts asking why it takes so long to boot, why it's slower to run, why it's always swapping. Especially when they've been told that Linux is better than Windows.

So telling newcomers to ditch their powerful apps, move to spartan desktops, install tougher distros and hack startup scripts isn't the cure. In fact, it proves just how bad the problem is getting.

Conclusion

So what can be done? We need to put a serious emphasis on elegant design, careful coding and making the most of RAM, not throwing in hurried features just because we can. Open source coders need to appreciate that not everyone has 3 GHz boxes with 1G RAM -- and that the few who do want to get their money's worth from their hardware investment. Typically, open source hackers, being interested in tech, have very powerful boxes; as a result, they never experience their apps running on moderate systems.

This has been particularly noticeable in GNOME development. On my box, extracting a long tar file under GNOME-Terminal is a disaster -- and reaffirms the problem. When extracting, GNOME- Terminal uses around 70% of the CPU just to draw the text, leaving only 30% for the extraction itself. That's pitifully poor. Metacity is hellishly slow over networked X, and, curiously, these two offending apps were both written by the same guy (Havoc Pennington). He may have talent in writing a lot of code quickly, but it's not good code. We need programmers who appreciate performance, elegant design and low overheads.

We need to understand that there are millions and millions of PCs out there which could (and should) be running Linux, but can't because of the obscene memory requirements. We need to admit that many home users are being turned away because it offers no peformance boost over XP and its apps, and in most cases it's even worse.

We're digging a big hole here -- a hole from which there may be no easy escape. Linux needs as many tangible benefits over Windows as possible, and we're losing them.

Losing performance, losing stability, losing things to advocate.

I look forward to reading your comments.

About the author
Bob Marr is a sysadmin and tech writer, and has used Linux for five years. Currently, his favorite distribution is Arch Linux.

Source link, with comments: http://freerepublic.com/focus/f-news/1151081/posts
 
That is a good article. Thanks. I think that Mandrake and Gentoo and other have alot lower RAM requirements but still that is very shocking.
 
Good read. I have used linux for about 5 years now. Started with RedHat 7, now running Fedora Core 1 at home and Fedora Core 2 at work. I've noticed the same thing, that you need a decent system to keeps things moving, esp. ram.

Until about 6 months ago I was running a PIII 350 with 256 MB ram, 10 Gig hard drive and on board nvidia graphics for my wifes system. Did notice it was getting real laggy.

I'm not a programmer, but I have a lot more "eye-candy" than I did a couple of years ago and the system is still rock solid, very secure, and for the most part virus free.

I can still install Fedora Core and not use the GUI and run a nice folding box.

Is it the OS or is it the GUI that is clogging things up?
 
My guess would be that it is the GUI that is slowing things down the most because as you said there is alot of eye candy now.
 
KDE and Gnome are definitely very resource-intensive, even compared to Windows, however it's not just the windows managers. Applications in Linux are also quite heavy on the resources. For example larger apps like Open Office take quite a while to load if you don't have a very fast system.

The argument of the article seems to be that Linux requires more system resources than Windows in order to match the same amount of features Windows has.

Until recently I had Windows 98 running on my new system, and it ran blazingly fast.

If you wanted Linux to be faster or run on an older system, you could run an older version of Linux, KDE 1.0 should run fine even on a Pentium 1, but the problem with that is that you'd probably run into annoying problems every time you tried to install a new program, for example the program would require some library and the version of the library on your OS would be too old, so you'd have to update, which in turn would require updating something else, and you'd have a dependency hell which even after you fix woudl probably leave your system running slower since the new libraries would be larger, require more memory, etc.

The argument of the developers is that programs require more computer power these days because they have much more features than programs whichi preceded them. However, I don't think that's entirely true. I think programmers are getting lazier, and with enough effort they should be able to introduce more features while at the same time increasing the system requirements only slightly, not by so much. How many developers do you think actually test their programs on older computers and spend time trying to make them run smoothly on them? I'm guessing most of them only test them on the very latest systems.
 
I'll accept it's a well written article but want to make a very important point.
Most of the bloat comes because people want to do the same things with Linux as they do with Windows. There is always this feverish quest to stay even or pull ahead of the competition. In order to do all these things requires resources and lots of code. Just look at what the proposed computer for Longhorn is supposed to be! The point I'm working up to is that
with Linux you have choice, you don't with Windows. I use Damn Small Linux
occasionally, full install---43 megs. I can run it on old laptops with only 32 mb memory, surf, write memos, get mail, chat! Then look at Arkaine's Overclockix. Still only a little over 700 megs. Then we get to full Mandrake or Fedora requiring 2 gigs or so. Point is, with Linux you can chose bloat or not.
 
Just as with windows, there is an art to trimming up a bloated mainstream Linux distro install- extra terminals can be gutted, services can be stopped, unwanted packages can be removed.

Or you can choose to use minimal installs, light distros and window managers, or even text mode only.

It's good that the peak of Linux rises as high as it can- that you can have gigs and gigs of installed applications and use hudreds of megs of ram in ordinary idle operation. That doesn't mean that's what your Linux system has to be like.

Linux is vast. It is also choice.
 
yeah mandrake linux takes ages to boot up. so much stuff loading up its crazy. and the gui has way to much useless eye candy just like mac os 10.

menu fading etc.... what a waste.

thank god you can disable all the useless features.
 
I think Linux has always taken the approach of not sacrificing features and choice just to cater to the people that refuse to learn things. As a result, you're expected to be able to follow directions and learn a bit when you're installing linux.

Installing Gentoo really wasn't all that hard, and it's FAST. The install is not bloated at all. It boots far faster than XP does. I use KDE because I like it, and that's a bit slower, but it's still worth it.

I think the solution might be to offer a simpler option for installing gentoo, or an option with installs such as red hat that creates a leaner system.

My red hat system is much, much slower than my gentoo system, and it's on a faster PC. However, it was also very simple to install, and everything just works, because EVERYTHING in installed, including the kitchen sink. It's nice that I never have to screw with stuff sometimes, but in the end, it's worth it to screw with stuff, as my gentoo system owns it in speed.
 
Its the eye candy.

The kernel is still slim.

There's nothing stopping you from not using KDE and Gnome.

Although Gnome 2.6 runs perfectly fine on my P3-850 laptop w/ 256mb ram.
 
Perhaps more distros should use icewm or fvwm by default. That would make for a much faster interface.

Or, perhaps the default window manager should be based on what the specs of the system are.
 
Hmm, 1 thing, why would these companies need to buy all new computers just cause of higher memory requirements? They can always just add 1 stick of memory to each one and save buckets of money. I mean cmon, a $50 stick of 256MB ram and done deal.

I appreciate your point about bloat, and being a Mac fan I certainly dont miss WINDOWS bloat (even though I still use Windows XP as well) but as apps get more and more complicated and do more they are going to require more memory to work, simple fact of life. Also, no one is stopping the companies from using older versions of Linux and the software on them so their old machines run fine.

Just my 0.02c
 
All who are saying there is nothing stopping you from not using KDE or Gnome, or saying you have choices,

that artical is about Joe six pack and joe Suit using linux, what GUI could be used instead of KDE/GNOME? they are Windows users, they need the GUI, and even as Windows Users, they don't understand what is happening, they pay people to come in and turn of messanger services, or they go to www.grc.com and download the little programs that click away services.

Companies could keep running older versions of windows if they wanted unsuported software, why would they switch to older linux distros and have to patch up the holes? if they are going to have to work that much, then they will buy new systems, most likely stick with the OS they know ( WINDOWS) and just let auto update do the work.

The argument that more features means more bloat is not exactly true, bloat comes from poor coding, poor compiling, and poor choice of language,
something writen in C becuase it was faster to code, then compiled with an average compiler will run much slower then the same program writen in ASM, but that program will have taken far longer to writem and require a much better coder, so chances are the C program will get in because it came out first, and more bloat gets added to the OS,
the Kernel is still refined, but that is because you have people going over every bit of code, 10's if not 100's of skilled programmers go over every line before it becomes a part of the Kernel, if everything put into a distro went through the same scrutiny Linux would run much faster then it currently does.
 
that artical is about Joe six pack and joe Suit using linux, what GUI could be used instead of KDE/GNOME?

icewm would be fine for the average user. twm would be a bit spartan.
 
Back