Jump to content

Criticism of Linux

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 213.89.27.171 (talk) at 17:14, 2 June 2015 (Kernel performance). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Criticism of Linux
Linux kernel 2.6.25.17 booting

The criticism of Linux focuses on issues concerning use of operating systems which use the Linux kernel.

Hardware support

Hardware developers have often been reluctant to provide full technical documentation for their products to allow drivers to be written. This has meant that a Linux user had to carefully hand pick the hardware that made up the system to ensure functionality and compatibility. These problems have largely been addressed:[1]

Years ago, if you wanted to install Linux on a machine, you had to make sure you hand-picked each piece of hardware or your installation would not work 100 percent ... This is not so much the case now. You can grab a PC (or laptop) and most likely get one or more Linux distributions to install and work nearly 100 percent. But there are still some exceptions; for instance, hibernate/suspend remains a problem with many laptops, although it has come a long way.[1]

At one time, Linux systems required removable media, such as floppy discs and CD-ROMs, to be manually mounted before they could be accessed. Mounting media is now automatic in nearly all distributions, with the development of the udev.[1]

Some companies, such as EmperorLinux, have addressed the problems of laptop hardware compatibility by mating modified Linux distributions with specially selected hardware to ensure compatibility from delivery.[2]

Kernel criticisms

Kernel performance

At LinuxCon 2009, Linux creator Linus Torvalds said that the Linux kernel has become "bloated and huge":

Citing an internal Intel study that tracked kernel releases, Bottomley said Linux performance had dropped about two per centage points at every release, for a cumulative drop of about 12 per cent over the last ten releases. "Is this a problem?" he asked. -We're getting bloated and huge. Yes, it's a problem ... Uh, I'd love to say we have a plan ... I mean, sometimes it's a bit sad that we are definitely not the streamlined, small, hyper-efficient kernel that I envisioned 15 years ago ... The kernel is huge and bloated, and our icache footprint is scary. I mean, there is no question about that. And whenever we add a new feature, it only gets worse.[3][4][5]

At LinuxCon 2014, Linux creator Linus Torvalds said he thinks the bloat situation is better because modern PCs are a lot faster[6]:

Torvalds said he'd love for Linux to shrink in size "We've been bloating the kernel over the last 20 years, but hardware has grown faster".

Theodore_Ts'o, maintainer of the Linux ext4 filesystem, explains that Linux developers sometimes sacrifices stability and safety for the purpose of winning performance benchmarks: http://www.phoronix.com/forums/forum/software/general-linux-open-source/24220-large-hdd-ssd-linux-2-6-38-file-system-comparison?p=284255#post284255

In the case of reiserfs, Chris Mason [creator of BTRFS] submitted a patch 4 years ago to turn on [write] barriers by default, but Hans Reiser vetoed it. Apparently, to Hans, winning the benchmark demolition derby was more important than his user's data. (It's a sad fact that sometimes the desire to win benchmark competition will cause developers to cheat, sometimes at the expense of their users.)...In the case of ext3, it's actually an interesting story. Both Red Hat and SuSE turn on [write] barriers by default in their Enterprise kernels. SuSE, to its credit, did this earlier than Red Hat. We tried to get the default changed in ext3, but it was overruled by Andrew Morton, on the grounds that it would represent a big performance loss, and he didn't think the corruption happened all that often --- despite the fact that Chris Mason had developed a python program that would reliably corrupt an ext3 file system if you ran it and then pulled the power plug.

Kernel code quality

In an interview with German newspaper Zeit Online, Linus Torvalds recently stated that Linux has become "too complex" and he was concerned that developers would not be able to find their way through the software anymore. He complained that even subsystems have become very complex and he told the publication that he is "afraid of the day" when there will be an error that "cannot be evaluated anymore."[7]


Andrew Morton, one of Linux kernel lead developers explains that the lack of test code hurts Linux code quality [8]:

Q: Is it your opinion that the quality of the kernel is in decline? Most developers seem to be pretty sanguine about the overall quality problem. Assuming there's a difference of opinion here, where do you think it comes from? How can we resolve it? A: I used to think [code quality] was in decline, and I think that I might think that it still is. I see so many regressions which we never fix.


