Linux (operating system)

From Citizendium
Revision as of 20:10, 21 February 2009 by imported>Eric M Gearhart (→‎History)
Jump to navigation Jump to search
This article is developing and not approved.
Main Article
Discussion
Related Articles  [?]
Bibliography  [?]
External Links  [?]
Citable Version  [?]
 
This editable Main Article is under development and subject to a disclaimer.
For other meanings of the term "Linux", see Linux (disambiguation).
Linux
Linux Tux Logo.png
Gnome screenshot.png
Website www.kernel.org
Created by Linus Torvalds (Linux kernel) and Richard Stallman (GNU Utilities)
Developed by the Open Source community
Software type Operating System
Source model Open Source
Licence GNU General Public License
OS Family Unix-like
Kernel Type Modular monolithic
Default UI usually Gnome or KDE
Platforms x86, x86-64, PowerPC, AMD64, ARM, DEC Alpha, HP PA-RISC, IA-64, MIPS, Motorola 68k, IBM S/390, Sun SPARC,

Linux is an operating system similar in purpose to Microsoft Windows and Mac OS X. Unlike Windows and OS X, Linux is free and runs on both Intel and PowerPC platforms, as well as many others.

Linux comes in a variety of distributions or packages. A distribution bundles the core operating system with a suite of free software typically including email, web browsing, multimedia and office applications. The most popular distribution is Ubuntu, which is designed for ease of installation and use.

The surge in the popularity of Linux in the past decade has contributed to the popularity of open source software in general, and brought the ideals and methodologies of both the open source crowd and the free software movement into the limelight.

History

Development of the Linux kernel was started in 1991 by a Finnish college student named Linus Torvalds.

At the time the Unix operating system was the de facto standard at universities around the world since it was written in the high-level C programming language, which allowed it to be used on many different machine architectures. Before the 7th edition of UNIX, the source code was available and it was used to teach students the inner working of a operating systems. This availability also allowed computer scientists to change different aspects of the code to fit their needs and inspired a strong following in academia. However, AT&T which owned UNIX soon realized the commercial value of the operating system and blocked universities from using the UNIX source code in their teaching.

To combat AT&T's licensing change, Professor Andrew Tanenbaum wrote a new, smaller operating system inspired by UNIX which he called Minix. This new operating system contained none of the source code that was owned by AT&T, so it could be distributed to universities for use in the classroom and could be adapted to run on many different machines. Since Andrew Tanenbaum was a professor at Vrije Universiteit in Amsterdam, The Netherlands, his goal was to make the source code for his operating system short and simple enough for students to read and follow within a semester.

Many individuals contributed to Minix through a news group on USENET called comp.os.minix and their changes were merged into the operating system by it's author. However, as the number of hardware architectures grew, so did the size of the code and eventually Andrew Tanenbaum began rejecting improvements to the code because they added complexity and length and were unsuitable for his classes. One area that he refused to implement was the 32-bit version of the Intel 386 architecture.

Then, a student completing a course based on Tanenbaum's book wrote a standalone 386 kernel from scratch that used the Minix file system and utilities. He announced it on the comp.os.minix newsgroup in 1991 [1]. Some of the reactions were along the lines of "Go away, kid. We're trying to do serious work here, getting these blasted patches to install," but other people reacted much better, in fact pitched in and started improving it. The kid was named Linus, and one of the contributors to the project jokingly named the folder where the patches were located "Linux."[2]

The name

Originally, Torvalds had intended to call the system Freax, for Free, Freaks, and Unix. The original source code up to version 0.11 made reference to this, such as a comment in the Makefile, "Makefile for the freax kernel". However, the kernel's FTP directory at nic.funet.fi was named Linux, in honor of its creator, of course, with an x to denote that it is Unix-like. This name caught on, and has been the official alias ever since. Linux is pronounced like 'Minix' - that is, "'li' is pronounced with a short [ee] sound: compare prInt, mInImal etc.'nux' is also short, non-diphtong, like in pUt."[3]

GNU/Linux controversy

For more information, see: Linux naming controversy.

Preceding the first uploads of the Linux kernel by over 8 years, in 1983 the Free Software Foundation (FSF) led by Dr. Richard Stallman began work on a similar project called GNU. The GNU system was a multi-person project which aimed to provide a suite of software together with the operating system kernel. The GNU group began not with the kernel, but rather by developing various tools such as a compiler (GNU C Compiler) and a text editor (Emacs). The GNU group never did complete their system with an operating system kernel. As a result, free software enthusiasts started to use Linux's kernel alongside GNU's suite of tools. Such combinations came to be called Linux Distributions. The FSF refers to a Linux Distribution as GNU/Linux. This convention has been very controversial, however. Torvalds does not support this terminology, saying that "calling Linux in general just 'GNU/Linux' I think is ridiculous."[4]

Interface

The majority of Linux distributions allow the use of both a GUI (Graphical User Interface) and a CLI (Command Line Interface). In the last few years, many distributions have focused on improving the graphical interface to increase the accessibility of the interface to new users. Ubuntu, widely believed to be the most used Linux distribution, had a complete visual refresh for the "Hardy Heron" 8.04 release based on the GNOME desktop environment.

Desktop environments

There are many desktop environments available for Linux. This means that there used to be little consistency between distributions. However, in a effort to prevent this, freedesktop.org have introduced the "Tango Theme Guidelines" - a set of guidelines that icon creators are encouraged to adhere to. This includes a color palette and a set of naming conventions.

GNOME

GNOME (GNU Network Object Model Environment) is a desktop environment created by the GNU Project focused on easy of use. It is made of entirely open source software, and the most recent stable release is 2.20, which was released in September 2007. GNOME is the default desktop environment for many distributions, most notably Debian, Fedora Core, openSUSE and Ubuntu.

KDE

KDE (K Desktop environment) is another desktop environment, but is focused on allowing the user to configure as much as possible. The main distributions that use KDE are Kubuntu and MEPIS. Currently, the KDE developers are testing a major new release: KDE4, which is planned for release on 11 January 2007. It is being upgraded to the Qt4 toolkit, and increases in speed over KDE3 are planned. A new theme, known as the "Oxygen icon set", will be included.

Xfce

Xfce is a desktop environment designed to give a compromise between eye candy and speed. The latest release is 4.4.1. Xfce is not as popular as GNOME or KDE, but some distributions use Xfce as the default desktop environment, including Dreamlinux and Zenwalk.

Fluxbox

Fluxbox is a lightweight desktop environment, aimed at low-end computers. It is designed for speed, but allows eye-candy including transparency. The project recently passed its 1.0 release milestone.

Package Management

There are several different package management systems for Linux. Since most applications are open source, packages can be installed by compilation from source code. Some distributions aimed at experts use this format, including Gentoo and Sabayon Linux. However, most Linux distributions have binary packages available for download. Debian and Debian-based distributions (including Ubuntu) use the .deb package format, along with the "APT" package manager. This allows packages to be upgraded, removed and installed, dealing with all of the dependencies. Other distributions use the .rpm format. However, this package format was initially unpopular due to its poor handling of dependencies (known as "dependency hell"). OpenSUSE, Mandriva and Fedora Core all use the .rpm package format.

References

  1. Free minix-like kernel sources for 386-AT - Google Groups
  2. Torvalds, Linus and David Diamond, Just for Fun: The Story of an Accidental Revolutionary, 2001, ISBN 0-06-662072-4
  3. Linus Torvalds (Accessed April 23rd, 2007). How to pronounce "Linux"?.
  4. The "GNU/Linux" and "Linux" Controversy (Retrieved April 6th, 2007).