Why Is Linux Faster Than Windows?

Why Is Linux Faster Than Windows?

One question that comes up a lot in discussion is whether Linux is genuinely a faster OS when compared to Windows. Most of the questions direct us to the time it takes for the OSes to boot up and in that parameter, yes, Linux is noticeable faster than Windows. Why then, does it fail the speed test when compared along other parameters ?

Kernel

One big reason why Linux can boot up faster than Windows is the difference in the way their kernels are designed. The nucleus of an OS is very different in these 2 products. Linux has a monolithic kernel – meaning it holds every core functionality needed by the OS such as drivers ,memory management, task scheduler and the file system. Windows on the other hand contains a micro kernel which contains only the basic necessities and the remaining aspects are loaded separately thus making it a little bit slower when compared to Linux.

Backward Compatibility

This is one aspect wherein Windows suffers owing to the decades of software support it provides it’s users. While it may slow down the loading process, there’s no denying that a majority of the world’s computing needs require this compatibility. Linux on the other hand, being a minority shareholder in the computing world can afford to forgo backward compatibility.

While discussing this, we also need to note that Microsoft can afford for Windows to be slower for the simple reason that a potential user will not be dissuaded from purchasing a Windows license just because it works a little bit slower. Windows being a propriety OS has a limited number of developers and thus a finite number of man hours they can commit. Therefore, the development activities need to be market driven for Microsoft. Optimization is not as high a priority for Windows compared to other requirements.

Linux on the other hand outperforms Windows in many areas because it is essential for its existence.

Explanation From Tech-savvy Reddit user logicalkitten 

  • One of the more hidden benefits to linux is that applications share files better than windows. So instead of DLLs like in windows, linux uses .so files, or “shared objects”. There are also .ko files, which are kernel objects, somewhat like drivers in windows.
  • A Windows application might depend on a very specific version of a DLL. The person who writes the application doesn’t know what version of windows you will be installing it on and if that particular DLL will be present in your system. So the easiest solution is to just include the correct DLL with the application. Effect: installers are much larger, C drive is fuller, and more ram is used.
  • Linux does it differently. When you ask to install Midori web browser for instance, apt-get (or the software center front end) checks the package for a list of dependencies. Instead of including all the files, Midori just says what it depends on.
  • So apt-get checks the system and sees that fileX.so.1 is already installed, which is one of the dependencies, so it doesn’t need to fetch it from the central software repository. It then notices that Midori needs another file, which is not installed yet, so it checks the software repository for a version that matches, or one that is newer. It installs that. And so on. Once the dependencies are satisfied, it installs the application itself. Result: Software can be installed very quickly and doesn’t take up as much space or ram.
  • The apt-get system also keeps track of how many applications need fileX.so.1, so that if you remove Midori, it doesn’t remove fileX.so.1, unless nobody else is using it. So Linux has pretty good house keeping skills.

How many of the ardent Linux supporters would stick around if the OS starts having problems ?