Con Kolivas, a former Linux kernel developer, compared some OpenSolaris kernel code to Linux code and was surprised of the big difference in code quality[9]:

The summary of my impression [after reading the OpenSolaris code] was that I was... surprised....the [OpenSolaris] code, as I saw it, was neat. Real neat. Extremely neat. In fact, I found it painful to read after a while. It was so neatly laid out that I found myself admiring it. It seems to have been built like an aircraft. It has everything that opens and shuts, has code for just about everything I've ever seen considered on a scheduler, and it's all neatly laid out in clean code and even comments. It also appears to have been coded with an awful lot of effort to ensure it's robust and measurable, with checking and tracing elements at every corner. I started to feel a little embarrassed by what we have as our own [Linux] kernel. The more I looked at the [OpenSolaris] code, the more it felt like it pretty much did everything the Linux kernel has been trying to do for ages. Not only that, but it's built like an aircraft, whereas ours looks like a garage job with duct tape by comparison....[OpenSolaris] looks like an excellent design for a completely different purpose. It's built like a commercial design for commercial purposes that have very different requirements than what most of us use Linux for, but it does appear to have been done so very well. It looks like a goddamn Star Destroyer, and the Linux kernel (scheduler) suddenly looks like the Millennium Falcon. Real fast, but held together with duct tape, and ready to explode at any minute.


Theo de Raadt, founder of OpenBSD, compares OpenBSD development process to Linux [10]:

"Linux has never been about quality. There are so many parts of the system that are just these cheap little hacks, and it happens to run.” As for Linus Torvalds, who created Linux and oversees development, De Raadt says, “I don’t know what [Linus] focus is at all anymore, but it isn’t quality.”


Con Kolivas' criticism of kernel politics

Con Kolivas, a former kernel developer, tried to optimize the kernel scheduler for interactive desktop use. He finally dropped the support for his patches due to the lack of appreciation for his development. In the 2007 interview Why I quit: kernel developer Con Kolivas he stated:

If there is any one big problem with kernel development and Linux it is the complete disconnection of the development process from normal users. You know, the ones who constitute 99.9% of the Linux user base. The Linux kernel mailing list is the way to communicate with the kernel developers. To put it mildly, the Linux kernel mailing list (lkml) is about as scary a communication forum as they come. Most people are absolutely terrified of mailing the list lest they get flamed for their inexperience, an inappropriate bug report, being stupid or whatever. ... I think the kernel developers at large haven't got the faintest idea just how big the problems in userspace are.[11]

Directory structure

The traditional directory structure, which is a heritage from Linux's Unix roots in the 1970s, has been criticized:[12]

The file system is a nightmare for a normal user. This has been covered in exhaustive detail by hundreds of articles …

— Adam Scheinberg, OSNews [13]

Directory structure reforming approaches, for instance by the distributions GoboLinux[14] and moonOS, achieved little acceptance and adoption up to now.[15][16]

Desktop use

As a desktop operating system, Linux has been criticized on a number of fronts, including:

  • A confusing number of choices of distributions, and desktop environments.
  • Audio handling, particularly before PulseAudio became stable and widely supported.
  • Poor open source support for some hardware, in particular drivers for 3D graphics chips, where manufacturers were unwilling to provide full specifications.[17] As a result many video drivers have both open and closed source versions.
  • Lack of well-known native applications, such as top-selling video games and widely used commercial applications (such as Adobe Photoshop[18] and Microsoft Word).[19][20]
  • Lack of standardization regarding GUI API.[19]

Distributions

Another common complaint leveled against Linux is the abundance of distributions available. As of August, 2014, DistroWatch lists 285 major distributions.[21] While Linux advocates have defended the number as an example of freedom of choice, other critics cite the large number as cause for confusion and lack of standardization in Linux operating systems. Alexander Wolfe wrote in InformationWeek:

Remember the 1980s worries about how the "forking" of Unix could hurt that operating system's chances for adoption? That was nothing compared to the mess we've got today with Linux, where upwards of 300 distributions vie for the attention of computer users seeking an alternative to Windows.[22]

