Windows vs. Linux

From Free net encyclopedia

Template:Expert Template:Cleanup-date Template:No references

Since Microsoft Windows is the best known closed source operating system and Linux is the best known open source operating system, comparisons are often made between the two in both mainstream and niche media.

Both products can serve a similar function in both the desktop and server areas. Much has been said about which performs those roles best. This page is an attempt to characterize objections, comparisons, and commonly stated views of both sides.

Contents

Windows

General Users

Most people agree that Microsoft Windows is easy to use, which is a major reason why it has been the most used and most successful operating system since the early 1990's.

This has led people to consider the Microsoft Windows operating system as the standard in computing. The other factor that led to this is that, before Windows, all computers ran different operating systems; these operating systems were incompatible with each other. The development and adoption of Windows allowed for hardware and software to be compatible with a larger number of users, namely those using the Windows operating system.

The result of this is that Windows supports a wide range of hardware and there is a large library of software capable of running on it. With newer releases, Microsoft adds new hardware and software support and removes old hardware and software support. Despite the compatibility layers present in the OS, some older applications (especially games that predate Windows 95) work poorly – or sometimes not at all – on newer versions of Windows.

Windows is also described by some users as being unstable, with the resulting fame of things such as the Blue Screen of Death. The result of such instability can be attributed to a lot of factors, including bad design choices, unnecessarily complicated programming models and poor documentation, API instability (some bugs are kept for compatibility reasons), and poorly written third-party drivers. Earlier versions of Windows, especially the Windows 9x line. However, since Windows 2000 and XP (which are based on the Windows NT kernel) stability has improved markedly, with machines crashing less regularly, and more often due to hardware problems, poorly written device drivers, and poorly written applications. Linux advocates however often claim that the fact that Windows is often unable to cope with these errors and requires a system reboot is a sign that remains less stable.

Another major complaint from the users is the perceived lack of security. While modern versions of Windows have been designed to be secure operating systems, the large number of flaws in the implementation have made it possible for a variety of attacks to be created, that can spread through email, instant messaging, shared files, web pages, and automatically through direct network connections.

Windows is well-known for being the target of a lot of viruses, spyware, and other forms of malware, so users usually have to educate themselves about computer security because of this issue. To this end, users are often forced to run anti-virus and anti-spyware programs, which slow down desktop tasks in the computer, to avoid malware infection. While it is necessary to install security patches, they do not grant total security because there is often some time to wait before they are available, which can sometimes be enough for a 0 day attack to become available. Many viruses don't take advantage of security vulnerabilities at all, instead relying on social engineering to convince users to install software or view web pages that contain malicious code.

The software distribution model is also problematic for security, because many people use software coming from untrusted sources (such as illegal p2p downloads) or freeware and shareware software that often contains spyware as a way for the developers of the software to make money.

Also, crackers are more inclined to create malware aimed at Windows platforms because of the sheer number of Windows users. The larger number of Windows users presents a larger number of targets for malware; thus most malware is aimed at Windows users in order to affect the largest number of users.

Gamers

The common belief of gamers is that operating systems other than Microsoft Windows do not have as wide a range of games available as Windows.

This is only half true. While there are a few commercial games such as Unreal Tournament or Quake that run natively on other operating systems, most are still made for Windows only. However, there are compatibility layers that allow programs originally made for Windows to run on other operating systems. Linux, for example, has wine, and Cedega, which is based on Wine but optimised for games.

There are also numerous open source games, which tend to be low cost and less graphical. Although mainly intended for users of Linux and other open source operating systems, many of these do support Windows. One of the most notable is Freeciv, an open source replacement for Sid Meier's Civilization series. Although it has poorer graphics, it is far more customizable than its non-free counterpart.

Another argument is that games made for Windows run faster on Windows than on another operating system using a compatibility layer. This tends to only be true for more recent games that are designed for faster processors. Older games tend to achieve performance parity with their native Windows counterpart.

Native games mostly run equally fast on different operating systems, though sometimes one of the native versions is a port, meaning the native (usually Windows) version is adapted to run on another operating system, in which case speeds may differ. It might be that games run slower on non-Windows operating systems when the manufacturer of a piece of hardware, e.g. the video card, did not release its specifications and did not create a device driver, in which case the other OS has more trouble creating their own device drivers, resulting in lower performance.

Microsoft reaction

With the increasing number of people migrating away from Windows to other operating systems such as Linux or Mac OS X, Microsoft has reacted strongly in every domain.

For the Windows operating system they started a campaign about Windows TCO and security.

They also had a problem with Internet Explorer which was losing marketshare to alternatives such as Firefox or Opera. For this particular case, they simply resumed Internet Explorer development which had been previously neglected.

Some of the famous Microsoft campaigns:

TCO

