Criticism of Linux
The criticism of Linux focuses on issues concerning use of operating systems which use the Linux kernel.
While the Linux-based Android operating system dominates the smartphone market in many countries, and Linux is used on the New York Stock Exchange and most supercomputers, it is used in few desktop and laptop computers. Much of the criticism of Linux is related to the lack of desktop and laptop adoption, although as of 2015 there has been growing unease with the project's perspective on security and its adoption of systemd has been controversial.
Linux Kernel criticisms
Kernel development politics
A group of security patches for the Linux kernel, called grsecurity, have been proposed to add features like address space layout randomization into the official release of the kernel. Some security professionals say that the rise in prominence of operating system-level virtualization using Linux has raised the profile of attacks against the kernel, and that Linus Torvalds is reticent to add mitigations against kernel-level attacks in official releases.
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.
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.
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".
Kernel code quality
In an interview with German newspaper Zeit Online in November 2011, Linus Torvalds 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."
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.
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.
"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's] focus is at all anymore, but it isn’t quality.”
Critics of Linux on the desktop have frequently argued that a lack of top-selling video games on the platform holds adoption back. As of September 2015, the Steam gaming service has 1,500 games available on Linux, compared to 2,323 games for Mac and 6,500 Windows games.
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 (this has been moot since 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. As a result, many video cards have both open and closed source drivers, usually with different levels of support.
- Limited availability of widely used commercial applications (such as Adobe Photoshop and Microsoft Word). This is a result of the software developers not supporting Linux rather than any fault of Linux itself. Sometimes this can be solved by running the Windows versions of these programs through Wine, a virtual machine, or dual-booting. Even so, this creates a chicken or the egg situation where developers make programs for Windows due to its market share, and consumers use Windows due to availability of the programs.
- Lack of standardization regarding GUI API.
Another common complaint levelled against Linux is the abundance of distributions available. As of August, 2014, DistroWatch lists 285 major distributions. 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.
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?
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:
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.
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.
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.
The traditional directory structure, which is a heritage from Linux's Unix roots in the 1970s, has been criticized as inappropriate for desktop end users. Some Linux distributions like GoboLinux and moonOS have proposed alternative hierarchies that were argued to be easier for end users, though they achieved little acceptance.
Criticism by Microsoft
In 2004, Microsoft initiated its Get the Facts campaign, which specifically criticized Linux server usage. In particular, it claimed that the vulnerabilities of Windows are fewer in number than those of Linux distributions, that Windows is more reliable and secure than Linux, that the total cost of ownership of Linux is higher (due to complexity, acquisition costs, and support costs), that use of Linux places a burden of liability on businesses, and that "Linux vendors provide little, if any indemnification coverage." In addition, the corporation published various studies in an attempt to prove this – the factuality of which has been heavily disputed by different authors who claim that Microsoft's comparisons are flawed. Many Linux distributors now offer indemnification to customers.
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 OSs", "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 ...", and "Overall respondents felt the most compelling reason to support OSS was that it 'Offers a low total cost of ownership (TCO)'."
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. 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." In a 2015 interview, Linus Torvalds also mentioned the tendency of Linux desktop environment projects to blame their users instead of themselves in case of criticism.
- "IDC: Smartphone OS Market Share". www.idc.com.
- "Gartner Says Tablet Sales Continue to Be Slow in 2015". 5 January 2015. Retrieved 6 March 2015.
- Jorge Ribas (5 Nov 2015). "The kernel of the argument". Washington Post.
Fast, flexible and free, Linux is taking over the online world. But there is growing unease about security weaknesses.
- Timberg, Craig (5 November 2015). "The Kernel of the Argument". The Washington Post. Retrieved 19 January 2016.
- Hoffman, Chris (31 October 2014). "Meet systemd, the controversial project taking over a Linux distro near you". PCWorld. Retrieved 19 January 2016.
- 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.
- Austin, Modine (2009-09-22). "Linus calls Linux 'bloated and huge'". www.theregister.co.uk. Retrieved 2010-07-01.
- "LinuxCon Roundtable in Torvalds Quotes". www.tuxradar.com. 2009-09-22. Retrieved 2010-07-01.
- Ravi (2009-09-24). "Is Linux kernel getting bloated ? Linus Torvalds says Yes!". about Linux.info. All about Linux. Retrieved 2015-03-12.
- "Linux Founder Linus Torvalds 'Still Wants the Desktop'". eweek.com. Retrieved 3 August 2015.
- Douglas Perry. "Linux Kernel Grows Past 15 Million Lines of Code". Tom's Hardware. Retrieved 3 August 2015.
- "Andrew Morton on kernel development". lwn.net. Retrieved 3 August 2015.
- ck. "-ck hacking". ck-hack.blogspot.se. Retrieved 3 August 2015.
- "Is Linux For Losers?".
- Jared Newman (21 September 2015). "Steam for Linux tops 1,500 games as launch of Valve's Steam Machines nears". PCWorld.
- "Steam’s living room hardware blitz gets off to a muddy start". Ars Technica.
- "The state of Linux gaming in the SteamOS era". Ars Technica.
- "...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
- McCue, Andy (2005-09-09). "Gartner sounds desktop Linux warning". zdnet.co.uk. Retrieved 2011-07-29.
- "How to Install Adobe Photoshop on Ubuntu Linux | TechSource". Junauza.com. Retrieved 2012-09-30.
- DistroWatch (August 2014). "Linux Distributions - Facts and Figures". Archived from the original on 2011-10-07. Retrieved 2014-08-23.
- 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.
- Martin, Caitlyn (2007-01-16). "So Many Distros, So Little Time". www.oreillynet.com. Retrieved 2010-05-30.
- 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.
- EmperorLinux (2009). "EmperorLinux". Retrieved 2009-05-27.
- van Riezen, Pim (2003-02-24). "Designing object extensions for the Unix Operating Systems". www.kuro5hin.org/story. Retrieved 2010-06-03.
- Scheinberg, Adam (2003-02-24). "If I Had My Own Distro". www.osnews.com. Retrieved 2010-04-30.
- Muhammad, Hisham (2003-05-09). "The Unix tree rethought: an introduction to GoboLinux". www.kuro5hin.org. Retrieved 2010-06-03.
- "The GoboLinux directory structure brings a fresh, clean look the Linux system...", 2003, GoboLinux.org
- moonOS has its own File Hierarchy System...
- "Get the Facts Home". Microsoft website. Retrieved 2007-04-14.
- "Get the Facts on Linux and Windows: Security". Microsoft website. Retrieved 2007-04-14.
- "Get the Facts on Linux and Windows: Reliability". Microsoft website. Retrieved 2007-04-14.
- "Windows v Linux security: the real facts". The Register. 22 October 2004.
- "Get the Facts on Linux and Windows: Total Cost of Ownership". Microsoft website. Retrieved 2007-04-14.
- "Get the Facts on Linux and Windows: Intellectual Property Indemnification". Microsoft website. Retrieved 2007-04-14.
- Joe Barr (24 June 2005). "The facts behind the "Get the Facts" ad campaign". Newsforge. Retrieved 2007-04-14.
- Nicholas Petreley (22 October 2004). "Security Report: Windows vs Linux". Retrieved 2007-05-12.
- "Microsoft kills its 'Get the Facts' anti-Linux site", August 23, 2007, ZDnet
- "Microsoft tried to muck with anti-Linux 'facts'", February 2, 2007, ZDnet
- Novell Indemnification Program
- "We Believe". redhat.com. Retrieved 3 August 2015.
- "Canonical rejigs Ubuntu support services". theregister.co.uk. Retrieved 3 August 2015.
- Raymond, Eric S. (2006-10-12). "Halloween Document II (Version 1.7)". www.catb.org/~esr.
- Raymond, Eric S. (2002-11-05). "Halloween VII: Survey Says". www.catb.org/~esr.
- Thomas, Keir (April 2009). "Linux Needs Critics". www.pcworld.com. Retrieved 2010-01-22.
- "Interviews: Linus Torvalds Answers Your Question 118". slashdot.com. 2015-07-01. Retrieved 2015-07-01.
What I do wish particularly desktop developers cared about is "consistency of experience".[...] I'm just talking about the pain and uncertainty users go through with upgrades, [...] This is not at all Linux-specific, of course - just look at the less than enthusiastic reception that other operating system redesigns have received. But I really wish that we hadn't had *both* of the major Linux desktop environments have to learn this (well, I hope they learnt) the hard way, and both of them ending up blaming their users rather than themselves.