Caitlyn Martin from LinuxDevCenter has been critical of the number of Linux distributions:

We don't need to keep reinventing Linux, creating distributions that put critical bits in interesting and inventive if unusual places. An application written for Linux should be relatively simple to install on any Linux distribution. It ain't so. Do we really need hundreds of general purpose distributions, all with different tools, different filesystem layouts, variations on three major software package management schemes and a host of oddball ones, and so on? Do we need yet more to crop up?[23]

Criticism by Microsoft

In 2004, Microsoft initiated its Get the Facts campaign, which specifically criticized Linux server usage.[24] In particular, it claimed that the vulnerabilities of Windows are fewer in number than those of Linux distributions,[25] that Windows is more reliable and secure than Linux,[26][27] that the total cost of ownership of Linux is higher (due to complexity, acquisition costs, and support costs),[28] that use of Linux places a burden of liability on businesses, and that "Linux vendors provide little, if any indemnification coverage."[29] In addition, the corporation published various studies in an attempt to prove this – the factuality of which has been heavily disputed[30][31][32][33] by different authors who claim that Microsoft's comparisons are flawed. Many Linux distributors now offer indemnification to customers.[34][35][36]

Internal Microsoft reports from the Halloween documents leak have presented conflicting views. Particularly documents from 1998 and 1999 ceded that "Linux ... is trusted in mission critical applications, and – due to its open source code – has a long term credibility which exceeds many other competitive OS's", "An advanced Win32 GUI user would have a short learning cycle to become productive [under Linux]", "Long term, my simple experiments do indicate that Linux has a chance at the desktop market ...",[37] and "Overall respondents felt the most compelling reason to support OSS was that it 'Offers a low total cost of ownership (TCO)'."[38]

Responses to criticism

The Linux community has had mixed responses to these and other criticisms. As mentioned above, while some criticism has led to new features and better user-friendliness, the Linux community as a whole has a reputation for being resistant to criticism.[39] Writing for PC World, Keir Thomas, noted that, "Most of the time the world of Linux tends to be anti-critical. If anybody in the community dares be critical, they get stomped upon."[39]

See also