The common belief is that Linux is free (price) or costs less money (commercial Linux distributions). Microsoft reacted and started a campaign named "Get the Facts" where they claim that Windows has a lower total cost of ownership (TCO). While their study wasn't fair, mainly because they used an expensive workstation for Linux, while the Windows counterpart used a normal machineTemplate:Fact, we can say that calculating the Linux TCO is difficult.

Nevertheless we will try to figure it out, omitting the productivity calculations:

  • Windows TCO can easily be calculated, adding the price of the administrators, the licence and the support
  • Linux TCO is a bit more difficult because of different reasons:
    • the variety of choice between distributions (free and commercial ones)
    • the support (can be either commercial or through forums and user base)
    • the situation (kind of migration, for example a business requiring some specialised software)

The productivity is hard to evaluate because it includes:

  • user productivity
  • performance of the servers (can be calculated, but depends upon the software such as the Linux distribution and the hardware)

Security

On the security side, Microsoft argues that its platform is more secure because the Microsoft developers can respond to security issues more quickly and efficiently than the Linux developer community. Microsoft claims the reason Windows is often subject to more vulnerabilities is because Windows runs on a greater percentage of computers (85% overall), making it an easier target. Microsoft claims that because their operating system is closed-source it provides security by obscurity where flaws in the code are not as visible for crackers to take advantage of.

Microsoft also claims that operating systems based on Windows NT have a more finely-grained permission system than Linux. Operating Systems based on Windows NT use access control lists to protect files. Linux also supports Access Control Lists with SELinux, though that feature is not enabled by default on some distributions. Some, such as Fedora, CentOS and Red Hat use it out of the box.

However, where Linux enforces the user of file permissions by creating user accounts which have lower privilege levels by default, while new user accounts in Windows (particularly XP Home) tend to be created with elevated privilege levels, so the file permissions system in place on Windows NT and above is not as obvious. Microsoft recommends that users log on during regular computer use with an account that has lower privilege levels, and only use accounts with higher privilege levels when performing system administration tasks.

To counter this, Microsoft has added a feature called User Account Control to Windows Vista where all users, including system administrators, will by default have a lower set of privileges. This feature works in a similar way to Mac OS X and Ubuntu Linux, where users are prompted for a password before they do anything that may affect the stability or security of their system.

Linux

