The Hostway Blog

Linux Series Part 1: Overview

When choosing a server for your Web site, one of the biggest decisions you have to make is which operating system (OS) to run it on. If you opt for a shared hosting plan, most hosts offer a choice between Windows and Linux. If you opt for a dedicated or virtual server, you can choose any platform that suits your needs.

In this series of articles, we’re going to look at Linux. We’ll cover how it was developed, why it’s so popular as a Web hosting platform and the scripting languages and database solutions it supports. We’ll also discuss the role of Linux within the open source movement and look at the future of open source.

An Introduction to Linux

Without an operating system, a computer could only run one program at a time. It would have to be rebooted before loading another program into memory. In fact, that’s how the earliest computers worked, before the development of the UNIX kernel in 1971.

UNIX provided a software interface between the computer hardware and software programs. This kernel provided a way to manage the processor, memory, input and output devices, and to prioritize and allocate resources between users. It was, however, proprietary software and prohibitively priced for most computer enthusiasts.

During the 1980s, the GNU Project worked on developing a UNIX like OS that would be free to use, modify and distribute. The kernel of the GNU OS was GNU Hurd, but in their own words, “the Hurd still lacks some important features, so it is not widely used.”

Meanwhile Andrew S. Tanenbaum, a professor in Amsterdam created MINIX as a teaching tool, and included 12,000 lines of the kernel code in his book “Operating Systems Design and Implementation” in 1987. This prompted Linus Torvalds, a student in Finland, to produce his own kernel, Linux, in 1991, which he intended to be available for commercial as well as academic use.

Torvalds published Linux under the GNU Project’s General Public License. The Linux kernel provided the last major missing component for the GNU OS, and the two were combined to create GNU/Linux, which is often simply referred to as Linux.

What Makes Linux so Popular for Web Hosting?

While Linux machines are estimated to make up around 2% of the desktop market, and around 12.5% of the server market share, they account for at least 60% of Web servers. Some of the reasons for this include:

  • Lower Costs
    One of the reasons most often cited for the popularity of Linux on Web servers is because there are no licensing costs, so hosting on Linux rather than Windows is cheaper.
  • Open Source
    The GNU General Public License means anyone can contribute to, alter and distribute the source code. That means anyone can customize an installation, add functionality or fix bugs in the system, and they are encouraged to feed enhancements back to the community.
  • High Performance
    Linux is designed to be light on code and modular. Users are free to compile distributions that contain only the code required for their system, rather than cluttering it with redundant processes.
  • Robust
    Most Linux platforms are written to be self-healing, meaning that if one process fails, it cannot cause the whole system to crash.
  • Secure
    The majority of malicious programs have traditionally been written to take advantage of vulnerabilities in Windows OS, and so anything that isn’t Windows has been seen as the more secure option.
  • Internet Aware
    Perhaps the most important reason why Linux is more popular for Web hosting than anything else is that it’s written to be inherently Internet aware, with the ability to transfer large packets of data securely via shell access.

The downside to all this is it requires more technical knowledge to operate, and unless you are familiar with operating systems administration, or you have a technical support subscription, fixing anything that does go wrong could be a major headache.

Read the other articles in this series:

Linux Web Hosting Part 1: Overview
Linux Web Hosting Part 2: Scripting
Linux Web Hosting Part 3: Databases
Linux Web Hosting Part 4: Conclusion