References

  1. ^ a b c Wallen, Jack (2008-09-04). "Ten key differences between Linux and Windows". Archived from the original on 2015-03-15. Retrieved 2015-03-15. Before debating the relative merits and shortcomings of Linux and Windows, it helps to understand the real distinctions between them. {{cite web}}: Unknown parameter |dead-url= ignored (|url-status= suggested) (help)
  2. ^ EmperorLinux (2009). "EmperorLinux". Retrieved 2009-05-27.
  3. ^ Austin, Modine (2009-09-22). "Linus calls Linux 'bloated and huge'". www.theregister.co.uk. Retrieved 2010-07-01.
  4. ^ "LinuxCon Roundtable in Torvalds Quotes". www.tuxradar.com. 2009-09-22. Retrieved 2010-07-01.
  5. ^ Ravi (2009-09-24). "Is Linux kernel getting bloated ? Linus Torvalds says Yes!". about Linux.info. All about Linux. Retrieved 2015-03-12. {{cite web}}: Italic or bold markup not allowed in: |work= (help)
  6. ^ http://www.eweek.com/enterprise-apps/linux-founder-linus-torvalds-still-wants-the-desktop.html. {{cite web}}: Missing or empty |title= (help)
  7. ^ http://www.tomshardware.com/news/Linux-Linus-Torvalds-kernel-too-complex-code,14495.html. {{cite web}}: Missing or empty |title= (help)
  8. ^ http://lwn.net/Articles/285088/. {{cite web}}: Missing or empty |title= (help)
  9. ^ http://ck-hack.blogspot.se/2010/10/other-schedulers-illumos.html. {{cite web}}: Missing or empty |title= (help)
  10. ^ http://www.forbes.com/2005/06/16/linux-bsd-unix-cz_dl_0616theo.html. {{cite web}}: Missing or empty |title= (help)
  11. ^ Mills, Ashton (2007-07-24). APC (ed.). "Why I quit: kernel developer Con Kolivas (part 2, page 3)". apcmag.com. Future Publishing (Overseas) Limited. p. 3. Archived from the original on 2013-04-23. Retrieved 2015-03-12. I think any problem with any development model has multiple factors, and ultimately, it is humans that make decisions. {{cite web}}: Unknown parameter |dead-url= ignored (|url-status= suggested) (help)
  12. ^ van Riezen, Pim (2003-02-24). "Designing object extensions for the Unix Operating Systems". www.kuro5hin.org/story. Retrieved 2010-06-03.
  13. ^ Scheinberg, Adam (2003-02-24). "If I Had My Own Distro". www.osnews.com. Retrieved 2010-04-30.
  14. ^ Muhammad, Hisham (2003-05-09). "The Unix tree rethought: an introduction to GoboLinux". www.kuro5hin.org. Retrieved 2010-06-03.
  15. ^ "The GoboLinux directory structure brings a fresh, clean look the Linux system...", 2003, GoboLinux.org
  16. ^ moonOS has it own File Hierarchy System...
  17. ^ "...it is unfortunate that NVIDIA will not be supporting the Nouveau development, releasing open-source documentation, or providing other open-source support...", March 26, 2010, Phoronix.com
  18. ^ "How to Install Adobe Photoshop on Ubuntu Linux | TechSource". Junauza.com. Retrieved 2012-09-30.
  19. ^ a b Tashkinov, Artem S. (2011-05-11). "Why Linux is not yet ready for desktop". Retrieved 2011-07-29.
  20. ^ McCue, Andy (2005-09-09). "Gartner sounds desktop Linux warning". zdnet.co.uk. Retrieved 2011-07-29.
  21. ^ DistroWatch (August 2014). "Linux Distributions - Facts and Figures". Retrieved 2014-08-23.
  22. ^ Wolfe, Alexander (2007-07-18). "Too Many Linux Distros Make For Open Source Mess". InformationWeek.com. Archived from the original on 24 August 2007. Retrieved 2010-01-11.
  23. ^ Martin, Caitlyn (2007-01-16). "So Many Distros, So Little Time". www.oreillynet.com. Retrieved 2010-05-30.
  24. ^ "Get the Facts Home". Microsoft website. Retrieved 2007-04-14.
  25. ^ "Get the Facts on Linux and Windows: Security". Microsoft website. Retrieved 2007-04-14.
  26. ^ "Get the Facts on Linux and Windows: Reliability". Microsoft website. Retrieved 2007-04-14.
  27. ^ "Windows v Linux security: the real facts". The Register. 22 October 2004.
  28. ^ "Get the Facts on Linux and Windows: Total Cost of Ownership". Microsoft website. Retrieved 2007-04-14.
  29. ^ "Get the Facts on Linux and Windows: Intellectual Property Indemnification". Microsoft website. Retrieved 2007-04-14.
  30. ^ Joe Barr (24 June 2005). "The facts behind the "Get the Facts" ad campaign". Newsforge. Retrieved 2007-04-14.
  31. ^ Nicholas Petreley (22 October 2004). "Security Report: Windows vs Linux". Retrieved 2007-05-12.
  32. ^ "Microsoft kills its 'Get the Facts' anti-Linux site", August 23, 2007, ZDnet
  33. ^ "Microsoft tried to muck with anti-Linux 'facts'", February 2, 2007, ZDnet
  34. ^ Novell Indemnification Program
  35. ^ What is Red Hat's Open Source Assurance program?
  36. ^ Canonical rejigs Ubuntu support services, Tiered support gets tiered pricing By Timothy Prickett Morgan, The Register
  37. ^ Raymond, Eric S. (2006-10-12). "Halloween Document II (Version 1.7)". www.catb.org/~esr.
  38. ^ Raymond, Eric S. (2002-11-05). "Halloween VII: Survey Says". www.catb.org/~esr.
  39. ^ a b Thomas, Keir (April 2009). "Linux Needs Critics". www.pcworld.com. Retrieved 2010-01-22.