Linux proponents claim that Linux is more secure, costs less (for example, CDs of the operating system can often be obtained at no cost or for a nominal fee), is swifter at resolving bugs, gives the user more freedom, that the Microsoft "Get the Facts" advertising campaign is misleading and largely FUD (fear, uncertainty, and doubt), and point out that most of the studies referenced in the campaign were funded by Microsoft. (See Microsoft's internal corporate view on Linux as publicized in the 'Halloween documents'). Aside from Linux vendors, this view is also supported (sometimes rather aggressively) by various Linux user groups (LUGs) and many hardcore Linux users.

Linux proponents argue that security is better on Linux because the source code is freely available to the public and can be reviewed (and bug fixes submitted) by many more people before a release, in contrast to Windows, whose source code can only be reviewed by Microsoft employees and people who agree to sign a non-disclosure agreement. Although Windows advocates argue that the source can be made worse by ignorant or malicious submissions (similar to vandalism on a wiki), strict quality control is used over all submissions of code (For more see The Cathedral and the Bazaar). Supporters of Linux argue that it is not the percentage of computers that the software occupies that determines the amount of attacks, but how well the software is designed. Linux's use of Unix-like permissions is a common argument for better design.

Linux users claims that the Linux environment is, by design, a virus- and spyware-free operating system in contrast to Microsoft Windows. Windows proponents say that this is due to the low installed base of Linux computers, but the fact that Microsoft's web server IIS is far less popular and far more exploited than the Apache web server seems to counter this myth.[1] Some Windows proponents even go so far as to claim that most of the virus writers are basically "open source fans" who have tremendous amounts of hatred toward Windows. Linux users attribute this immunity to the UNIX-like permissions and better security built into the filesystem and kernel, since a malicious program run by a user can only remove his or her files but can not damage the system. This is because GNU was modeled after UNIX, which is a multi-user server operating system, as opposed to Windows, which has its origins in single-user DOS. Linux is already known as the "OS for networking" while Windows is known as the "OS for everything else". Linux does not use the file extension to determine if the file should be executed but instead uses a file system execute bit, which cannot be set by the file's original source; this provides added protection for wetware exploits (tricking the user into running programs). Some people believe that since the Linux source code is freely available, somebody with enough time and experience may be able to engineer a virus to affect the kernel. However, Linux advocates note that even if the security holes that the virus relies on are still unfixed when such a virus is released, a patch can and would be released within the following few hours, as Linux developers are also continually enhancing security in their operating system.

Another common point made by Linux users is that most Linux Distribuions come with a great deal more software, making a default Linux installation far more useful than a default Windows installation. For example, most Linux distributions include choices between multiple Office applications, many games, development tools, educational tools, internet utilities, email clients, multimedia applications, servers, and system administration tools. Linux users also claim that their system is more powerful thanks to a powerful command line environment which is not available by default in Windows (although such environments are available through applications such as Cygwin, and Windows Vista is expected to include a command line environment similar to that which has been included in Linux distributions for over a decade).

Linux promoters note that, even though Microsoft recommends that users work with reduced privileges, few users actually do so, and they claim that this is due to Microsoft not promoting it actively enough, and also because many applications do not run properly with reduced privileges.

Technical Comparisons

Apart from debates over security, application availablility, and open source software vs proprietary software arguments, many computing professionals debate the relative technical mertits of Linux vs Windows. Direct comparisons are difficult for a number of reasons. Primarily, due to the closed source nature of Windows and open source nature of Linux, it is much easier to gain a greater understanding of the inner workings of Linux as compared to Windows. This means that, when comparing the way these two operating systems perform various tasks, some amount of reverse engineering, benchmarking, and guesswork must be used to determine how and why Windows performs certain tasks. The second reason direct comparisons are difficult is because many components which are bundled into Windows have numerous counterparts for Linux. This means that comparisons are made not only between Linux and Windows, but between various possible Linux configurations. Related to the previous point, Windows has many things integrated into the kernel that under Linux systems are run in userspace. In light of these facts, many technical comparisons are made between Windows and Linux.

kernel space vs user space

One of the common points of debate between the merits of Linux as compared to Windows is in where certain parts of the operating system reside. Microsoft has often been criticized for including many components, such as Internet Explorer and Windows Media Player, into the Windows kernel. This has been at the core of antitrust cases held against Microsoft in both the US and Europe. Microsoft and Windows proponents claim that these libraries are a necessary part of the Operating System, and should therefore be included in the Kernel. Other criticisms stem from the integration of the Windows GUI in the Windows Kernel. Microsoft argues that including the GUI in kernelspace is necessary for performance reasons.

Linux proponents claim that the kernel should include only what absolutely must run in kernel space, such as code that must communicate directly with the hardware or filesystem, and that all other code should be run in userspace. An entire Linux system should not crash because of application failures or poorly written drivers. When something goes wrong in Windows, the OS either crashes, needs to reboot, or needs to be completely reinstalled. Change to the Windows operating system also force a reboot before anything "comes into effect." Because of the modularized nature of Linux, one merely needs to restart one part of the system if it gets reconfigured or stops functioning properly.

Memory management

One common point of debate between Linux and Windows is on the ways in which each operating system manages system memory. Linux proponents claim that Linux's memory manager is better at avoiding swapping and allocating memory to programs. Windows proponents claim that Windows's use of the swap file offers better performance because it better anticipates what memory will not be used for some time, and can better load into memory what the user is most likely to soon need. Many people criticize Windows's approach, claiming that use of the swap file should be avoided when possible, because of the bottleneck encountered during reading and writing to the hard disk. The Windows memory manager is also criticized for memory leaks.

Stability

Linux proponents claim that Windows has severe problems with stability, often citing the once common Blue Screen of Death. Both Windows and Linux proponents agree that a common source of instability is due to bugs in various device drivers (see below). Linux users often claim that Windows itself lacks stability, and claim that reboots required for driver installation and security patches, as well as problems with Windows memory management and instability in the Windows API cause the overall system to lack the stability of Linux.

Device Drivers

A common point of argument is over the way Windows handles device drivers. Since device drivers run in kernel space, unstable drivers can cause system instability in Windows. Linux runs many drivers in userspace, which linux proponents claim allows Linux systems to remain stable when a driver crashes (see kernel space vs user space). Windows advocates often claim that Windows stability has improved and that it is better able to deal with buggy drivers than it once was. The claim is often made that, if a driver is would cause the operating system to crash, having the kernel running serves no purpose since the system will require a reboot anyway. This is often countered by the claim that a skilled user may be able to kill the problem process and recover system stability, or else bring the system to a more graceful halt than would have been caused by a system crash. As of WindowsXP, the Windows Usermode Driver Framework allows many non-critical system drivers to run in usermode, for example most USB hardware would suit a usermode driver. Due to the kernel model followed by both operating systems (monolithic vs hybrid), it is not possible to run many drivers outside the "kernel" on Windows.

Others markets

Embedded

Gaming consoles

Linux-Xbox was successfully hacked onto Microsoft's original Xbox. It was discovered that Microsoft had three bugs in just 512 bytes of code.

A similar project is being run by Free60.org to port Linux onto Microsoft's latest console.

Ken Kutaragi, head of Sony Computer Entertainment, has said that the Playstation 3 comes with a hard drive and it might come with Linux pre-installed.

The Linux OS has been rumored to be ported to the up-coming Nintendo Revolution Console, which will be able to double as a Personal Computer through the Linux operating system included in the console. None of this has been officially confirmed by Nintendo as of yet.

See also

External links