Jump to content

Linux: Difference between revisions

From Wikipedia, the free encyclopedia
[pending revision][pending revision]
Content deleted Content added
rv again because of blind refutal
some minor link, ref and wording edits. rm excess LAMP markup per MOS. rm dupe section on atypical uses
Line 11: Line 11:
| license = [[GNU General Public License]]
| license = [[GNU General Public License]]
| working_state = Current
| working_state = Current
|
}}
}}


'''Linux''' refers to any [[Unix-like]] computer [[operating system]] which uses the [[Linux kernel]]. It is one of the most prominent examples of [[open source]] development and [[free software]] as well as [[user generated content| user generated software]]; its underlying [[source code]] is available for anyone to use, modify, and redistribute freely.
'''Linux''', or '''GNU/Linux''', refers to any [[Unix-like]] computer [[operating system]] which uses the [[Linux kernel]]. It is one of the most prominent examples of [[open source]] development and [[free software]] as well as [[user generated content| user generated software]]; its underlying [[source code]] is available for anyone to use, modify, and redistribute freely.


Initially developed and used primarily by individual enthusiasts on [[personal computer]]s, Linux has since gained the support of corporations such as [[IBM]], [[Sun Microsystems]], [[Hewlett-Packard]], and [[Novell, Inc.]], and has risen to prominence as an operating system for [[server (computing)|server]]s; eight of the ten most reliable internet hosting companies now run Linux on their [[web server]]s.<ref>{{ cite web | title = Rackspace Most Reliable Hoster in September | url = http://news.netcraft.com/archives/2006/10/07/rackspace_most_reliable_hoster_in_september.html | publisher = Netcraft | date = [[October 7]] [[2006]] | accessdate = 2006-11-01 }}</ref>
'''GNU/Linux''' refers to any Unix-like computer operating system which uses the Linux kernel ''and'' [[GNU]] [[system software]]. Since cases of GNU-less Linux-powered systems are scarce, most of the times GNU/Linux and Linux are used as synonyms.

Initially developed and used primarily by individual enthusiasts on [[personal computer]]s, Linux has since gained the support of corporations such as [[IBM]], [[Sun Microsystems]], [[Hewlett-Packard]], and [[Novell, Inc.]], and has risen to prominence as an operating system for [[server (computing)|server]]s; eight of the ten most reliable internet hosting companies now run Linux on their [[web server]]s.<ref>{{ cite web | url = http://news.netcraft.com/archives/2006/10/07/rackspace_most_reliable_hoster_in_september.html | title = Rackspace Most Reliable Hoster in September | publisher = Netcraft|date = [[October 7]] [[2006]] |accessdate = 2006-11-01 }}</ref>


[[Image:Linux-SuSE-KDE.png|thumb|300px|right|A [[KDE]] desktop on the [[SUSE Linux]] distribution.]]
[[Image:Linux-SuSE-KDE.png|thumb|300px|right|A [[KDE]] desktop on the [[SUSE Linux]] distribution.]]
Line 26: Line 23:
== History ==
== History ==
{{main|History of Linux}}
{{main|History of Linux}}
=== Early ===
[[Image:Richard Matthew Stallman.jpeg|thumb|250px|right|[[Richard Stallman]], founder of the GNU project for a free operating system.]]
[[Image:Richard Matthew Stallman.jpeg|thumb|250px|right|[[Richard Stallman]], founder of the GNU project for a free operating system.]]

In 1983, [[Richard Stallman]] founded the [[GNU Project]], with the goal of developing a complete Unix-like operating system composed entirely of free software. By the beginning of the 1990s, GNU had produced or collected most of the necessary components of this system — [[Library (computer science)|libraries]], [[compiler]]s, [[text editor]]s, a [[Unix shell]] — except for the core component, the [[Kernel (computer science)|kernel]]. The GNU project began developing a kernel, the [[GNU Hurd]], in 1990, based on the [[Mach microkernel]], but the development of this Mach-based design proved difficult and proceeded slowly.
In 1983, [[Richard Stallman]] founded the [[GNU Project]], with the goal of developing a complete Unix-like operating system composed entirely of free software. By the beginning of the 1990s, GNU had produced or collected most of the necessary components of this system — [[Library (computer science)|libraries]], [[compiler]]s, [[text editor]]s, a [[Unix shell]] — except for the core component, the [[Kernel (computer science)|kernel]]. The GNU project began developing a kernel, the [[GNU Hurd]], in 1990, based on the [[Mach microkernel]], but the development of this Mach-based design proved difficult and proceeded slowly.


[[Image:Linus Torvalds.jpeg|thumb|right|160px|[[Linus Torvalds]] - creator of the Linux kernel.]]
[[Image:Linus Torvalds.jpeg|thumb|right|160px|[[Linus Torvalds]] - creator of the Linux kernel.]]
Meanwhile, in 1991, another kernel was begun as a hobby by Finnish university student [[Linus Torvalds]] while attending the [[University of Helsinki]].<ref>Torvalds, Linux. "What would you like to see most in minix?". [[Usenet]]: comp.os.minix. Retrieved 2006-09-09 from [http://groups.google.com/group/comp.os.minix/msg/b813d52cbc5a044b]</ref> Torvalds originally used [[Minix]] on his own computer, a simplified Unix-like system written by [[Andrew S. Tanenbaum|Andrew Tanenbaum]] for teaching operating system design. However, Tanenbaum did not permit others to extend his operating system, leading Torvalds to create a replacement for Minix.


Meanwhile, in 1991, another kernel was begun as a hobby by Finnish university student [[Linus Torvalds]] while attending the [[University of Helsinki]].<ref>{{ cite newsgroup | title = What would you like to see most in minix? | newsgroup = comp.os.minix | id = 1991Aug25.205708.9541@klaava.Helsinki.FI | url = http://groups.google.com/group/comp.os.minix/msg/b813d52cbc5a044b | last = Torvalds | first = Linus | accessdate = 2006-09-09 }}</ref> Torvalds originally used [[Minix]] on his own computer, a simplified Unix-like system written by [[Andrew S. Tanenbaum]] for teaching operating system design. However, Tanenbaum did not permit others to extend his operating system, leading Torvalds to create a replacement for Minix.
Originally, Torvalds called his kernel "Freax" for "free" and "freak" and with the often-used X in the names of Unix-like systems. The name "Linux" was coined by [[Ari Lemmke]], who administered an [[FTP]] server belonging to the [[FUNET|Finnish University Network]]; he invented the name ''Linux'' for the directory from which Torvalds' project was first available for download.<ref name="naming">Torvalds, Linus. "How to pronounce "Linux"?". [[Usenet]]: comp.os.linux. Retrieved 2006-08-08 from [http://groups.google.com/group/comp.os.linux/msg/53a76cbbbcb6e1c8]</ref>

Originally, Torvalds called his kernel "Freax" for "free" and "freak" and with the often-used X in the names of Unix-like systems. The name "Linux" was coined by [[Ari Lemmke]], who administered an [[FTP]] server belonging to the [[FUNET|Finnish University Network]]; he invented the name ''Linux'' for the directory from which Torvalds' project was first available for download.<ref name="naming">{{ cite newsgroup | last = Torvalds | first = Linus | title = How to pronounce "Linux"? | newsgroup = comp.os.linux | id = 1992Apr23.123216.22024@klaava.Helsinki.FI | url = http://groups.google.com/group/comp.os.linux/msg/53a76cbbbcb6e1c8 | accessdate = 2006-08-08 }}</ref>


[[Image:Unix.svg|thumb|300px|A graphic history of [[Unix]] systems. Linux is a Unix-type system but its source code does not descend from the original Unix.]]
[[Image:Unix.svg|thumb|300px|A graphic history of [[Unix]] systems. Linux is a Unix-type system but its source code does not descend from the original Unix.]]

At first a computer running Minix was necessary in order to configure and install Linux. Initial versions of Linux also required another operating system to be present in order to boot from a hard disk, but soon there were independent boot loaders such as [[LInux LOader|LILO]]. The Linux system quickly surpassed Minix in functionality; Torvalds and other early Linux kernel developers adapted their work for the GNU components and user-space programs to create a complete, fully functional, and free (as in freedom) operating system.
At first a computer running Minix was necessary in order to configure and install Linux. Initial versions of Linux also required another operating system to be present in order to boot from a hard disk, but soon there were independent boot loaders such as [[LInux LOader|LILO]]. The Linux system quickly surpassed Minix in functionality; Torvalds and other early Linux kernel developers adapted their work for the GNU components and user-space programs to create a complete, fully functional, and free (as in freedom) operating system.


Line 41: Line 40:


=== Linux and the GNU Project ===
=== Linux and the GNU Project ===

{{main|GNU/Linux naming controversy}}
{{main|GNU/Linux naming controversy}}


The goal of the GNU project is to produce a Unix-compatible operating system consisting entirely of free software, and all general-purpose Linux distributions rely on numerous GNU components. The [[Free Software Foundation]] views these Linux distributions as "variants" of the GNU system, and asks that such operating systems be referred to as ''GNU/Linux'' or ''a Linux-based GNU system''. While some distributions make a point of using the combined form - notably ''[[Debian GNU/Linux]]'' - its use outside of the enthusiast community is limited, and Linus Torvalds has said that he finds calling Linux in general ''GNU/Linux'' "just ridiculous".<ref>{{cite video|people=Moore, J.T.S. (Produced, Written, and Directed)|title=[[Revolution OS]]|medium=DVD|date=2001}}</ref> The distinction between the Linux kernel and distributions based on it plus the GNU system is a source of confusion to many newcomers, and the naming remains controversial.
The goal of the GNU project is to produce a Unix-compatible operating system consisting entirely of free software, and all general-purpose Linux distributions rely on numerous GNU components. The [[Free Software Foundation]] views these Linux distributions as "variants" of the GNU system, and asks that such operating systems be referred to as ''GNU/Linux'' or ''a Linux-based GNU system''. While some distributions make a point of using the combined form - notably ''[[Debian GNU/Linux]]'' - its use outside of the enthusiast community is limited, and Linus Torvalds has said that he finds calling Linux in general ''GNU/Linux'' "just ridiculous".<ref>{{ cite video | people = Moore, J.T.S. (Produced, Written, and Directed) | title = [[Revolution OS]] | medium = DVD | date = 2001 }}</ref> The distinction between the Linux kernel and distributions based on it plus the GNU system is a source of confusion to many newcomers, and the naming remains controversial.


=== SCO litigation ===
=== SCO litigation ===
{{main|SCO-Linux controversies}}
{{main|SCO-Linux controversies}}


In March 2003, the [[SCO Group]] filed a [[SCO v. IBM|lawsuit]] against IBM, claiming that IBM had contributed portions of SCO's copyrighted code to the Linux kernel in violation of IBM's license to use Unix. Additionally, SCO sent letters to a number of companies warning that their use of Linux without a license from SCO may be actionable, and claimed in the press that they would be suing individual Linux users. This controversy has involved lawsuits by SCO against [[DaimlerChrysler]] (dismissed in 2004), and [[AutoZone]], and by [[SUSE]], [[Red Hat]] and others against SCO. Furthermore, whether SCO even owns the relevant Unix copyrights is currently [[SCO v. Novell|disputed by Novell]].
In March 2003, the [[SCO Group]] filed a [[SCO v. IBM|lawsuit]] against IBM, claiming that IBM had contributed portions of SCO's copyrighted code to the Linux kernel in violation of IBM's license to use Unix. Additionally, SCO sent letters to a number of companies warning that their use of Linux without a license from SCO may be actionable, and claimed in the press that they would be suing individual Linux users. This controversy has involved lawsuits by SCO against [[DaimlerChrysler]] (dismissed in 2004), and [[AutoZone]], and by [[Red Hat]] and others against SCO. Furthermore, whether SCO even owns the relevant Unix copyrights is currently [[SCO v. Novell|disputed by Novell]].


As per the [[Utah]] [[District Court]] ruling on July 3, 2006; 182 claims out of 294 claims made by [[SCO]] against [[IBM]] have been dismissed.<ref>{{ cite web | url= http://www.idm.net.au/story.asp?id=7297 | title = SCO Losing Linux Battle With IBM }}</ref>
As per the [[Utah]] [[District Court]] ruling on July 3, 2006; 182 claims out of 294 claims made by [[SCO]] against [[IBM]] have been dismissed.<ref>{{ cite web | url = http://www.idm.net.au/story.asp?id=7297 | title = SCO Losing Linux Battle With IBM }}</ref>


SCO's claims have varied widely.
SCO's claims have varied widely.


=== Copyright, licensing, and the Linux trademark ===


The Linux kernel and most GNU software are licensed under the [[GNU General Public License]] version 2. The GPL requires that all distributed source code modifications and derived works also be licensed under the GPL, and is sometimes referred to as a "share and share-alike" or "[[copyleft]]" license. In 1997, Linus Torvalds stated, "Making Linux GPL'd was definitely the best thing I ever did."<ref>{{ cite web | url = http://kde.sw.com.sg/food/linus.html | title = Linus Torvalds interview | accessdate = 2006-05-08 }}</ref> Other software may use other licenses; many libraries use the [[GNU Lesser General Public License]] (LGPL), a more permissive variant of the GPL, and the [[X Window System]] uses the [[MIT License]].
== Copyright, licensing, and the Linux trademark ==
The Linux kernel and most GNU software are licensed under the [[GNU General Public License]] version 2. The GPL requires that all distributed source code modifications and derived works also be licensed under the GPL, and is sometimes referred to as a "share and share-alike" or "[[copyleft]]" license. In 1997, Linus Torvalds stated, "Making Linux GPL'd was definitely the best thing I ever did."<ref>{{cite web|url=http://kde.sw.com.sg/food/linus.html|title=Linus Torvalds interview|accessdate=2006-05-08}}</ref> Other software may use other licenses; many libraries use the [[GNU Lesser General Public License]] (LGPL), a more permissive variant of the GPL, and the [[X Window System]] uses the [[MIT License]].


After more than ten years, the Free Software Foundation announced that they would be upgrading the GPL to version 3, citing increasing concerns with Intellectual Property laws, especially Software Patents. Linus Torvalds has publicly stated he would not move the Linux kernel to GPL v.3. Torvalds opposes in particular certain Digital Rights Management exclusions in the GPL v3.
After more than ten years, the Free Software Foundation announced that they would be upgrading the GPL to version 3, citing increasing concerns with Intellectual Property laws, especially Software Patents. Linus Torvalds has publicly stated he would not move the Linux kernel to GPL v.3. Torvalds opposes in particular certain Digital Rights Management exclusions in the GPL v3.


In the United States, the name ''Linux'' is a [[trademark]]<ref>{{cite web|url=http://assignments.uspto.gov/assignments/q?db=tm&qt=rno&reel=&frame=&sno=&rno=1916230|title=U.S. Reg No: 1916230|accessdate=2006-04-01}}</ref> registered to Linus Torvalds. Initially, nobody registered it, but on [[August 15]], [[1994]], [[William R. Della Croce, Jr.]] filed for the trademark ''Linux'', and then demanded royalties from Linux distributors. In 1996, Torvalds and some affected organizations sued to have the trademark assigned to Torvalds, and in 1997 the case was settled.<ref>{{cite web|url=http://www.linuxjournal.com/article/9065|title=Linux Journal, 2006-06-31, Linux Timeline}}</ref> The licensing of the trademark is now handled by the [[Linux Mark Institute]]. Torvalds has stated that he only trademarked the name to prevent someone else from using it, but was bound in 2005 by [[United States trademark law]] to take active measures to enforce the trademark. As a result, the LMI sent out a number of letters to distribution vendors requesting that a fee be paid for the use of the name, and a number of companies have complied.<ref>{{cite web|url=http://www.infoworld.com/article/05/09/05/36OPopenent_1.html|title=Linus gets tough on Linux trademark|accessdte=20060-09-04}}</ref>
In the United States, the name ''Linux'' is a [[trademark]] registered to Linus Torvalds.<ref>{{ cite web | url = http://assignments.uspto.gov/assignments/q?db=tm&rno=1916230 | title = U.S. Reg No: 1916230 | publisher = United States Patent and Trademark Office | accessdate = 2006-04-01 }}</ref> Initially, nobody registered it, but on [[August 15]] [[1994]], [[William R. Della Croce, Jr.]] filed for the trademark ''Linux'', and then demanded royalties from Linux distributors. In 1996, Torvalds and some affected organizations sued to have the trademark assigned to Torvalds, and in 1997 the case was settled.<ref>{{cite web | url = http://www.linuxjournal.com/article/9065 | title = Linux Timeline | publisher = Linux Journal | date = [[31 June]] [[2006]] }}</ref> The licensing of the trademark is now handled by the [[Linux Mark Institute]]. Torvalds has stated that he only trademarked the name to prevent someone else from using it, but was bound in 2005 by [[United States trademark law]] to take active measures to enforce the trademark. As a result, the LMI sent out a number of letters to distribution vendors requesting that a fee be paid for the use of the name, and a number of companies have complied.<ref>{{ cite web | url = http://www.infoworld.com/article/05/09/05/36OPopenent_1.html | title = Linus gets tough on Linux trademark | accessdate = 2006-09-04 | date = 2005-09-05 }}</ref>


==Pronunciation==
=== Pronunciation ===
{{Pronunciation of Linux}}
{{Pronunciation of Linux}}


== Development ==


A 2001 study of [[Red Hat Linux]] 7.1 found that this distribution contained 30 million [[source lines of code]]. Using the [[COCOMO|Constructive Cost Model]], the study estimated that this distribution required about eight thousand man-years of development time. According to the study, if all this software had been developed by conventional [[proprietary software|proprietary]] means, it would have cost about 1.08 billion dollars (year 2000 U.S. dollars) to develop in the United States.<ref name = "estimating_size">{{ cite web | first = David A | last = Wheeler | date = 2002-07-29 | url = http://www.dwheeler.com/sloc/redhat71-v1/redhat71sloc.html | title = More Than a Gigabuck: Estimating GNU/Linux's Size | accessdate = 2006-05-11 }}</ref>
== Distributions ==
{{details|Linux distribution}}
Linux is predominantly used as part of a Linux distribution (commonly called a "distro"). These are put together by individuals, loose-knit teams, commercial and volunteer organizations. They commonly include additional system and [[application software|application]] software, an installer system to ease initial system setup, and integrated management of software installation and upgrading. Distributions are created for many different purposes, including [[computer architecture]] support, localization to a specific region or language, [[real-time]] applications, and [[Embedded Linux|embedded systems]], and many deliberately include only [[free software]]. Currently, over three hundred distributions are actively developed, with about a dozen distributions being most popular for general-purpose use.<ref>{{cite web|url=http://lwn.net/Distributions/|title=The LWN.net Linux Distribution List|accessdate=2006-05-19}}</ref>


The majority of the code (71%) was written in the [[C programming language]], but many other languages were used, including [[C Plus Plus|C++]], [[Lisp programming language|Lisp]], [[assembly language]], [[Perl]], [[Fortran]], [[Python (programming language)|Python]] and various [[shell script]]ing languages. Slightly over half of all lines of code were licensed under the GPL. The Linux kernel was 2.4 million lines of code, or 8% of the total. <ref name = "estimating_size">
A typical general-purpose distribution includes the [[Linux kernel]], some GNU [[library (software)|libraries]] and tools, command-line [[Unix shell|shell]]s, the graphical [[X Window System]] and an accompanying [[desktop environment]] such as [[KDE]] or [[GNOME]], together with thousands of application software packages, from [[office suite]]s to [[compiler]]s, [[text editor]]s, and scientific tools.


In a later study, the same analysis was performed for Debian GNU/Linux version 2.2.<ref>{{ cite web | first = Jesús M | last = González-Barahona | coauthors = et al | date = [[3 January]] [[2002]] | url = http://people.debian.org/~jgb/debian-counting/counting-potatoes/ | title = Counting potatoes: The size of Debian 2.2 | accessdate = 2006-05-11 }}</ref> This distribution contained over fifty-five million source lines of code, and the study estimated that it would have cost 1.9 billion dollars (year 2000 U.S. dollars) to develop by conventional means.
The most common method of installing Linux on a personal computer is by booting from a [[CD-ROM]] that contains the installation program and installable software. Such a CD can be burned from a downloaded [[ISO image]], purchased alone for a low price, obtained as part of a box set, or in a few cases shipped for free by request. A box set may also include manuals and additional proprietary software. [[Mini CD]] images allow Linux to be installed from a disk with a [[small form factor]]. Linux also offers a more convenient method of installation by allowing users to download CD image files [[ISO]] and then the user can use a CD/DVD burning software to create installation CD's/DVD's themselves.


=== Programming on Linux ===
As with [[Server (computing)|servers]], [[personal computer]]s that come with Linux already installed are available from vendors including [[Hewlett-Packard]] and [[Dell]], although generally only for their business desktop line.


Most Linux distributions support a wide array of [[programming language]]s. Core system software such as libraries and basic utilities are usually written in C. Enterprise software is often written in C++, Java, Perl, or Python.
Alternatives to traditional desktop installation include [[thin client]] installation and running directly from a [[Live CD]]. In a [[thin client]] installation, the operating system is loaded and run from a centralised machine over a network connection. In a [[Live CD]] setup, the computer boots the entire operating system from CD without first installing it on the computer's hard disk.


The most common collection of utilities for building both Linux applications and operating system programs is found within the [[GNU toolchain]], which includes the [[GNU Compiler Collection]] (GCC). Amongst others, GCC provides compilers for [[C programming language|C]], [[C++]], [[Java programming language|Java]], and [[Fortran]]. The Linux kernel itself is written to be compiled with GCC.
On embedded devices, Linux is typically held in the device's [[firmware]] and may or may not be consumer-accessible.


Most distributions also include support for [[Perl]], [[Python programming language|Python]] and other dynamic languages. Less common, but still well-supported, are [[C Sharp|C#]] via the [[Mono (software)|Mono]] project, [[Scheme programming language|Scheme]], and [[Ruby programming language|Ruby]]. A very large number of other programming languages have Linux implementations available.{{cn}}
== Usage ==
=== Desktop usage ===
[[Image:Gnome-2.14.png|thumb|300px|right|A [[GNOME]] desktop running from the GNOME LiveCD.]]
{{See also|Comparison of Windows and Linux}}


There are a number of [[Integrated development environment]]s available including [[MonoDevelop]], [[KDevelop]], [[Anjuta]], [[NetBeans]], and [[Eclipse (computing)|Eclipse]] while the traditional editors [[Emacs]] and [[Vim (text editor)|Vim]] remain popular.<ref>{{ cite web | first = Joe | last = Brockmeier | title = A survey of Linux Web development tools | url = http://programming.linux.com/programming/05/10/03/1828224.shtml?tid=63&tid=47 | accessdate = 2006-12-16 }}</ref>
The high level of access granted to Linux's internals has led to Linux users traditionally tending to be more technologically oriented than users of Microsoft Windows and Mac OS. Linux and other free software projects have been frequently criticized for not going far enough to ensure ease of use. <ref>{{cite news| url = http://www.pcworld.com/article/id,111871-page,1/article.html | title = PC World - Linux Earns User-Friendly Rating | first = John | last = Blau | publisher = PC World| date = [[2003-08-04]] | accessdate = 2005-12-17]}}</ref>
This stereotype has been dispelled in recent years. Linux is now typically being used with a user interface that is very similar to those running on other operating systems. However, users may sometimes have to switch to alternative application software, and there are often fewer "known" software choices for certain types of software (as in the case of [[computer game]]s) but there exist replacements for all general-purpose software, and general applications like spreadsheets, word processors, and browsers are available for Linux in profusion. Additionally, a growing number of proprietary software vendors are supporting Linux,<ref>{{cite web | url = http://www.iist.unu.edu/globaldesktop/ | title = The Global Desktop Project, Building Technology and Communities|accessdate = 2006-05-07 }}</ref> . In the meantime, developers have resorted to using compatibility layers such as [[Wine (software)|Wine]] or [[NdisWrapper]] allowing some Microsoft Windows application software and drivers to be used on Linux without requiring the vendor to adapt them. This allows users to more easily migrate from Windows to Linux since they can still run many of their Windows applications with little additional effort.


The two main [[widget toolkit]]s used for contemporary [[GUI]] programming are [[Qt (toolkit)|Qt]] and the Gimp Toolkit, known as [[GTK+]]. Both support a wide variety of languages.
Linux's roots in the Unix operating system mean that in addition to graphical configuration tools and control panels available for many system settings and services, plain-text configuration files are still commonly used to configure the OS and can readily be made accessible (or not) to users, at the administrator's will.


As well as these free and open source options, there are proprietary compilers and tools available from a range of companies such as the [[Intel C Compiler]], PathScale,<ref>http://www.pathscale.com/ekopath.html</ref> Micro Focus COBOL,<ref>http://www.microfocus.com</ref> [[Franz Inc]],<ref>http://www.franz.com/</ref> and the Portland Group.<ref>http://www.pgroup.com/</ref>
The Berlin-based organization [[Relevantive]] concluded in 2003 that the usability of Linux for a set of desktop-related tasks was "nearly equal to [[Windows XP]]."<ref>{{cite web | url = http://www.relevantive.de/Linux-Usabilitystudy_e.html | title = Relevantive Linux usability study | accessdate = 2006-04-03 }}</ref> Since then, there have been numerous independent studies and articles which indicate that a modern Linux desktop using either GNOME or KDE is on par with Microsoft Windows, even in a business setting.<ref>{{ cite web | first = Emmett | last = Dulaney | date = June 2005 | url = http://redmondmag.com/features/article.asp?editorialsid=485 | title = Desktop Linux: Ready for Prime Time? | accessdate=2006-06-19 }}</ref>


=== Enterprise usage ===
== Distribution ==
{{main|Linux (kernel)#Portability}}


The [[Linux kernel]] was originally designed only for [[Intel 80386]] [[microprocessor]]s, but now supports a wide variety of [[computer architecture]]s. Linux is one of the most widely [[porting|ported]] operating systems, running on a diverse range of systems from the hand-held [[ARM architecture|ARM]]-based [[iPAQ]] to the [[mainframe computer|mainframe]] [[IBM]] [[System z9]]. Specialized distributions exist for less mainstream architectures. The [[ELKS]] kernel [[fork (software development)|fork]] can run on [[Intel 8086]] or [[Intel 80286]] [[16-bit]] microprocessors, while the [[µClinux]] kernel may run on systems without a [[memory management unit]]. The kernel also runs on architectures that were not intended to use other than their original operating systems: this is the case of computers made by [[Apple Computer]] such as the [[iMac]] and [[PowerBook]], [[Palm]] PDAs, [[Nintendo GameCube]] and [[Xbox]].
Linux has historically been used mainly as a [[Server (computing)|server]] operating system.
<!--Add more about traditional (non internet) server usage.--->
Linux is the cornerstone of the "[[LAMP (software bundle)|LAMP]]" server-software combination ''('''L'''inux, '''A'''pache, '''M'''ySQL, '''P'''erl/'''P'''HP/'''P'''ython)'' which has achieved popularity among developers, and which is one of the more common platforms for website hosting.


Linux is predominantly used as part of a Linux distribution (commonly called a "distro"). These are put together by individuals, loose-knit teams, commercial and volunteer organizations. They commonly include additional system and [[application software|application]] software, an installer system to ease initial system setup, and integrated management of software installation and upgrading. Distributions are created for many different purposes, including [[computer architecture]] support, localization to a specific region or language, [[real-time]] applications, and [[Embedded Linux|embedded systems]], and many deliberately include only [[free software]]. Currently, over three hundred distributions are actively developed, with about a dozen distributions being most popular for general-purpose use.<ref>{{ cite web | url = http://lwn.net/Distributions/ | title = The LWN.net Linux Distribution List | accessdate = 2006-05-19 }}</ref>
Due to its low cost and its high configurability, Linux is often used in [[Embedded Linux|embedded systems]] such as television [[set-top box]]es, [[mobile phone]]s, and [[handheld device]]s. Linux has become a major competitor to the proprietary [[Symbian OS]] found in many mobile phones, and it is an alternative to the dominant [[Windows CE]] and [[Palm OS]] operating systems on [[handheld device]]s. The popular [[TiVo]] digital video recorder uses a customized version of Linux.<ref>{{cite web | url = http://www.tivo.com/linux/linux.asp | title = TiVo - GNU/Linux Source Code | accessdate = 2006-12-12 }}</ref> Several network [[firewall]] and [[router]] standalone products, including several from [[Linksys]], use Linux internally, using its advanced firewalling and routing capabilities.


A typical general-purpose distribution includes the [[Linux kernel]], some GNU [[library (software)|libraries]] and tools, command-line [[Unix shell|shell]]s, the graphical [[X Window System]] and an accompanying [[desktop environment]] such as [[KDE]] or [[GNOME]], together with thousands of application software packages, from [[office suite]]s to [[compiler]]s, [[text editor]]s, and scientific tools.
Linux is commonly used as an operating system for [[supercomputer]]s. Of the top 500 systems, 376 (75.2%) ran Linux.<ref>http://www.top500.org/stats/28/osfam/</ref>. The remaining systems use [[Unix]] (17.2%), Mixed (6.4%), [[BSD]]-like (0.6%), [[Mac OS]] (0.6%).


{{details|Linux distribution}}
=== Portability ===
{{main|Linux (kernel)#Portability}}
The Linux kernel was originally designed only for [[Intel 80386]] [[microprocessor]]s, but now supports a wide variety of [[computer architecture]]s. Linux is one of the most widely [[porting|ported]] operating systems, running on a diverse range of systems from the hand-held [[ARM architecture|ARM]]-based [[iPAQ]] to the [[mainframe computer|mainframe]] [[IBM]] [[System z9]]. Specialized distributions exist for less mainstream architectures. The [[ELKS]] kernel [[fork (software development)|fork]] can run on [[Intel 8086]] or [[Intel 80286|286]] [[16-bit]] microprocessors, while the [[µClinux]] kernel may run on systems without a [[memory management unit]]. The kernel also runs on architectures that were not intended to use other than their original operating systems: this is the case of computers made by [[Apple Computer]] such as the [[iMac]] and [[PowerBook]], [[Palm]] PDAs, [[Nintendo GameCube]] and [[Xbox]]. New architectures, like [[Playstation 3]]'s [[Cell microprocessor]] also runs linux, like many atypical devices such as iPods,
[[set-top box]]es, [[network switch]]es, [[Digital video recorder|DVR]]'s and [[cell phone]]s.


The most common method of installing Linux on a personal computer is by booting from a [[CD-ROM]] that contains the installation program and installable software. Such a CD can be burned from a downloaded [[ISO image]], purchased alone for a low price, obtained as part of a box set, or in a few cases shipped for free by request. A box set may also include manuals and additional proprietary software. [[Mini CD]] images allow Linux to be installed from a disk with a [[small form factor]].
=== Programming on Linux ===


As with [[Server (computing)|servers]], [[personal computer]]s that come with Linux already installed are available from vendors including [[Hewlett-Packard]] and [[Dell]], although generally only for their business desktop line.
Most Linux distributions support a wide array of [[programming language]]s. Core system software such as libraries and basic utilities are usually written in [[C programming language|C]]. Enterprise software is often written in Java, Perl, or Python{{fact}}.


Alternatives to traditional desktop installation include [[thin client]] installation and running directly from a [[Live CD]]. In a [[thin client]] installation, the operating system is loaded and run from a centralised machine over a network connection. In a Live CD setup, the computer boots the entire operating system from CD without first installing it on the computer's hard disk.
The most common collection of utilities for building both Linux applications and operating system programs is found within the [[GNU toolchain]], which includes the [[GNU Compiler Collection]] (GCC). Amongst others, GCC provides compilers for [[C programming language|C]], [[C++]], [[Java programming language|Java]], and [[Fortran]]. The Linux kernel itself is written to be compiled with GCC. Most distributions also automatically include support for [[Perl]], [[Python programming language|Python]] and other dynamic languages that are used for system management. Less common, but still well-supported, are [[C Sharp|C#]] via the [[Mono (software)|Mono]] project, [[Scheme programming language|Scheme]], and [[Ruby programming language|Ruby]]. Hundreds of other programming languages are available, like [[BASIC]], [[Objective-C]], [[OCaml]], [[Eiffel]], [[Common Lisp]], [[D (programming language)|D]], [[SQL]], [[Haskell (programming language)|Haskell]], [[VHDL]], [[Prolog]], [[REXX]], [[MATLAB]], [[Tcl]], [[Modula-2]], [[R (programming language)|R]] to name a few.


On embedded devices, Linux is typically held in the device's [[firmware]] and may or may not be consumer-accessible.
There are a number of [[Integrated development environment]]s available including [[MonoDevelop]], [[KDevelop]], [[Anjuta]], [[NetBeans]], and [[Eclipse (computing)|Eclipse]] while the traditional editors [[Emacs]] and [[Vim (text editor)|Vim]] remain popular. <ref>Brockmeier, Joe. ''A survey of Linux Web development tools'' http://programming.linux.com/programming/05/10/03/1828224.shtml?tid=63&tid=47 Retrieved 16/12/2006</ref>


=== Desktop usage ===
The two main [[widget toolkit]]s used for contemporary [[GUI]] programming are [[Qt (toolkit)|Qt]] and the Gimp Toolkit, known as [[GTK+]]. Both support a wide variety of languages.
[[Image:Gnome-2.14.png|thumb|300px|right|A [[GNOME]] desktop running from the GNOME LiveCD.]]


The high level of access granted to Linux's internals has led to Linux users traditionally tending to be more technologically oriented than users of Microsoft Windows and Mac OS. Linux and other free software projects have been frequently criticized for not going far enough to ensure ease of use. <ref>{{cite news| url = http://www.pcworld.com/article/id,111871-page,1/article.html | title = PC World - Linux Earns User-Friendly Rating | first = John | last = Blau | publisher = PC World| date = [[2003-08-04]] | accessdate = 2005-12-17]}}</ref>
As well as these free and open source options, there are proprietary compilers and tools available from a range of companies such as the [[Intel C Compiler]], PathScale,<ref>http://www.pathscale.com/ekopath.html</ref> Micro Focus COBOL,<ref>http://www.microfocus.com</ref> [[Franz Inc]],<ref>http://www.franz.com/</ref> and the Portland Group.<ref>http://www.pgroup.com/</ref>


Linux's roots in the Unix operating system mean that in addition to graphical configuration tools and control panels available for many system settings and services, plain-text configuration files are still commonly used to configure the OS and can readily be made accessible (or not) to users, at the administrator's will.
== Economics ==


This stereotype has been dispelled in recent years. Linux is now typically being used with a user interface that is very similar to those running on other operating systems. However, users may sometimes have to switch to alternative application software, and there are often fewer "known" software choices for certain types of software (as in the case of [[computer game]]s) but there exist replacements for all general-purpose software, and general applications like spreadsheets, word processors, and browsers are available for Linux in profusion. Additionally, a growing number of proprietary software vendors are supporting Linux,<ref>{{cite web | url = http://www.iist.unu.edu/globaldesktop/ | title = The Global Desktop Project, Building Technology and Communities|accessdate = 2006-05-07 }}</ref> . In the meantime, developers have resorted to using compatibility layers such as [[Wine (software)|Wine]] or [[NdisWrapper]] allowing some Microsoft Windows application software and drivers to be used on Linux without requiring the vendor to adapt them. This allows users to more easily migrate from Windows to Linux since they can still run many of their Windows applications with little additional effort.
=== Development costs ===
''More Than a Gigabuck: Estimating GNU/Linux's Size'', a 2001 study of [[Red Hat Linux]] 7.1, found that this distribution contained 30 million [[source lines of code]].<ref name = "estimating_size">{{cite web|first=David A|last=Wheeler|date=2002-07-29|url=http://www.dwheeler.com/sloc/redhat71-v1/redhat71sloc.html|title=More Than a Gigabuck: Estimating GNU/Linux's Size|accessdate=2006-05-11}}</ref> Using the [[COCOMO|Constructive Cost Model]], the study estimated that this distribution required about eight thousand man-years of development time. According to the study, if all this software had been developed by conventional [[proprietary software|proprietary]] means, it would have cost about 1.08 billion dollars (year 2000 U.S. dollars) to develop in the United States. <ref name = "estimating_size">


The Berlin-based organization [[Relevantive]] concluded in 2003 that the usability of Linux for a set of desktop-related tasks was "nearly equal to [[Windows XP]]."<ref>{{cite web | url = http://www.relevantive.de/Linux-Usabilitystudy_e.html | title = Relevantive Linux usability study | accessdate = 2006-04-03 }}</ref> Since then, there have been numerous independent studies and articles which indicate that a modern Linux desktop using either GNOME or KDE is on par with Microsoft Windows, even in a business setting.<ref>{{ cite web | first = Emmett | last = Dulaney | date = June 2005 | url = http://redmondmag.com/features/article.asp?editorialsid=485 | title = Desktop Linux: Ready for Prime Time? | accessdate=2006-06-19 }}</ref>
The majority of the code (71%) was written in the [[C programming language]], but many other languages were used, including [[C Plus Plus|C++]], [[Lisp programming language|Lisp]], [[assembly language]], [[Perl]], [[Fortran]], [[Python (programming language)|Python]] and various [[shell script]]ing languages. Slightly over half of all lines of code were licensed under the GPL. The Linux kernel was 2.4 million lines of code, or 8% of the total. <ref name = "estimating_size">


{{See also|Comparison of Windows and Linux}}
In a later study, ''Counting potatoes: The size of Debian 2.2'', the same analysis was performed for Debian GNU/Linux version 2.2.<ref>{{cite web|first=Jesús M|last=González-Barahona|coauthors=et al.|date=2002-01-03|url=http://people.debian.org/~jgb/debian-counting/counting-potatoes/|title=Counting potatoes: The size of Debian 2.2|accessdate=2006-05-11}}</ref> This distribution contained over fifty-five million source lines of code, and the study estimated that it would have cost 1.9 billion dollars (year 2000 U.S. dollars) to develop by conventional means.


=== Enterprise usage ===


Linux has historically been used mainly as a [[Server (computing)|server]] operating system.
<!--Add more about traditional (non internet) server usage.--->
Linux is the cornerstone of the "[[LAMP (software bundle)|LAMP]]" server-software combination (''Linux, Apache, MySQL, Perl/PHP/Python'') which has achieved popularity among developers, and which is one of the more common platforms for website hosting.

Due to its low cost and its high configurability, Linux is often used in [[Embedded Linux|embedded systems]] such as television [[set-top box]]es, [[mobile phone]]s, and [[handheld device]]s. Linux has become a major competitor to the proprietary [[Symbian OS]] found in many mobile phones, and it is an alternative to the dominant [[Windows CE]] and [[Palm OS]] operating systems on [[handheld device]]s. The popular [[TiVo]] digital video recorder uses a customized version of Linux.<ref>{{ cite web | url = http://www.tivo.com/linux/linux.asp | title = TiVo - GNU/Linux Source Code | accessdate = 2006-12-12 }}</ref> Several network [[firewall]] and [[router]] standalone products, including several from [[Linksys]], use Linux internally, using its advanced firewalling and routing capabilities.

Linux is commonly used as an operating system for [[supercomputer]]s. Of the top 500 systems, 376 (75.2%) ran Linux.<ref>http://www.top500.org/stats/28/osfam/</ref>.


=== Market share and uptake ===
=== Market share and uptake ===
Line 138: Line 135:
The Linux market is rapidly growing and the revenue of servers, desktops, and packaged software running Linux is expected to exceed $35.7 billion by 2008.<ref>{{ cite web | url = http://www.techweb.com/wire/showArticle.jhtml?articleID=55800522 | title = Linux To Ring Up $35 Billion By 2008 | accessdate = 2006-04-01 }}</ref> The actual installed user base may be higher than indicated by this figure, as most Linux distributions and applications are freely available and redistributable.
The Linux market is rapidly growing and the revenue of servers, desktops, and packaged software running Linux is expected to exceed $35.7 billion by 2008.<ref>{{ cite web | url = http://www.techweb.com/wire/showArticle.jhtml?articleID=55800522 | title = Linux To Ring Up $35 Billion By 2008 | accessdate = 2006-04-01 }}</ref> The actual installed user base may be higher than indicated by this figure, as most Linux distributions and applications are freely available and redistributable.


The paper ''Why Open Source Software / Free Software (OSS/FS)? Look at the Numbers!''<ref>{{ cite web | first = David A | last = Wheeler | url = http://www.dwheeler.com/oss_fs_why.html | title = Why Open Source Software / Free Software (OSS/FS)? Look at the Numbers! | accessdate = 2006-04-01 }}</ref> identifies many quantitative studies of open source software on topics including market share and reliability, with many studies specifically examining Linux. <!-- does this need to look so much like an advert? -->
Many quantitative studies of open source software focus on topics including market share and reliability, with many studies specifically examining Linux.<ref>{{ cite web | first = David A | last = Wheeler | url = http://www.dwheeler.com/oss_fs_why.html | title = Why Open Source Software / Free Software (OSS/FS)? Look at the Numbers! | accessdate = 2006-04-01 }}</ref>




== Support ==
=== Support ===


Technical support is provided by commercial suppliers and by other Linux users, usually in [[online forums]], [[IRC]], [[newsgroups]], and [[mailing lists]]. [[Linux User Group]]s have traditionally been organized to provide support for Linux in specific cities and regions.
Technical support is provided by commercial suppliers and by other Linux users, usually in [[online forums]], [[IRC]], [[newsgroups]], and [[mailing lists]]. [[Linux User Group]]s have traditionally been organized to provide support for Linux in specific cities and regions.

Revision as of 21:45, 29 December 2006

Template:Two other uses

Linux
Tux the penguin, mascot of Linux
Tux the penguin, based on an image created by Larry Ewing in 1996, is the mascot of Linux.
OS familyUnix-like
Working stateCurrent
Latest release2.6.19.1 (kernel) / December 11 2006
Kernel typeMonolithic kernel
LicenseGNU General Public License
Official websitekernel.org

Linux, or GNU/Linux, refers to any Unix-like computer operating system which uses the Linux kernel. It is one of the most prominent examples of open source development and free software as well as user generated software; its underlying source code is available for anyone to use, modify, and redistribute freely.

Initially developed and used primarily by individual enthusiasts on personal computers, Linux has since gained the support of corporations such as IBM, Sun Microsystems, Hewlett-Packard, and Novell, Inc., and has risen to prominence as an operating system for servers; eight of the ten most reliable internet hosting companies now run Linux on their web servers.[1]

A KDE desktop on the SUSE Linux distribution.

Linux has been more widely ported to different computing platforms than any other operating system. It is used in devices ranging from supercomputers to mobile phones, and is gaining popularity in the personal computer market.[2]

History

File:Richard Matthew Stallman.jpeg
Richard Stallman, founder of the GNU project for a free operating system.

In 1983, Richard Stallman founded the GNU Project, with the goal of developing a complete Unix-like operating system composed entirely of free software. By the beginning of the 1990s, GNU had produced or collected most of the necessary components of this system — libraries, compilers, text editors, a Unix shell — except for the core component, the kernel. The GNU project began developing a kernel, the GNU Hurd, in 1990, based on the Mach microkernel, but the development of this Mach-based design proved difficult and proceeded slowly.

Linus Torvalds - creator of the Linux kernel.

Meanwhile, in 1991, another kernel was begun as a hobby by Finnish university student Linus Torvalds while attending the University of Helsinki.[3] Torvalds originally used Minix on his own computer, a simplified Unix-like system written by Andrew S. Tanenbaum for teaching operating system design. However, Tanenbaum did not permit others to extend his operating system, leading Torvalds to create a replacement for Minix.

Originally, Torvalds called his kernel "Freax" for "free" and "freak" and with the often-used X in the names of Unix-like systems. The name "Linux" was coined by Ari Lemmke, who administered an FTP server belonging to the Finnish University Network; he invented the name Linux for the directory from which Torvalds' project was first available for download.[4]

A graphic history of Unix systems. Linux is a Unix-type system but its source code does not descend from the original Unix.

At first a computer running Minix was necessary in order to configure and install Linux. Initial versions of Linux also required another operating system to be present in order to boot from a hard disk, but soon there were independent boot loaders such as LILO. The Linux system quickly surpassed Minix in functionality; Torvalds and other early Linux kernel developers adapted their work for the GNU components and user-space programs to create a complete, fully functional, and free (as in freedom) operating system.

Today, Torvalds continues to direct the development of the kernel, while other subsystems such as the GNU components continue to be developed separately. Other groups and companies combine and distribute these components with additional application software in the form of Linux distributions.

Linux and the GNU Project

The goal of the GNU project is to produce a Unix-compatible operating system consisting entirely of free software, and all general-purpose Linux distributions rely on numerous GNU components. The Free Software Foundation views these Linux distributions as "variants" of the GNU system, and asks that such operating systems be referred to as GNU/Linux or a Linux-based GNU system. While some distributions make a point of using the combined form - notably Debian GNU/Linux - its use outside of the enthusiast community is limited, and Linus Torvalds has said that he finds calling Linux in general GNU/Linux "just ridiculous".[5] The distinction between the Linux kernel and distributions based on it plus the GNU system is a source of confusion to many newcomers, and the naming remains controversial.

SCO litigation

In March 2003, the SCO Group filed a lawsuit against IBM, claiming that IBM had contributed portions of SCO's copyrighted code to the Linux kernel in violation of IBM's license to use Unix. Additionally, SCO sent letters to a number of companies warning that their use of Linux without a license from SCO may be actionable, and claimed in the press that they would be suing individual Linux users. This controversy has involved lawsuits by SCO against DaimlerChrysler (dismissed in 2004), and AutoZone, and by Red Hat and others against SCO. Furthermore, whether SCO even owns the relevant Unix copyrights is currently disputed by Novell.

As per the Utah District Court ruling on July 3, 2006; 182 claims out of 294 claims made by SCO against IBM have been dismissed.[6]

SCO's claims have varied widely.

Copyright, licensing, and the Linux trademark

The Linux kernel and most GNU software are licensed under the GNU General Public License version 2. The GPL requires that all distributed source code modifications and derived works also be licensed under the GPL, and is sometimes referred to as a "share and share-alike" or "copyleft" license. In 1997, Linus Torvalds stated, "Making Linux GPL'd was definitely the best thing I ever did."[7] Other software may use other licenses; many libraries use the GNU Lesser General Public License (LGPL), a more permissive variant of the GPL, and the X Window System uses the MIT License.

After more than ten years, the Free Software Foundation announced that they would be upgrading the GPL to version 3, citing increasing concerns with Intellectual Property laws, especially Software Patents. Linus Torvalds has publicly stated he would not move the Linux kernel to GPL v.3. Torvalds opposes in particular certain Digital Rights Management exclusions in the GPL v3.

In the United States, the name Linux is a trademark registered to Linus Torvalds.[8] Initially, nobody registered it, but on August 15 1994, William R. Della Croce, Jr. filed for the trademark Linux, and then demanded royalties from Linux distributors. In 1996, Torvalds and some affected organizations sued to have the trademark assigned to Torvalds, and in 1997 the case was settled.[9] The licensing of the trademark is now handled by the Linux Mark Institute. Torvalds has stated that he only trademarked the name to prevent someone else from using it, but was bound in 2005 by United States trademark law to take active measures to enforce the trademark. As a result, the LMI sent out a number of letters to distribution vendors requesting that a fee be paid for the use of the name, and a number of companies have complied.[10]

Pronunciation

Template:Pronunciation of Linux

Development

A 2001 study of Red Hat Linux 7.1 found that this distribution contained 30 million source lines of code. Using the Constructive Cost Model, the study estimated that this distribution required about eight thousand man-years of development time. According to the study, if all this software had been developed by conventional proprietary means, it would have cost about 1.08 billion dollars (year 2000 U.S. dollars) to develop in the United States.[11]

The majority of the code (71%) was written in the C programming language, but many other languages were used, including C++, Lisp, assembly language, Perl, Fortran, Python and various shell scripting languages. Slightly over half of all lines of code were licensed under the GPL. The Linux kernel was 2.4 million lines of code, or 8% of the total. Cite error: A <ref> tag is missing the closing </ref> (see the help page). This distribution contained over fifty-five million source lines of code, and the study estimated that it would have cost 1.9 billion dollars (year 2000 U.S. dollars) to develop by conventional means.

Programming on Linux

Most Linux distributions support a wide array of programming languages. Core system software such as libraries and basic utilities are usually written in C. Enterprise software is often written in C++, Java, Perl, or Python.

The most common collection of utilities for building both Linux applications and operating system programs is found within the GNU toolchain, which includes the GNU Compiler Collection (GCC). Amongst others, GCC provides compilers for C, C++, Java, and Fortran. The Linux kernel itself is written to be compiled with GCC.

Most distributions also include support for Perl, Python and other dynamic languages. Less common, but still well-supported, are C# via the Mono project, Scheme, and Ruby. A very large number of other programming languages have Linux implementations available.[citation needed]

There are a number of Integrated development environments available including MonoDevelop, KDevelop, Anjuta, NetBeans, and Eclipse while the traditional editors Emacs and Vim remain popular.[12]

The two main widget toolkits used for contemporary GUI programming are Qt and the Gimp Toolkit, known as GTK+. Both support a wide variety of languages.

As well as these free and open source options, there are proprietary compilers and tools available from a range of companies such as the Intel C Compiler, PathScale,[13] Micro Focus COBOL,[14] Franz Inc,[15] and the Portland Group.[16]

Distribution

The Linux kernel was originally designed only for Intel 80386 microprocessors, but now supports a wide variety of computer architectures. Linux is one of the most widely ported operating systems, running on a diverse range of systems from the hand-held ARM-based iPAQ to the mainframe IBM System z9. Specialized distributions exist for less mainstream architectures. The ELKS kernel fork can run on Intel 8086 or Intel 80286 16-bit microprocessors, while the µClinux kernel may run on systems without a memory management unit. The kernel also runs on architectures that were not intended to use other than their original operating systems: this is the case of computers made by Apple Computer such as the iMac and PowerBook, Palm PDAs, Nintendo GameCube and Xbox.

Linux is predominantly used as part of a Linux distribution (commonly called a "distro"). These are put together by individuals, loose-knit teams, commercial and volunteer organizations. They commonly include additional system and application software, an installer system to ease initial system setup, and integrated management of software installation and upgrading. Distributions are created for many different purposes, including computer architecture support, localization to a specific region or language, real-time applications, and embedded systems, and many deliberately include only free software. Currently, over three hundred distributions are actively developed, with about a dozen distributions being most popular for general-purpose use.[17]

A typical general-purpose distribution includes the Linux kernel, some GNU libraries and tools, command-line shells, the graphical X Window System and an accompanying desktop environment such as KDE or GNOME, together with thousands of application software packages, from office suites to compilers, text editors, and scientific tools.

The most common method of installing Linux on a personal computer is by booting from a CD-ROM that contains the installation program and installable software. Such a CD can be burned from a downloaded ISO image, purchased alone for a low price, obtained as part of a box set, or in a few cases shipped for free by request. A box set may also include manuals and additional proprietary software. Mini CD images allow Linux to be installed from a disk with a small form factor.

As with servers, personal computers that come with Linux already installed are available from vendors including Hewlett-Packard and Dell, although generally only for their business desktop line.

Alternatives to traditional desktop installation include thin client installation and running directly from a Live CD. In a thin client installation, the operating system is loaded and run from a centralised machine over a network connection. In a Live CD setup, the computer boots the entire operating system from CD without first installing it on the computer's hard disk.

On embedded devices, Linux is typically held in the device's firmware and may or may not be consumer-accessible.

Desktop usage

A GNOME desktop running from the GNOME LiveCD.

The high level of access granted to Linux's internals has led to Linux users traditionally tending to be more technologically oriented than users of Microsoft Windows and Mac OS. Linux and other free software projects have been frequently criticized for not going far enough to ensure ease of use. [18]

Linux's roots in the Unix operating system mean that in addition to graphical configuration tools and control panels available for many system settings and services, plain-text configuration files are still commonly used to configure the OS and can readily be made accessible (or not) to users, at the administrator's will.

This stereotype has been dispelled in recent years. Linux is now typically being used with a user interface that is very similar to those running on other operating systems. However, users may sometimes have to switch to alternative application software, and there are often fewer "known" software choices for certain types of software (as in the case of computer games) but there exist replacements for all general-purpose software, and general applications like spreadsheets, word processors, and browsers are available for Linux in profusion. Additionally, a growing number of proprietary software vendors are supporting Linux,[19] . In the meantime, developers have resorted to using compatibility layers such as Wine or NdisWrapper allowing some Microsoft Windows application software and drivers to be used on Linux without requiring the vendor to adapt them. This allows users to more easily migrate from Windows to Linux since they can still run many of their Windows applications with little additional effort.

The Berlin-based organization Relevantive concluded in 2003 that the usability of Linux for a set of desktop-related tasks was "nearly equal to Windows XP."[20] Since then, there have been numerous independent studies and articles which indicate that a modern Linux desktop using either GNOME or KDE is on par with Microsoft Windows, even in a business setting.[21]

Enterprise usage

Linux has historically been used mainly as a server operating system. Linux is the cornerstone of the "LAMP" server-software combination (Linux, Apache, MySQL, Perl/PHP/Python) which has achieved popularity among developers, and which is one of the more common platforms for website hosting.

Due to its low cost and its high configurability, Linux is often used in embedded systems such as television set-top boxes, mobile phones, and handheld devices. Linux has become a major competitor to the proprietary Symbian OS found in many mobile phones, and it is an alternative to the dominant Windows CE and Palm OS operating systems on handheld devices. The popular TiVo digital video recorder uses a customized version of Linux.[22] Several network firewall and router standalone products, including several from Linksys, use Linux internally, using its advanced firewalling and routing capabilities.

Linux is commonly used as an operating system for supercomputers. Of the top 500 systems, 376 (75.2%) ran Linux.[23].

Market share and uptake

According to the market research company IDC, 25% of servers and 2.8% of desktop computers ran Linux as of 2004.[24] Proponents and analysts attribute the success of Linux to its security, reliability,[25] low cost, and freedom from vendor lock-in.[26] The frictional cost of switching and lack of support for certain hardware and application programs designed for Microsoft Windows, especially games or uncommon business software, have been two factors that have initially inhibited fast adoption. Lack of adoption due to hardware compatibility is no longer a true inihibition to adoption, however. As of late 2006, it is very uncommon for hardware to not work "out of the box" with most Linux distributions.

The Linux market is rapidly growing and the revenue of servers, desktops, and packaged software running Linux is expected to exceed $35.7 billion by 2008.[27] The actual installed user base may be higher than indicated by this figure, as most Linux distributions and applications are freely available and redistributable.

Many quantitative studies of open source software focus on topics including market share and reliability, with many studies specifically examining Linux.[28]

Support

Technical support is provided by commercial suppliers and by other Linux users, usually in online forums, IRC, newsgroups, and mailing lists. Linux User Groups have traditionally been organized to provide support for Linux in specific cities and regions.

The business model of commercial suppliers is generally dependent on charging for support, especially for business users. A number of companies offer a specialized business version of their distribution, which adds proprietary support packages and tools to administer higher numbers of installations or to simplify administrative tasks.

See also

References

  • Torvalds, Linus, and David Diamond. Just for Fun: The Story of an Accidental Revolutionary. Harper-Collins Business.{{cite book}}: CS1 maint: multiple names: authors list (link)
  • Moody, Glyn. Rebel Code: Linux and the Open Source Revolution. Perseus Publishing. ISBN 0-7139-9520-3.
  • Gedda, R (2004). "Linux breaks desktop barrier in 2004: Torvalds". Retrieved 2004-01-16.
  • Mackenzie, K (2004). "Linux Torvalds Q&A". Retrieved 2004-01-19.
  • Greene, Thomas C. "Mandrake 8.1 easier than Win-XP". The Register. Retrieved 2005-12-22.
  1. ^ "Rackspace Most Reliable Hoster in September". Netcraft. October 7 2006. Retrieved 2006-11-01. {{cite web}}: Check date values in: |date= (help)
  2. ^ Burke, Steven (2006-03-20). "Red Hat looks to boost channel sales". CRN. Retrieved 2006-04-01. {{cite news}}: Check date values in: |date= (help)
  3. ^ Torvalds, Linus. "What would you like to see most in minix?". Newsgroupcomp.os.minix. 1991Aug25.205708.9541@klaava.Helsinki.FI. Retrieved 2006-09-09.
  4. ^ Torvalds, Linus. "How to pronounce "Linux"?". Newsgroupcomp.os.linux. 1992Apr23.123216.22024@klaava.Helsinki.FI. Retrieved 2006-08-08.
  5. ^ Moore, J.T.S. (Produced, Written, and Directed) (2001). Revolution OS (DVD).
  6. ^ "SCO Losing Linux Battle With IBM".
  7. ^ "Linus Torvalds interview". Retrieved 2006-05-08.
  8. ^ "U.S. Reg No: 1916230". United States Patent and Trademark Office. Retrieved 2006-04-01.
  9. ^ "Linux Timeline". Linux Journal. 31 June 2006. {{cite web}}: Check date values in: |date= (help)
  10. ^ "Linus gets tough on Linux trademark". 2005-09-05. Retrieved 2006-09-04.
  11. ^ Wheeler, David A (2002-07-29). "More Than a Gigabuck: Estimating GNU/Linux's Size". Retrieved 2006-05-11.
  12. ^ Brockmeier, Joe. "A survey of Linux Web development tools". Retrieved 2006-12-16.
  13. ^ http://www.pathscale.com/ekopath.html
  14. ^ http://www.microfocus.com
  15. ^ http://www.franz.com/
  16. ^ http://www.pgroup.com/
  17. ^ "The LWN.net Linux Distribution List". Retrieved 2006-05-19.
  18. ^ Blau, John (2003-08-04). "PC World - Linux Earns User-Friendly Rating". PC World. Retrieved 2005-12-17]. {{cite news}}: Check date values in: |accessdate= and |date= (help)
  19. ^ "The Global Desktop Project, Building Technology and Communities". Retrieved 2006-05-07.
  20. ^ "Relevantive Linux usability study". Retrieved 2006-04-03.
  21. ^ Dulaney, Emmett (June 2005). "Desktop Linux: Ready for Prime Time?". Retrieved 2006-06-19.
  22. ^ "TiVo - GNU/Linux Source Code". Retrieved 2006-12-12.
  23. ^ http://www.top500.org/stats/28/osfam/
  24. ^ White, Dominic (2004-04-02). "Microsoft eyes up a new kid on the block". The Daily Telegraph. Retrieved 2006-09-09.
  25. ^ "Why customers are flocking to Linux".
  26. ^ "The rise and rise of Linux".
  27. ^ "Linux To Ring Up $35 Billion By 2008". Retrieved 2006-04-01.
  28. ^ Wheeler, David A. "Why Open Source Software / Free Software (OSS/FS)? Look at the Numbers!". Retrieved 2006-04-01.

External links

Template:Link FA Template:Link FA Template:Link FA