9 COMMENTS

  1. I disagree with many things stated in this article.

    For one, it is Linux that has to maintain backwards compatibility while windows can force users into an upgrade. I remember, for example, that a lot of hardware that was on XP, simply was not supported on Vista. Similarly, a lot of software that ran on win98 or window me didn’t run on XP.

    Only last year did Debian stop supporting 486 Processors.

    I would also disagree that Linux does things to adopt to the market in order to survive. In fact, you can’t make any meaningful change in Linux without some users rebelling against making a fork. In Linux nothing ever dies, and new software has to be written arround old. There are still people using midnight Commander or fvwm95 window manager.

    Another example are deb vs. rpm distributions. It’s been 20 years and two packaging formats do the same thing, so why do we still have both? Not only that, but more packaging formats have been created as people trying to improve on already solved problem.

    • Processors are not like OS, the instruction set differs from the type to type, for example, powerPC is not used now in 99% of pc and is discontinued, the instruction set of PPC is much different from that of xenon, or i3 intel.

  2. I’ve used Linux since the 90’s as my primary desktop. I don’t see myself moving away from Linux any time soon. Now maybe I’ll distro hop if one distro doesn’t work the way I think it should. That’s one of the strengths (and to some degree a weakness) is that there are so may distros out there. Of course you could just roll your own using LFS, Gentoo, or Arch.

  3. There are other package managers out there in addition to ‘apt’:
    pacman, rpm, pisi, portage, epokg etc.
    worth mentioning 🙁

  4. One big thing not mentioned is the filesystem support. Linux FS is more performant in particular w.r.t. reading and writing lots of small files.

  5. The term “faster” is relative and loaded. Faster at what? Most distros of Linux are faster in general than Windows on the same hardware over time. I say over time because while Windows may appear faster at first fresh out of the box so to speak, inevitably bit-rot starts to affect the system and it becomes slower and slower if major manual upkeep and housekeeping is not performed on a regular basis. This is with average use by an average user.

    A distro of Linux, on the other hand, will consistently run about the same regardless of usage for as long as it is installed, barring extant circumstances like hardware failure or drive usage maxed out. Keep in mind, this is in regards to desktop end user usage. I have found that Windows used in a server role with well-defined parameters and not much change to the file-system can be very stable, though still not as stable as a good linux system in the same role.

  6. The first paragraph contains a serious amount of crap. The current kernel that most people will be using is as non-monolithic as possible. All functionality is loaded as needed using the kernel-modules (the .ko files the author refers to later on), which are what you would call the drivers under Windows. It is possible for a lot of drivers to be baked into the kernel as to make it a single monolithic piece of code, but apart from some embedded linux usages nobody actually uses this anymore.

    The backward compatibility has been debunked in a previous comment. And the market driven aspect of windows development…. Why did windows 10 include a linux layer including bash? Is it because the market already decided it wants things to resemble Linux so Microsoft had some catching up to do?

    And being able to be slower because the potential user allow it? Most technical/business people I encounter prefer Linux on their server and ‘allow’ Windows on the desktop because the other employees feel more comfortable with that system since they run a variant of windows at home. Heck, most ‘potential user’ do not even have a clue that Linux exists, they buy their home PC with windows pre-installed, just like they buy a car with the engine already installed. They consider the hardware and the windows OS to be one inseparable unit.
    The potential user allowing it to be slow? That is a case of ignorance, not of benevolence.

  7. 1) Linux is not a monolithic kernel. It is a hybrid kernel which can dynamically load drivers in at run-time. It has done this for many years now. Further, kernel interfaces like FUSE blur the line between monolithic kernel and microkernel, allowing many driver-like systems to reside fully in user-space.

    2) Linux is VERY backwards-compatible. The key to this is the fact that most packages are defined purely in terms of source code, and not as executable binaries. This means that kernel interfaces and the ABI may change drastically, but older programs using libraries that follow more stable interface standards continue to allow them to run. This is an inherent benefit of distributing software and source code, since it means that the kernel no longer needs to continue supporting legacy ABIs and APIs without breaking older software.

    3) The power of Linux and related systems comes primarily from their ability to share code, APIs, and system software between many different programs and layers of the operating system. Opening up the entire system stack to developers allows greater scrutiny of code too.

  8. So ignorant people said Unix is 15% slower. My son Alex is a computer genius. Knows more about computers than me and my minor in CIS. I bought him computers and put Linux on it and he had something to due with his mom was force drugging him. Now she is trying to steal his inheritance. A little off topic. Hope it didn’t take too long and Linux is better than Windows in numerous ways and like a previous posted said 75% to 90% probably don’t know about or much about Linux/Unix when bell labs couldn’t do it cause of anti trust and monopoly soft IS clearly a monopoly AND ~NOW installed on ~90% of computers… I bought Corel, Turbo, Red Hat book and disk, Suse, Linspire and donated to Mint a few times and Open Office once… Windows 10 looks a lot like Mint…

LEAVE A REPLY

Please enter your comment!
Please enter your name here