Linux
Encyclopedia
Linux is a Unix-like
computer operating system
assembled under the model of free and open source software
development and distribution. The defining component of any Linux system is the Linux kernel
, an operating system kernel first released October 5, 1991 by Linus Torvalds
. Linux system distributions may vary in many details of system operation, configuration, and software package selections.
Linux runs on a wide variety of computer hardware
, including mobile phone
s, tablet computer
s, network routers, television
s, video game console
s, desktop computers, mainframes
and supercomputer
s. Linux is a leading server
operating system, and runs the 10 fastest supercomputers in the world. In addition, more than 90% of today's supercomputers run some variant of Linux.
The development of Linux is one of the most prominent examples of free and open source software
collaboration: the underlying source code
may be used, modified, and distributed—commercially or non-commercially—by anyone under licenses such as the GNU General Public License
. Typically Linux is packaged in a format known as a Linux distribution
for desktop and server use. Some popular mainstream Linux distributions include Debian (and its derivatives such as Ubuntu
), Fedora
and openSUSE
. Linux distributions include the Linux kernel, supporting utilities
and libraries
and usually a large amount of application software to fulfill the distribution's intended use.
A distribution oriented toward desktop use may include the X Window System
and an accompanying desktop environment
such as GNOME
or KDE Plasma. Other distributions may include a less resource intensive desktop such as LXDE
or Xfce
for use on older or less-powerful computers. A distribution intended to run as a server may omit any graphical environment from the standard install and instead include other software such as the Apache HTTP Server
and a SSH server like OpenSSH
. Because Linux is freely redistributable, it is possible for anyone to create a distribution for any intended use. Commonly used applications with desktop Linux systems include the Mozilla Firefox
web browser, the OpenOffice.org
or LibreOffice
office application suites, and the GIMP
image editor.
The main supporting user space
system tools and libraries from the GNU Project
(announced in 1983 by Richard Stallman
) are the basis for the Free Software Foundation
's preferred name GNU/Linux
.
operating system was conceived and implemented in 1969 at AT&T
's Bell Laboratories in the United States
by Ken Thompson
, Dennis Ritchie
, Douglas McIlroy
, and Joe Ossanna
. It was first released in 1971 and was initially entirely written in assembly language
, a common practice at the time. Later, in a key pioneering approach in 1973, Unix was re-written in the programming language C
by Dennis Ritchie
(with exceptions to the kernel and I/O). The availability of an operating system written in a high-level language allowed easier portability
to different computer platforms. With a legal glitch forcing AT&T to license the operating system's source code to anyone who asked, Unix quickly grew and became widely adopted by academic institutions and businesses. In 1984, AT&T divested itself of Bell Labs. Free of the legal glitch requiring free licensing, Bell Labs began selling Unix as a proprietary
product.
, started in 1983 by Richard Stallman
, had the goal of creating a "complete Unix-compatible software system" composed entirely of free software
. Work began in 1984. Later, in 1985, Stallman started the Free Software Foundation
and wrote the GNU General Public License
(GNU GPL) in 1989. By the early 1990s, many of the programs required in an operating system (such as libraries, compiler
s, text editor
s, a Unix shell
, and a windowing system) were completed, although low-level elements such as device driver
s, daemons
, and the kernel were stalled and incomplete. Linus Torvalds has said that if the GNU kernel had been available at the time (1991), he would not have decided to write his own.
, from which NetBSD
and FreeBSD
descended, predated that of Linux. Linus Torvalds
has said that if 386BSD had been available at the time, he probably would not have created Linux.
is an inexpensive minimal Unix-like
operating system, designed for education in computer science, written by Andrew S. Tanenbaum
. Starting with version 3, MINIX
was free
and redesigned for “serious” use.
In 1991 while attending the University of Helsinki
, Torvalds, curious about the operating systems and frustrated by the licensing of MINIX limiting it to educational use only (which prevented any commercial use), began to work on his own operating system which eventually became the Linux kernel
.
Torvalds began the development of the Linux kernel on MINIX, and applications written for MINIX were also used on Linux. Later Linux matured and it became possible for Linux to be developed under itself. Also GNU applications replaced all MINIX ones, because with code from the GNU system freely available, it was advantageous if this could be used with the fledgling operating system. Code licensed under the GNU GPL can be used in other projects, so long as they also are released under the same or a compatible license. In order to make Linux available for commercial use, Torvalds initiated a switch from his original license (which prohibited commercial redistribution) to the GNU GPL. Developers worked to integrate GNU components with Linux to make a fully functional and free operating system.
s to supercomputer
s, and have secured a place in server
installations often using the popular LAMP
application stack. Use of Linux distributions in home and enterprise desktops has been growing. They have also gained popularity with various local and national governments. The federal government of Brazil is well known for its support for Linux. News of the Russian military creating its own Linux distribution has also surfaced, and has come to fruition as the G.H.ost Project. The Indian state of Kerala
has gone to the extent of mandating that all state high schools run Linux on their computers. China
uses Linux exclusively as the operating system for its Loongson processor family to achieve technology independence. In Spain
some regions have developed their own Linux distributions, which are widely used in education and official institutions, like gnuLinEx
in Extremadura
and Guadalinex
in Andalusia
. Portugal
is also using its own Linux distribution Caixa Mágica
, used in the Magalhães netbook and the e-escola government program. France
and Germany
have also taken steps toward the adoption of Linux.
Linux distributions have also become popular in the netbook
market, with many devices such as the ASUS Eee PC and Acer Aspire One
shipping with customized Linux distributions installed.
s.
operating system. It derives much of its basic design from principles established in Unix during the 1970s and 1980s. Such a system uses a monolithic kernel
, the Linux kernel
, which handles process control, networking, and peripheral
and file system
access. Device drivers are either integrated directly with the kernel or added as modules loaded while the system is running.
Separate projects that interface with the kernel provide much of the system's higher-level functionality. The GNU userland is an important part of most Linux-based systems, providing the most common implementation of the C library
, a popular shell
, and many of the common Unix tools which carry out many basic operating system tasks. The graphical user interface
(or GUI) used by most Linux systems is built on top of an implementation of the X Window System
.
(GUI), or through controls attached to the associated hardware, which is common for embedded systems. For desktop systems, the default mode is usually a graphical user interface, by which the CLI is available through terminal emulator
windows or on a separate virtual console. Most low-level Linux components, including the GNU userland, use the CLI exclusively. The CLI is particularly suited for automation of repetitive or delayed tasks, and provides very simple inter-process communication
. A graphical terminal emulator
program is often used to access the CLI from a Linux desktop. A Linux system typically implements a CLI by a shell
, which is also the traditional way of interacting with a Unix system. A Linux distribution specialized for servers may use the CLI as its only interface.
On desktop systems, the most popular user interfaces are the extensive desktop environment
s KDE Plasma Desktop, GNOME
, and Xfce
, though a variety of additional user interfaces exist. Most popular user interfaces are based on the X Window System
, often simply called "X". It provides network transparency
and permits a graphical application running on one system to be displayed on another where a user may interact with the application.
Other GUIs may be classified as simple X window manager
s, such as FVWM
, Enlightenment
, and Window Maker
, which provide a minimalist functionality with respect to the desktop environments. A window manager provides a means to control the placement and appearance of individual application windows, and interacts with the X Window System. The desktop environments include window managers as part of their standard installations (Metacity
for GNOME, Kwin
for KDE, Xfwm for Xfce as of 2010) although users may choose to use a different window manager if preferred.
and other components are free
and open source software. Linux is not the only such operating system, although it is by far the most widely used.
Some free and open source software licenses are based on the principle of copyleft
, a kind of reciprocity: any work derived from a copyleft
piece of software must also be copyleft itself. The most common free software license, the GNU GPL, is a form of copyleft
, and is used for the Linux kernel and many of the components from the GNU project
.
Linux based distributions are intended by developers for interoperability
with other operating systems and established computing standards. Linux systems adhere to POSIX
, SUS
, ISO
, and ANSI
standards where possible, although to date only one Linux distribution has been POSIX.1 certified, Linux-FT.
Free software projects, although developed in a collaborative
fashion, are often produced independently of each other. The fact that the software licenses explicitly permit redistribution, however, provides a basis for larger scale projects that collect the software produced by stand-alone projects and make it available all at once in the form of a Linux distribution
.
A Linux distribution
, commonly called a "distro", is a project that manages a remote collection of system software and application software packages available for download and installation through a network connection. This allows the user to adapt the operating system to his/her specific needs. Distributions are maintained by individuals, loose-knit teams, volunteer organizations, and commercial entities. A distribution is responsible for the default configuration of the installed Linux kernel, general system security, and more generally integration of the different software packages into a coherent whole. Distributions typically use a package manager such as dpkg
, Synaptic, YAST, or Portage
to install, remove and update all of a system's software from one central location.
being a well-known example. Others maintain a community version of their commercial distributions, as Red Hat
does with Fedora and Novell
does with openSUSE
.
In many cities and regions, local associations known as Linux User Group
s (LUGs) seek to promote their preferred distribution and by extension free software. They hold meetings and provide free demonstrations, training, technical support, and operating system installation to new users. Many Internet
communities also provide support to Linux users and developers. Most distributions and free software / open source projects have IRC chatrooms or newsgroup
s. Online forums are another means for support, with notable examples being LinuxQuestions.org
and the various distribution specific support and community forums, such as ones for Ubuntu
, Fedora
, and Gentoo
. Linux distributions host mailing list
s; commonly there will be a specific topic such as usage or development for a given list.
There are several technology websites with a Linux focus. Print magazine
s on Linux often include cover disks including software or even complete Linux distributions.
Although Linux distributions are generally available without charge, several large corporations sell, support, and contribute to the development of the components of the system and of free software
. An analysis of the Linux kernel showed 75 percent of the code from December 2008 to January 2010 was developed by programmers working for corporations, leaving about 18 percent to the traditional, open source community. Some of the major corporations that contribute include Dell
, IBM
, HP
, Oracle
, Sun Microsystems
(now part of Oracle), Novell
, and Nokia
. A number of corporations, notably Red Hat
and Novell
, have built a significant business around Linux distributions.
The free software licenses, on which the various software packages of a distribution built on the Linux kernel are based, explicitly accommodate and encourage commercialization; the relationship between a Linux distribution as a whole and individual vendors may be seen as symbiotic
. One common business model of commercial suppliers is charging for support, especially for business users. A number of companies also 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.
Another business model is to give away the software in order to sell hardware. This used to be the norm in the computer industry, with operating systems such as CP/M
, Apple DOS
and versions of Mac OS
prior to 7.5 freely copyable (but not modifiable). As computer hardware standardized throughout the 1980s, it became more difficult for hardware manufacturers to profit from this tactic, as the OS would run on any manufacturer's computer that shared the same architecture.
s. The original development tools used for building both Linux applications and operating system programs are found within the GNU toolchain
, which includes the GNU Compiler Collection
(GCC) and the GNU build system
. Amongst others, GCC provides compilers for Ada
, C
, C++
, Java
, and Fortran
. First released in 2003, the Low Level Virtual Machine
project provides an alternate open-source compiler for many languages. Proprietary
compilers for Linux include the Intel C++ Compiler
, Sun Studio
, and IBM XL C
/C++
Compiler. BASIC
in the form of Visual Basic
is supported in such forms as Gambas
, FreeBASIC
, and XBasic
.
Most distributions also include support for PHP
, Perl
, Ruby, Python and other dynamic languages
. While not as common, Linux also supports C# (via Mono
), Vala
, and Scheme
. A number of Java Virtual Machine
s and development kits run on Linux, including the original Sun Microsystems JVM (HotSpot
), and IBM's J2SE RE, as well as many open-source projects like Kaffe
and JikesRVM
.
GNOME
and KDE
are popular desktop environment
s and provide a framework for developing applications. These projects are based on the GTK+
and Qt
widget toolkit
s, respectively, which can also be used independently of the larger framework. Both support a wide variety of languages. There are a number of Integrated development environment
s available including Anjuta
, Code::Blocks
, CodeLite
, Eclipse, Geany
, ActiveState Komodo
, KDevelop
, Lazarus
, MonoDevelop
, NetBeans
, Qt Creator
and Omnis Studio
, while the long-established editors Vim
and Emacs
remain popular.
support, embedded systems
, stability, security, localization to a specific region or language, targeting of specific user groups, support for real-time
applications, or commitment to a given desktop environment. Furthermore, some distributions 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.
Linux is a widely ported
operating system kernel. The Linux kernel runs on a highly diverse range of computer architecture
s: in the hand-held ARM
-based iPAQ
and the mainframe
IBM
System z9, System z10; in devices ranging from mobile phone
s to supercomputer
s. 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 fork may run on systems without a memory management unit
. The kernel also runs on architectures that were only ever intended to use a manufacturer-created operating system, such as Macintosh
computers (with both PowerPC
and Intel processors), PDAs
, video game console
s, portable music players, and mobile phone
s.
There are several industry associations and hardware conferences devoted to maintaining and improving support for diverse hardware under Linux, such as FreedomHEC
.
(which can utilize additional shells
such as the default GNOME Shell and Ubuntu
Unity), and the KDE Plasma Desktop.
The performance of Linux on the desktop has been a controversial topic; for example in 2007 Con Kolivas
accused the Linux community of favoring performance on servers. He quit Linux kernel development because he was frustrated with this lack of focus on the desktop, and then gave a "tell all" interview on the topic. Since then a significant amount of development has been undertaken in an effort to improve the desktop experience. Projects such as Upstart
and systemd
aim for a faster boot time.
Many popular applications are available for a wide variety of operating systems. For example Mozilla Firefox
, OpenOffice.org
/LibreOffice
and Blender
have downloadable versions for all major operating systems. Furthermore, some applications were initially developed for Linux, such as Pidgin
, and GIMP
, and were ported to other operating systems including Windows
and Mac OS X
due to their popularity. In addition, a growing number of proprietary desktop applications are also supported on Linux; see List of proprietary software for Linux. In the field of animation and visual effects, most high end software, such as Autodesk Maya
, Softimage XSI and Apple Shake
, is available for Linux, Windows and/or Mac OS X. There are also several companies that have ported their own or other companies' games to Linux.
Many types of applications available for Microsoft Windows and Mac OS X are also available for Linux. Commonly, either a free software
application will exist which does the functions of an application found on another operating system, or that application will have a version that works on Linux, such as with Skype
and some video games. Furthermore, the Wine
project provides a Windows compatibility layer to run unmodified Windows applications on Linux. CrossOver
is a proprietary solution based on the open source Wine
project that supports running Windows versions of Microsoft Office
, Intuit applications such as Quicken
and QuickBooks
, Adobe Photoshop
versions through CS2, and many popular games such as World of Warcraft
and Team Fortress 2
. In other cases, where there is no Linux port of some software in areas such as desktop publishing
and professional audio
, there is equivalent software available on Linux.
The collaborative nature of free software development allows distributed teams to perform language localization
of some Linux distributions for use in locales where localizing proprietary systems would not be cost-effective. For example the Sinhalese language version of the Knoppix
distribution was available significantly before Microsoft Windows XP was translated to Sinhalese. In this case the Lanka Linux User Group
played a major part in developing the localized system by combining the knowledge of university professors, linguists, and local developers.
Installing, updating and removing software in Linux is typically done through the use of package managers such as the Synaptic Package Manager
, PackageKit
, and Yum Extender
. While most major Linux distributions have extensive repositories, often containing tens of thousands of packages, not all the software that can run on Linux is available from the official repositories. Alternatively, users can install packages from unofficial repositories, download pre-compiled packages directly from websites, or compile the source code by themselves. All these methods come with different degrees of difficulty; compiling the source code is in general considered a challenging process for new Linux users, but it's hardly needed in modern distributions and is not a method specific to Linux.
operating systems, and have risen to prominence in that area; Netcraft
reported in September 2006 that eight of the ten most reliable internet hosting companies ran Linux distributions on their web server
s. Since June 2008, Linux distributions represented five of the top ten, FreeBSD
three of ten, and Microsoft
two of ten; since February 2010, Linux distributions represented six of the top ten, FreeBSD
two of ten, and Microsoft
one of ten.
Linux distributions are 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.
Linux distributions have become increasingly popular on mainframes
in the last decade partly due to pricing and the open-source model. In December 2009, computer giant IBM
reported that it would predominantly market and sell mainframe-based Enterprise Linux Server.
Linux distribution
s are also commonly used as operating systems for supercomputer
s: , out of the top 500
systems, 459 (91.8%) run a Linux distribution. Linux was also selected as the operating system for the world's most powerful supercomputer, IBM's Sequoia
which will become operational in 2011.
is often used in embedded system
s. Android—based on a modified version of the Linux kernel—has become a major competitor of Nokia's older Symbian
OS, found in many smartphone
s. During the third quarter of 2010, 25.5% of smartphones sold worldwide used Android (with all Linux variants forming 27.6% of the total during that time). Cell phones and PDAs running Linux on open-source platforms became more common from 2007; examples include the Nokia N810
, Openmoko
's Neo1973, and the Motorola ROKR E8. Continuing the trend, Palm
(later acquired by HP) produced a new Linux-derived operating system, webOS, which is built into its new line of Palm Pre
smartphones. The popular TiVo
digital video recorder also uses a customized Linux, as do several network firewalls
and routers from such makers as Cisco
/Linksys
. The Korg OASYS
, the Korg KRONOS
, the Yamaha
Yamaha Motif XS/Motif XF music workstation
s, Yamaha S90XS/S70XS, Yamaha MOX6/MOX8 synthesizer
s, Yamaha Motif-Rack XS tone generator module
, and Roland RD-700GX digital piano
also run Linux. Linux is also used in stage lighting
control systems, such as the WholeHogIII console.
/ open source software focus on topics including market share and reliability, with numerous studies specifically examining Linux. The Linux market is growing rapidly, and the revenue of servers, desktops, and packaged software running Linux was expected to exceed $35.7 billion by 2008.
IDC
's Q1 2007 report indicated that Linux held 12.7% of the overall server market at that time. This estimate was based on the number of Linux servers sold by various companies, and did not include server hardware purchased separately which had Linux installed on it later. In September 2008 Microsoft CEO Steve Ballmer
admitted that 60% of web-servers run Linux versus 40% that run Windows Server
.
Primarily based on web server statistics
, various companies estimated that the desktop market share of Linux range from less than 1% to 4.8%. In comparison, Microsoft operating systems hold more than 85%.
Analysts and proponents attribute the relative success of Linux to its security, reliability, low cost, and freedom from vendor lock-in
.
The Wine
compatibility layer allows users to run many programs designed for Windows under Linux. About half of Wine's code has been contributed by volunteers and half sponsored by commercial interests including CodeWeavers
, which produces a commercial version of the software.
Since 2009, Google has also provided funding to the Wine project.
The XO laptop
project of One Laptop Per Child is creating a new and potentially much larger Linux community which is planned to reach millions of schoolchildren and their families in the developing world. Major supporters of the project include Google
, Red Hat
, and eBay
. Although the XO will have a Windows option, it will be primarily deployed with Fedora
Linux while using Sugar as the desktop environment.
For years Linux has been the platform of choice in the film industry. The first major film produced on Linux servers was 1997's Titanic
. Since then major studios including Dreamworks Animation
, Pixar
, Weta Digital
, and Industrial Light & Magic have migrated to Linux. According to the Linux Movies Group, more than 95% of the servers and desktops at large animation and visual effects companies use Linux.
(GPL). The GPL requires that anyone who distributes Linux must make the source code (and any modifications) available to the recipient under the same terms. Other key components of a software system may use other licenses; many libraries use the GNU Lesser General Public License
(LGPL), a more permissive variant of the GPL, and the X.org
implementation of the X Window System
uses the MIT License
.
Torvalds states that the Linux kernel will not move from version 2 of the GPL to version 3. He specifically dislikes some provisions in the new license which prohibit the use of the software in digital rights management
, and it would also be impractical to obtain permission from all the copyright holders, who number in the thousands.
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 $ ( US dollars) to develop in the United States.
Most of the code (71%) was written in the C
programming
language
, but many other languages were used, including C++
, Lisp, assembly language
, Perl
, Python
, Fortran
, and various shell script
ing languages. Slightly over half of all lines of code were licensed under the GPL. The Linux kernel itself was 2.4 million lines of code, or 8% of the total.
In a later study, the same analysis was performed for Debian GNU/Linux
version 4.0 (etch, which was released in 2007). This distribution contained close to 283 million source lines of code, and the study estimated that it would have required about seventy three thousand man-years and cost US$ (in dollars) to develop by conventional means.
In the United States, the name Linux is a trademark registered to Linus Torvalds. Initially, nobody registered it, but on 15 August 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 him to have the trademark assigned to Torvalds, and in 1997 the case was settled. The licensing of the trademark has since been handled by the Linux Mark Institute
. Torvalds has stated that he trademarked the name only to prevent someone else from using it. LMI originally charged a nominal sublicensing fee for use of the Linux name as part of trademarks, but later changed this in favor of offering a free, perpetual worldwide sublicense.
views Linux distributions that use GNU software as GNU variants
and they ask that such operating systems be referred to as GNU/Linux or a Linux-based GNU system. The media and common usage, however, refers to this family of operating systems simply as Linux, as do many large Linux distributions (e.g. SUSE Linux and Mandriva Linux
). Some distributions, notably Debian
, use GNU/Linux. The naming issue remains controversial.
Unix-like
A Unix-like operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification....
computer operating system
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...
assembled under the model of free and open source software
Free and open source software
Free and open-source software or free/libre/open-source software is software that is liberally licensed to grant users the right to use, study, change, and improve its design through the availability of its source code...
development and distribution. The defining component of any Linux system is the Linux kernel
Linux kernel
The Linux kernel is an operating system kernel used by the Linux family of Unix-like operating systems. It is one of the most prominent examples of free and open source software....
, an operating system kernel first released October 5, 1991 by Linus Torvalds
Linus Torvalds
Linus Benedict Torvalds is a Finnish software engineer and hacker, best known for having initiated the development of the open source Linux kernel. He later became the chief architect of the Linux kernel, and now acts as the project's coordinator...
. Linux system distributions may vary in many details of system operation, configuration, and software package selections.
Linux runs on a wide variety of computer hardware
Hardware
Hardware is a general term for equipment such as keys, locks, hinges, latches, handles, wire, chains, plumbing supplies, tools, utensils, cutlery and machine parts. Household hardware is typically sold in hardware stores....
, including mobile phone
Mobile phone
A mobile phone is a device which can make and receive telephone calls over a radio link whilst moving around a wide geographic area. It does so by connecting to a cellular network provided by a mobile network operator...
s, tablet computer
Tablet computer
A tablet computer, or simply tablet, is a complete mobile computer, larger than a mobile phone or personal digital assistant, integrated into a flat touch screen and primarily operated by touching the screen...
s, network routers, television
Television
Television is a telecommunication medium for transmitting and receiving moving images that can be monochrome or colored, with accompanying sound...
s, video game console
Video game console
A video game console is an interactive entertainment computer or customized computer system that produces a video display signal which can be used with a display device to display a video game...
s, desktop computers, mainframes
Mainframe computer
Mainframes are powerful computers used primarily by corporate and governmental organizations for critical applications, bulk data processing such as census, industry and consumer statistics, enterprise resource planning, and financial transaction processing.The term originally referred to the...
and supercomputer
Supercomputer
A supercomputer is a computer at the frontline of current processing capacity, particularly speed of calculation.Supercomputers are used for highly calculation-intensive tasks such as problems including quantum physics, weather forecasting, climate research, molecular modeling A supercomputer is a...
s. Linux is a leading server
Server (computing)
In the context of client-server architecture, a server is a computer program running to serve the requests of other programs, the "clients". Thus, the "server" performs some computational task on behalf of "clients"...
operating system, and runs the 10 fastest supercomputers in the world. In addition, more than 90% of today's supercomputers run some variant of Linux.
The development of Linux is one of the most prominent examples of free and open source software
Free and open source software
Free and open-source software or free/libre/open-source software is software that is liberally licensed to grant users the right to use, study, change, and improve its design through the availability of its source code...
collaboration: the underlying source code
Source code
In computer science, source code is text written using the format and syntax of the programming language that it is being written in. Such a language is specially designed to facilitate the work of computer programmers, who specify the actions to be performed by a computer mostly by writing source...
may be used, modified, and distributed—commercially or non-commercially—by anyone under licenses such as the GNU General Public License
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....
. Typically Linux is packaged in a format known as a Linux distribution
Linux distribution
A Linux distribution is a member of the family of Unix-like operating systems built on top of the Linux kernel. Such distributions are operating systems including a large collection of software applications such as word processors, spreadsheets, media players, and database applications...
for desktop and server use. Some popular mainstream Linux distributions include Debian (and its derivatives such as Ubuntu
Ubuntu (operating system)
Ubuntu is a computer operating system based on the Debian Linux distribution and distributed as free and open source software. It is named after the Southern African philosophy of Ubuntu...
), Fedora
Fedora (operating system)
Fedora is a RPM-based, general purpose collection of software, including an operating system based on the Linux kernel, developed by the community-supported Fedora Project and sponsored by Red Hat...
and openSUSE
OpenSUSE
openSUSE is a general purpose operating system built on top of the Linux kernel, developed by the community-supported openSUSE Project and sponsored by SUSE...
. Linux distributions include the Linux kernel, supporting utilities
System utility
The system utility may be defined in terms of the satisfaction of the system stakeholders.- Actual Utility :The actual utility is the actual stakeholders' satisfaction....
and libraries
Library (computer science)
In computer science, a library is a collection of resources used to develop software. These may include pre-written code and subroutines, classes, values or type specifications....
and usually a large amount of application software to fulfill the distribution's intended use.
A distribution oriented toward desktop use may include the X Window System
X Window System
The X window system is a computer software system and network protocol that provides a basis for graphical user interfaces and rich input device capability for networked computers...
and an accompanying desktop environment
Desktop environment
In graphical computing, a desktop environment commonly refers to a style of graphical user interface derived from the desktop metaphor that is seen on most modern personal computers. These GUIs help the user in easily accessing, configuring, and modifying many important and frequently accessed...
such as GNOME
GNOME
GNOME is a desktop environment and graphical user interface that runs on top of a computer operating system. It is composed entirely of free and open source software...
or KDE Plasma. Other distributions may include a less resource intensive desktop such as LXDE
LXDE
LXDE is a free and open source desktop environment for Unix and other POSIX compliant platforms, such as Linux or BSD. The goal of the project is to provide a desktop environment that is fast and energy efficient...
or Xfce
Xfce
Xfce is a free software desktop environment for Unix and other Unix-like platforms, such as Linux, Solaris, and BSD – though recent compatibility issues have arisen with regard to BSD Unix platforms...
for use on older or less-powerful computers. A distribution intended to run as a server may omit any graphical environment from the standard install and instead include other software such as the Apache HTTP Server
Apache HTTP Server
The Apache HTTP Server, commonly referred to as Apache , is web server software notable for playing a key role in the initial growth of the World Wide Web. In 2009 it became the first web server software to surpass the 100 million website milestone...
and a SSH server like OpenSSH
OpenSSH
OpenSSH is a set of computer programs providing encrypted communication sessions over a computer network using the SSH protocol...
. Because Linux is freely redistributable, it is possible for anyone to create a distribution for any intended use. Commonly used applications with desktop Linux systems include the Mozilla Firefox
Mozilla Firefox
Mozilla Firefox is a free and open source web browser descended from the Mozilla Application Suite and managed by Mozilla Corporation. , Firefox is the second most widely used browser, with approximately 25% of worldwide usage share of web browsers...
web browser, the OpenOffice.org
OpenOffice.org
OpenOffice.org, commonly known as OOo or OpenOffice, is an open-source application suite whose main components are for word processing, spreadsheets, presentations, graphics, and databases. OpenOffice is available for a number of different computer operating systems, is distributed as free software...
or LibreOffice
LibreOffice
LibreOffice is a free and open source office suite developed by The Document Foundation as a fork of OpenOffice.org. It is largely compatible with other major office suites, including Microsoft Office, and available on a variety of platforms...
office application suites, and the GIMP
GIMP
GIMP is a free software raster graphics editor. It is primarily employed as an image retouching and editing tool and is freely available in versions tailored for most popular operating systems including Microsoft Windows, Apple Mac OS X, and Linux.In addition to detailed image retouching and...
image editor.
The main supporting user space
User space
A conventional computer operating system usually segregates virtual memory into kernel space and user space. Kernel space is strictly reserved for running the kernel, kernel extensions, and most device drivers...
system tools and libraries from the GNU Project
GNU Project
The GNU Project is a free software, mass collaboration project, announced on September 27, 1983, by Richard Stallman at MIT. It initiated GNU operating system development in January, 1984...
(announced in 1983 by Richard Stallman
Richard Stallman
Richard Matthew Stallman , often shortened to rms,"'Richard Stallman' is just my mundane name; you can call me 'rms'"|last= Stallman|first= Richard|date= N.D.|work=Richard Stallman's homepage...
) are the basis for the Free Software Foundation
Free Software Foundation
The Free Software Foundation is a non-profit corporation founded by Richard Stallman on 4 October 1985 to support the free software movement, a copyleft-based movement which aims to promote the universal freedom to create, distribute and modify computer software...
's preferred name GNU/Linux
GNU/Linux naming controversy
The GNU/Linux naming controversy is a dispute among members of the free and open source software community over how to refer to the computer operating system commonly called Linux....
.
Unix
The UnixUnix
Unix is a multitasking, multi-user computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs, including Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, and Joe Ossanna...
operating system was conceived and implemented in 1969 at AT&T
AT&T
AT&T Inc. is an American multinational telecommunications corporation headquartered in Whitacre Tower, Dallas, Texas, United States. It is the largest provider of mobile telephony and fixed telephony in the United States, and is also a provider of broadband and subscription television services...
's Bell Laboratories in the United States
United States
The United States of America is a federal constitutional republic comprising fifty states and a federal district...
by Ken Thompson
Ken Thompson
Kenneth Lane Thompson , commonly referred to as ken in hacker circles, is an American pioneer of computer science...
, Dennis Ritchie
Dennis Ritchie
Dennis MacAlistair Ritchie , was an American computer scientist who "helped shape the digital era." He created the C programming language and, with long-time colleague Ken Thompson, the UNIX operating system...
, Douglas McIlroy
Douglas McIlroy
Malcolm Douglas McIlroy is a mathematician, engineer, and programmer. As of 2007 he is an Adjunct Professor of Computer Science at Dartmouth College. Dr...
, and Joe Ossanna
Joe Ossanna
Joseph F. Ossanna was a Member of the Technical Staff of the Bell Telephone Laboratories in Murray Hill, New Jersey...
. It was first released in 1971 and was initially entirely written in assembly language
Assembly language
An assembly language is a low-level programming language for computers, microprocessors, microcontrollers, and other programmable devices. It implements a symbolic representation of the machine codes and other constants needed to program a given CPU architecture...
, a common practice at the time. Later, in a key pioneering approach in 1973, Unix was re-written in the programming language C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....
by Dennis Ritchie
Dennis Ritchie
Dennis MacAlistair Ritchie , was an American computer scientist who "helped shape the digital era." He created the C programming language and, with long-time colleague Ken Thompson, the UNIX operating system...
(with exceptions to the kernel and I/O). The availability of an operating system written in a high-level language allowed easier portability
Porting
In computer science, porting is the process of adapting software so that an executable program can be created for a computing environment that is different from the one for which it was originally designed...
to different computer platforms. With a legal glitch forcing AT&T to license the operating system's source code to anyone who asked, Unix quickly grew and became widely adopted by academic institutions and businesses. In 1984, AT&T divested itself of Bell Labs. Free of the legal glitch requiring free licensing, Bell Labs began selling Unix as a proprietary
Proprietary software
Proprietary software is computer software licensed under exclusive legal right of the copyright holder. The licensee is given the right to use the software under certain conditions, while restricted from other uses, such as modification, further distribution, or reverse engineering.Complementary...
product.
GNU
The GNU ProjectGNU Project
The GNU Project is a free software, mass collaboration project, announced on September 27, 1983, by Richard Stallman at MIT. It initiated GNU operating system development in January, 1984...
, started in 1983 by Richard Stallman
Richard Stallman
Richard Matthew Stallman , often shortened to rms,"'Richard Stallman' is just my mundane name; you can call me 'rms'"|last= Stallman|first= Richard|date= N.D.|work=Richard Stallman's homepage...
, had the goal of creating a "complete Unix-compatible software system" composed entirely of free software
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...
. Work began in 1984. Later, in 1985, Stallman started the Free Software Foundation
Free Software Foundation
The Free Software Foundation is a non-profit corporation founded by Richard Stallman on 4 October 1985 to support the free software movement, a copyleft-based movement which aims to promote the universal freedom to create, distribute and modify computer software...
and wrote the GNU General Public License
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....
(GNU GPL) in 1989. By the early 1990s, many of the programs required in an operating system (such as libraries, compiler
Compiler
A compiler is a computer program that transforms source code written in a programming language into another computer language...
s, text editor
Text editor
A text editor is a type of program used for editing plain text files.Text editors are often provided with operating systems or software development packages, and can be used to change configuration files and programming language source code....
s, a Unix shell
Unix shell
A Unix shell is a command-line interpreter or shell that provides a traditional user interface for the Unix operating system and for Unix-like systems...
, and a windowing system) were completed, although low-level elements such as device driver
Device driver
In computing, a device driver or software driver is a computer program allowing higher-level computer programs to interact with a hardware device....
s, daemons
Daemon (computer software)
In Unix and other multitasking computer operating systems, a daemon is a computer program that runs as a background process, rather than being under the direct control of an interactive user...
, and the kernel were stalled and incomplete. Linus Torvalds has said that if the GNU kernel had been available at the time (1991), he would not have decided to write his own.
BSD
Although not released until 1992 due to legal complications, development of 386BSD386BSD
386BSD, sometimes called "Jolix", was a free Unix-like operating system based on BSD, first released in 1992. It ran on PC compatible computer systems based on the Intel 80386 microprocessor...
, from which NetBSD
NetBSD
NetBSD is a freely available open source version of the Berkeley Software Distribution Unix operating system. It was the second open source BSD descendant to be formally released, after 386BSD, and continues to be actively developed. The NetBSD project is primarily focused on high quality design,...
and FreeBSD
FreeBSD
FreeBSD is a free Unix-like operating system descended from AT&T UNIX via BSD UNIX. Although for legal reasons FreeBSD cannot be called “UNIX”, as the direct descendant of BSD UNIX , FreeBSD’s internals and system APIs are UNIX-compliant...
descended, predated that of Linux. Linus Torvalds
Linus Torvalds
Linus Benedict Torvalds is a Finnish software engineer and hacker, best known for having initiated the development of the open source Linux kernel. He later became the chief architect of the Linux kernel, and now acts as the project's coordinator...
has said that if 386BSD had been available at the time, he probably would not have created Linux.
MINIX
MINIXMinix
MINIX is a Unix-like computer operating system based on a microkernel architecture created by Andrew S. Tanenbaum for educational purposes; MINIX also inspired the creation of the Linux kernel....
is an inexpensive minimal Unix-like
Unix-like
A Unix-like operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification....
operating system, designed for education in computer science, written by Andrew S. Tanenbaum
Andrew S. Tanenbaum
Andrew Stuart "Andy" Tanenbaum is a professor of computer science at the Vrije Universiteit, Amsterdam in the Netherlands. He is best known as the author of MINIX, a free Unix-like operating system for teaching purposes, and for his computer science textbooks, regarded as standard texts in the...
. Starting with version 3, MINIX
MINIX 3
MINIX 3 is a project to create a small, highly reliable and functional Unix-like operating system. It is published under the BSD license.The main goal of the project is for the system to be fault-tolerant by detecting and repairing its own faults on the fly, without user intervention...
was free
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...
and redesigned for “serious” use.
In 1991 while attending the University of Helsinki
University of Helsinki
The University of Helsinki is a university located in Helsinki, Finland since 1829, but was founded in the city of Turku in 1640 as The Royal Academy of Turku, at that time part of the Swedish Empire. It is the oldest and largest university in Finland with the widest range of disciplines available...
, Torvalds, curious about the operating systems and frustrated by the licensing of MINIX limiting it to educational use only (which prevented any commercial use), began to work on his own operating system which eventually became the Linux kernel
Linux kernel
The Linux kernel is an operating system kernel used by the Linux family of Unix-like operating systems. It is one of the most prominent examples of free and open source software....
.
Torvalds began the development of the Linux kernel on MINIX, and applications written for MINIX were also used on Linux. Later Linux matured and it became possible for Linux to be developed under itself. Also GNU applications replaced all MINIX ones, because with code from the GNU system freely available, it was advantageous if this could be used with the fledgling operating system. Code licensed under the GNU GPL can be used in other projects, so long as they also are released under the same or a compatible license. In order to make Linux available for commercial use, Torvalds initiated a switch from his original license (which prohibited commercial redistribution) to the GNU GPL. Developers worked to integrate GNU components with Linux to make a fully functional and free operating system.
Commercial and popular uptake
Today, Linux distributions are used in every domain, from embedded systemEmbedded system
An embedded system is a computer system designed for specific control functions within a larger system. often with real-time computing constraints. It is embedded as part of a complete device often including hardware and mechanical parts. By contrast, a general-purpose computer, such as a personal...
s to supercomputer
Supercomputer
A supercomputer is a computer at the frontline of current processing capacity, particularly speed of calculation.Supercomputers are used for highly calculation-intensive tasks such as problems including quantum physics, weather forecasting, climate research, molecular modeling A supercomputer is a...
s, and have secured a place in server
Server (computing)
In the context of client-server architecture, a server is a computer program running to serve the requests of other programs, the "clients". Thus, the "server" performs some computational task on behalf of "clients"...
installations often using the popular LAMP
LAMP (software bundle)
LAMP is an acronym for a solution stack of free, open source software, referring to the first letters of Linux , Apache HTTP Server, MySQL and PHP , principal components to build a viable general purpose web server.The GNU project is advocating people to use the term "GLAMP" since what is known as...
application stack. Use of Linux distributions in home and enterprise desktops has been growing. They have also gained popularity with various local and national governments. The federal government of Brazil is well known for its support for Linux. News of the Russian military creating its own Linux distribution has also surfaced, and has come to fruition as the G.H.ost Project. The Indian state of Kerala
Kerala
or Keralam is an Indian state located on the Malabar coast of south-west India. It was created on 1 November 1956 by the States Reorganisation Act by combining various Malayalam speaking regions....
has gone to the extent of mandating that all state high schools run Linux on their computers. China
People's Republic of China
China , officially the People's Republic of China , is the most populous country in the world, with over 1.3 billion citizens. Located in East Asia, the country covers approximately 9.6 million square kilometres...
uses Linux exclusively as the operating system for its Loongson processor family to achieve technology independence. In Spain
Spain
Spain , officially the Kingdom of Spain languages]] under the European Charter for Regional or Minority Languages. In each of these, Spain's official name is as follows:;;;;;;), is a country and member state of the European Union located in southwestern Europe on the Iberian Peninsula...
some regions have developed their own Linux distributions, which are widely used in education and official institutions, like gnuLinEx
GnuLinEx
gnuLinEx, or LinEx, is a Debian-based GNU-Linux operating system that uses GNOME for its desktop. An initiative of the regional government of Extremadura, Spain, gnuLinEx is intended to be used in all schools in Extremadura, as well as in official institutions. It is actively promoted for business...
in Extremadura
Extremadura
Extremadura is an autonomous community of western Spain whose capital city is Mérida. Its component provinces are Cáceres and Badajoz. It is bordered by Portugal to the west...
and Guadalinex
Guadalinex
Guadalinex is an Ubuntu-based operating system promoted by the government of Andalusia . It is used in schools, public libraries, centers for elderly people and Guadalinfo centers.There are five different versions of Guadalinex:...
in Andalusia
Andalusia
Andalusia is the most populous and the second largest in area of the autonomous communities of Spain. The Andalusian autonomous community is officially recognised as a nationality of Spain. The territory is divided into eight provinces: Huelva, Seville, Cádiz, Córdoba, Málaga, Jaén, Granada and...
. Portugal
Portugal
Portugal , officially the Portuguese Republic is a country situated in southwestern Europe on the Iberian Peninsula. Portugal is the westernmost country of Europe, and is bordered by the Atlantic Ocean to the West and South and by Spain to the North and East. The Atlantic archipelagos of the...
is also using its own Linux distribution Caixa Mágica
Caixa Mágica
Caixa Mágica is a Portuguese Linux distribution based on Debian and maintained by Caixa Mágica Software. It uses the .deb format...
, used in the Magalhães netbook and the e-escola government program. France
France
The French Republic , The French Republic , The French Republic , (commonly known as France , is a unitary semi-presidential republic in Western Europe with several overseas territories and islands located on other continents and in the Indian, Pacific, and Atlantic oceans. Metropolitan France...
and Germany
Germany
Germany , officially the Federal Republic of Germany , is a federal parliamentary republic in Europe. The country consists of 16 states while the capital and largest city is Berlin. Germany covers an area of 357,021 km2 and has a largely temperate seasonal climate...
have also taken steps toward the adoption of Linux.
Linux distributions have also become popular in the netbook
Netbook
Netbooks are a category of small, lightweight, legacy-free, and inexpensive laptop computers.At their inception in late 2007 as smaller notebooks optimized for low weight and low cost — netbooks omitted certain features , featured smaller screens and keyboards, and offered reduced computing...
market, with many devices such as the ASUS Eee PC and Acer Aspire One
Aspire One
Acer Aspire One is a line of subcompact notebook computers, or netbooks, released in July 2008 by Acer Inc.It is based on the Intel Atom platform, which consists of the Intel Atom processor, Intel 945GSE Express chipset and Intel 82801GBM I/O controller, and is available in several shell colors:...
shipping with customized Linux distributions installed.
Current development
Torvalds continues to direct the development of the kernel. Stallman heads the Free Software Foundation, which in turn supports the GNU components. Finally, individuals and corporations develop third-party non-GNU components. These third-party components comprise a vast body of work and may include both kernel modules and user applications and libraries. Linux vendors and communities combine and distribute the kernel, GNU components, and non-GNU components, with additional package management software in the form of Linux distributionLinux distribution
A Linux distribution is a member of the family of Unix-like operating systems built on top of the Linux kernel. Such distributions are operating systems including a large collection of software applications such as word processors, spreadsheets, media players, and database applications...
s.
Design
A Linux-based system is a modular Unix-likeUnix-like
A Unix-like operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification....
operating system. It derives much of its basic design from principles established in Unix during the 1970s and 1980s. Such a system uses a monolithic kernel
Monolithic kernel
A monolithic kernel is an operating system architecture where the entire operating system is working in the kernel space and alone as supervisor mode...
, the Linux kernel
Linux kernel
The Linux kernel is an operating system kernel used by the Linux family of Unix-like operating systems. It is one of the most prominent examples of free and open source software....
, which handles process control, networking, and peripheral
Peripheral
A peripheral is a device attached to a host computer, but not part of it, and is more or less dependent on the host. It expands the host's capabilities, but does not form part of the core computer architecture....
and file system
File system
A file system is a means to organize data expected to be retained after a program terminates by providing procedures to store, retrieve and update data, as well as manage the available space on the device which contain it. A file system organizes data in an efficient manner and is tuned to the...
access. Device drivers are either integrated directly with the kernel or added as modules loaded while the system is running.
Separate projects that interface with the kernel provide much of the system's higher-level functionality. The GNU userland is an important part of most Linux-based systems, providing the most common implementation of the C library
C standard library
The C Standard Library is the standard library for the programming language C, as specified in the ANSI C standard.. It was developed at the same time as the C POSIX library, which is basically a superset of it...
, a popular shell
Shell (computing)
A shell is a piece of software that provides an interface for users of an operating system which provides access to the services of a kernel. However, the term is also applied very loosely to applications and may include any software that is "built around" a particular component, such as web...
, and many of the common Unix tools which carry out many basic operating system tasks. The graphical user interface
Graphical user interface
In computing, a graphical user interface is a type of user interface that allows users to interact with electronic devices with images rather than text commands. GUIs can be used in computers, hand-held devices such as MP3 players, portable media players or gaming devices, household appliances and...
(or GUI) used by most Linux systems is built on top of an implementation of the X Window System
X Window System
The X window system is a computer software system and network protocol that provides a basis for graphical user interfaces and rich input device capability for networked computers...
.
User interface
Users operate a Linux-based system through a command line interface (CLI), a graphical user interfaceGraphical user interface
In computing, a graphical user interface is a type of user interface that allows users to interact with electronic devices with images rather than text commands. GUIs can be used in computers, hand-held devices such as MP3 players, portable media players or gaming devices, household appliances and...
(GUI), or through controls attached to the associated hardware, which is common for embedded systems. For desktop systems, the default mode is usually a graphical user interface, by which the CLI is available through terminal emulator
Terminal emulator
A terminal emulator, terminal application, term, or tty for short, is a program that emulates a video terminal within some other display architecture....
windows or on a separate virtual console. Most low-level Linux components, including the GNU userland, use the CLI exclusively. The CLI is particularly suited for automation of repetitive or delayed tasks, and provides very simple inter-process communication
Inter-process communication
In computing, Inter-process communication is a set of methods for the exchange of data among multiple threads in one or more processes. Processes may be running on one or more computers connected by a network. IPC methods are divided into methods for message passing, synchronization, shared...
. A graphical terminal emulator
Terminal emulator
A terminal emulator, terminal application, term, or tty for short, is a program that emulates a video terminal within some other display architecture....
program is often used to access the CLI from a Linux desktop. A Linux system typically implements a CLI by a shell
Shell (computing)
A shell is a piece of software that provides an interface for users of an operating system which provides access to the services of a kernel. However, the term is also applied very loosely to applications and may include any software that is "built around" a particular component, such as web...
, which is also the traditional way of interacting with a Unix system. A Linux distribution specialized for servers may use the CLI as its only interface.
On desktop systems, the most popular user interfaces are the extensive desktop environment
Desktop environment
In graphical computing, a desktop environment commonly refers to a style of graphical user interface derived from the desktop metaphor that is seen on most modern personal computers. These GUIs help the user in easily accessing, configuring, and modifying many important and frequently accessed...
s KDE Plasma Desktop, GNOME
GNOME
GNOME is a desktop environment and graphical user interface that runs on top of a computer operating system. It is composed entirely of free and open source software...
, and Xfce
Xfce
Xfce is a free software desktop environment for Unix and other Unix-like platforms, such as Linux, Solaris, and BSD – though recent compatibility issues have arisen with regard to BSD Unix platforms...
, though a variety of additional user interfaces exist. Most popular user interfaces are based on the X Window System
X Window System
The X window system is a computer software system and network protocol that provides a basis for graphical user interfaces and rich input device capability for networked computers...
, often simply called "X". It provides network transparency
Network transparency
Network transparency in its most general sense refers to the ability of a protocol to transmit data over the network in a manner which is transparent to those using the applications that are using the protocol....
and permits a graphical application running on one system to be displayed on another where a user may interact with the application.
Other GUIs may be classified as simple X window manager
X window manager
An X window manager is a window manager which runs on top of the X Window System, a windowing system mainly used on Unix-like systems.Unlike the Mac OS and Microsoft Windows platforms which have historically provided a vendor-controlled, fixed set of ways to control how windows and panes display...
s, such as FVWM
FVWM
The F Virtual Window Manager is a virtual window manager for the X Window System. Originally a twm derivative, FVWM has evolved into a powerful and highly configurable environment for Unix-like systems.- History:...
, Enlightenment
Enlightenment (window manager)
Enlightenment, also known simply as E, is a stacking window manager for the X Window System which can be used alone or in conjunction with a desktop environment such as GNOME or KDE...
, and Window Maker
Window Maker
Window Maker is a free and open source window manager for the X Window System, allowing graphical applications to be run on Unix-like operating-systems...
, which provide a minimalist functionality with respect to the desktop environments. A window manager provides a means to control the placement and appearance of individual application windows, and interacts with the X Window System. The desktop environments include window managers as part of their standard installations (Metacity
Metacity
Metacity was the window manager used by default in the GNOME desktop environment until GNOME 3, where it was replaced by Mutter. The development of Metacity was started by Havoc Pennington and it is released under the GNU General Public License....
for GNOME, Kwin
KWin
KWin is a window manager for the X Window System. It is an integral part of the KDE Software Compilation, although it can be used on its own or with other desktop environments.- History :- Look and feel :...
for KDE, Xfwm for Xfce as of 2010) although users may choose to use a different window manager if preferred.
Development
The primary difference between Linux and many other popular contemporary operating systems is that the Linux kernelLinux kernel
The Linux kernel is an operating system kernel used by the Linux family of Unix-like operating systems. It is one of the most prominent examples of free and open source software....
and other components are free
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...
and open source software. Linux is not the only such operating system, although it is by far the most widely used.
Some free and open source software licenses are based on the principle of copyleft
Copyleft
Copyleft is a play on the word copyright to describe the practice of using copyright law to offer the right to distribute copies and modified versions of a work and requiring that the same rights be preserved in modified versions of the work...
, a kind of reciprocity: any work derived from a copyleft
Copyleft
Copyleft is a play on the word copyright to describe the practice of using copyright law to offer the right to distribute copies and modified versions of a work and requiring that the same rights be preserved in modified versions of the work...
piece of software must also be copyleft itself. The most common free software license, the GNU GPL, is a form of copyleft
Copyleft
Copyleft is a play on the word copyright to describe the practice of using copyright law to offer the right to distribute copies and modified versions of a work and requiring that the same rights be preserved in modified versions of the work...
, and is used for the Linux kernel and many of the components from the GNU project
GNU Project
The GNU Project is a free software, mass collaboration project, announced on September 27, 1983, by Richard Stallman at MIT. It initiated GNU operating system development in January, 1984...
.
Linux based distributions are intended by developers for interoperability
Interoperability
Interoperability is a property referring to the ability of diverse systems and organizations to work together . The term is often used in a technical systems engineering sense, or alternatively in a broad sense, taking into account social, political, and organizational factors that impact system to...
with other operating systems and established computing standards. Linux systems adhere to POSIX
POSIX
POSIX , an acronym for "Portable Operating System Interface", is a family of standards specified by the IEEE for maintaining compatibility between operating systems...
, SUS
Single UNIX Specification
The Single UNIX Specification is the collective name of a family of standards for computer operating systems to qualify for the name "Unix"...
, ISO
International Organization for Standardization
The International Organization for Standardization , widely known as ISO, is an international standard-setting body composed of representatives from various national standards organizations. Founded on February 23, 1947, the organization promulgates worldwide proprietary, industrial and commercial...
, and ANSI
American National Standards Institute
The American National Standards Institute is a private non-profit organization that oversees the development of voluntary consensus standards for products, services, processes, systems, and personnel in the United States. The organization also coordinates U.S. standards with international...
standards where possible, although to date only one Linux distribution has been POSIX.1 certified, Linux-FT.
Free software projects, although developed in a collaborative
Collaboration
Collaboration is working together to achieve a goal. It is a recursive process where two or more people or organizations work together to realize shared goals, — for example, an intriguing endeavor that is creative in nature—by sharing...
fashion, are often produced independently of each other. The fact that the software licenses explicitly permit redistribution, however, provides a basis for larger scale projects that collect the software produced by stand-alone projects and make it available all at once in the form of a Linux distribution
Linux distribution
A Linux distribution is a member of the family of Unix-like operating systems built on top of the Linux kernel. Such distributions are operating systems including a large collection of software applications such as word processors, spreadsheets, media players, and database applications...
.
A Linux distribution
Linux distribution
A Linux distribution is a member of the family of Unix-like operating systems built on top of the Linux kernel. Such distributions are operating systems including a large collection of software applications such as word processors, spreadsheets, media players, and database applications...
, commonly called a "distro", is a project that manages a remote collection of system software and application software packages available for download and installation through a network connection. This allows the user to adapt the operating system to his/her specific needs. Distributions are maintained by individuals, loose-knit teams, volunteer organizations, and commercial entities. A distribution is responsible for the default configuration of the installed Linux kernel, general system security, and more generally integration of the different software packages into a coherent whole. Distributions typically use a package manager such as dpkg
Dpkg
dpkg is the software at the base of the Debian package management system. dpkg is used to install, remove, and provide information about .deb packages....
, Synaptic, YAST, or Portage
Portage (software)
Portage is a package management system used by Gentoo Linux, based on the concept of ports collections. Gentoo is sometimes referred to as a meta-distribution due to the extreme flexibility of Portage, which makes it operating-system-independent. The Gentoo/Alt project is concerned with using...
to install, remove and update all of a system's software from one central location.
Community
A distribution is largely driven by its developer and user communities. Some vendors develop and fund their distributions on a volunteer basis, DebianDebian
Debian is a computer operating system composed of software packages released as free and open source software primarily under the GNU General Public License along with other free software licenses. Debian GNU/Linux, which includes the GNU OS tools and Linux kernel, is a popular and influential...
being a well-known example. Others maintain a community version of their commercial distributions, as Red Hat
Red Hat
Red Hat, Inc. is an S&P 500 company in the free and open source software sector, and a major Linux distribution vendor. Founded in 1993, Red Hat has its corporate headquarters in Raleigh, North Carolina with satellite offices worldwide....
does with Fedora and Novell
Novell
Novell, Inc. is a multinational software and services company. It is a wholly owned subsidiary of The Attachmate Group. It specializes in network operating systems, such as Novell NetWare; systems management solutions, such as Novell ZENworks; and collaboration solutions, such as Novell Groupwise...
does with openSUSE
OpenSUSE
openSUSE is a general purpose operating system built on top of the Linux kernel, developed by the community-supported openSUSE Project and sponsored by SUSE...
.
In many cities and regions, local associations known as Linux User Group
Linux User Group
A Linux User Group or Linux Users' Group or GNU/Linux User Group is a private, generally non-profit or not-for-profit organization that provides support and/or education for Linux users, particularly for inexperienced users...
s (LUGs) seek to promote their preferred distribution and by extension free software. They hold meetings and provide free demonstrations, training, technical support, and operating system installation to new users. Many Internet
Internet
The Internet is a global system of interconnected computer networks that use the standard Internet protocol suite to serve billions of users worldwide...
communities also provide support to Linux users and developers. Most distributions and free software / open source projects have IRC chatrooms or newsgroup
Newsgroup
A usenet newsgroup is a repository usually within the Usenet system, for messages posted from many users in different locations. The term may be confusing to some, because it is usually a discussion group. Newsgroups are technically distinct from, but functionally similar to, discussion forums on...
s. Online forums are another means for support, with notable examples being LinuxQuestions.org
LinuxQuestions.org
LinuxQuestions.org is a community-driven, self-help web site for Linux users. As of August 2011, it has over 462,200 registered members...
and the various distribution specific support and community forums, such as ones for Ubuntu
Ubuntu (operating system)
Ubuntu is a computer operating system based on the Debian Linux distribution and distributed as free and open source software. It is named after the Southern African philosophy of Ubuntu...
, Fedora
Fedora (operating system)
Fedora is a RPM-based, general purpose collection of software, including an operating system based on the Linux kernel, developed by the community-supported Fedora Project and sponsored by Red Hat...
, and Gentoo
Gentoo Linux
Gentoo Linux is a computer operating system built on top of the Linux kernel and based on the Portage package management system. It is distributed as free and open source software. Unlike a conventional software distribution, the user compiles the source code locally according to their chosen...
. Linux distributions host mailing list
Mailing list
A mailing list is a collection of names and addresses used by an individual or an organization to send material to multiple recipients. The term is often extended to include the people subscribed to such a list, so the group of subscribers is referred to as "the mailing list", or simply "the...
s; commonly there will be a specific topic such as usage or development for a given list.
There are several technology websites with a Linux focus. Print magazine
Magazine
Magazines, periodicals, glossies or serials are publications, generally published on a regular schedule, containing a variety of articles. They are generally financed by advertising, by a purchase price, by pre-paid magazine subscriptions, or all three...
s on Linux often include cover disks including software or even complete Linux distributions.
Although Linux distributions are generally available without charge, several large corporations sell, support, and contribute to the development of the components of the system and of free software
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...
. An analysis of the Linux kernel showed 75 percent of the code from December 2008 to January 2010 was developed by programmers working for corporations, leaving about 18 percent to the traditional, open source community. Some of the major corporations that contribute include Dell
Dell
Dell, Inc. is an American multinational information technology corporation based in 1 Dell Way, Round Rock, Texas, United States, that develops, sells and supports computers and related products and services. Bearing the name of its founder, Michael Dell, the company is one of the largest...
, IBM
IBM
International Business Machines Corporation or IBM is an American multinational technology and consulting corporation headquartered in Armonk, New York, United States. IBM manufactures and sells computer hardware and software, and it offers infrastructure, hosting and consulting services in areas...
, HP
Hewlett-Packard
Hewlett-Packard Company or HP is an American multinational information technology corporation headquartered in Palo Alto, California, USA that provides products, technologies, softwares, solutions and services to consumers, small- and medium-sized businesses and large enterprises, including...
, Oracle
Oracle Corporation
Oracle Corporation is an American multinational computer technology corporation that specializes in developing and marketing hardware systems and enterprise software products – particularly database management systems...
, Sun Microsystems
Sun Microsystems
Sun Microsystems, Inc. was a company that sold :computers, computer components, :computer software, and :information technology services. Sun was founded on February 24, 1982...
(now part of Oracle), Novell
Novell
Novell, Inc. is a multinational software and services company. It is a wholly owned subsidiary of The Attachmate Group. It specializes in network operating systems, such as Novell NetWare; systems management solutions, such as Novell ZENworks; and collaboration solutions, such as Novell Groupwise...
, and Nokia
Nokia
Nokia Corporation is a Finnish multinational communications corporation that is headquartered in Keilaniemi, Espoo, a city neighbouring Finland's capital Helsinki...
. A number of corporations, notably Red Hat
Red Hat
Red Hat, Inc. is an S&P 500 company in the free and open source software sector, and a major Linux distribution vendor. Founded in 1993, Red Hat has its corporate headquarters in Raleigh, North Carolina with satellite offices worldwide....
and Novell
Novell
Novell, Inc. is a multinational software and services company. It is a wholly owned subsidiary of The Attachmate Group. It specializes in network operating systems, such as Novell NetWare; systems management solutions, such as Novell ZENworks; and collaboration solutions, such as Novell Groupwise...
, have built a significant business around Linux distributions.
The free software licenses, on which the various software packages of a distribution built on the Linux kernel are based, explicitly accommodate and encourage commercialization; the relationship between a Linux distribution as a whole and individual vendors may be seen as symbiotic
Symbiosis
Symbiosis is close and often long-term interaction between different biological species. In 1877 Bennett used the word symbiosis to describe the mutualistic relationship in lichens...
. One common business model of commercial suppliers is charging for support, especially for business users. A number of companies also 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.
Another business model is to give away the software in order to sell hardware. This used to be the norm in the computer industry, with operating systems such as CP/M
CP/M
CP/M was a mass-market operating system created for Intel 8080/85 based microcomputers by Gary Kildall of Digital Research, Inc...
, Apple DOS
Apple DOS
Apple DOS refers to operating systems for the Apple II series of microcomputers from late 1978 through early 1983. Apple DOS had three major releases: DOS 3.1, DOS 3.2, and DOS 3.3; each one of these three releases was followed by a second, minor "bug-fix" release, but only in the case of Apple DOS...
and versions of Mac OS
Mac OS
Mac OS is a series of graphical user interface-based operating systems developed by Apple Inc. for their Macintosh line of computer systems. The Macintosh user experience is credited with popularizing the graphical user interface...
prior to 7.5 freely copyable (but not modifiable). As computer hardware standardized throughout the 1980s, it became more difficult for hardware manufacturers to profit from this tactic, as the OS would run on any manufacturer's computer that shared the same architecture.
Programming on Linux
Most Linux distributions support dozens of programming languageProgramming language
A programming language is an artificial language designed to communicate instructions to a machine, particularly a computer. Programming languages can be used to create programs that control the behavior of a machine and/or to express algorithms precisely....
s. The original development tools used for building both Linux applications and operating system programs are found within the GNU toolchain
GNU toolchain
The GNU toolchain is a blanket term for a collection of programming tools produced by the GNU Project. These tools form a toolchain used for developing applications and operating systems....
, which includes the GNU Compiler Collection
GNU Compiler Collection
The GNU Compiler Collection is a compiler system produced by the GNU Project supporting various programming languages. GCC is a key component of the GNU toolchain...
(GCC) and the GNU build system
GNU build system
The GNU build system, also known as the Autotools, is a suite of programming tools designed to assist in making source-code packages portable to many Unix-like systems....
. Amongst others, GCC provides compilers for Ada
Ada (programming language)
Ada is a structured, statically typed, imperative, wide-spectrum, and object-oriented high-level computer programming language, extended from Pascal and other languages...
, C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....
, C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...
, Java
Java (programming language)
Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...
, and Fortran
Fortran
Fortran is a general-purpose, procedural, imperative programming language that is especially suited to numeric computation and scientific computing...
. First released in 2003, the Low Level Virtual Machine
Low Level Virtual Machine
The Low Level Virtual Machine is a compiler infrastructure written in C++ that is designed for compile-time, link-time, run-time, and "idle-time" optimization of programs written in arbitrary programming languages...
project provides an alternate open-source compiler for many languages. Proprietary
Proprietary software
Proprietary software is computer software licensed under exclusive legal right of the copyright holder. The licensee is given the right to use the software under certain conditions, while restricted from other uses, such as modification, further distribution, or reverse engineering.Complementary...
compilers for Linux include the Intel C++ Compiler
Intel C++ Compiler
Intel C++ Compiler is a group of C and C++ compilers from Intel Corporation available for GNU/Linux, Mac OS X, and Microsoft Windows....
, Sun Studio
Sun Studio (software)
The Oracle Solaris Studio compiler suite is Oracle's flagship software development product for Solaris and Linux. It was formerly known as Sun Studio...
, and IBM XL C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....
/C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...
Compiler. BASIC
BASIC
BASIC is a family of general-purpose, high-level programming languages whose design philosophy emphasizes ease of use - the name is an acronym from Beginner's All-purpose Symbolic Instruction Code....
in the form of Visual Basic
Visual Basic
Visual Basic is the third-generation event-driven programming language and integrated development environment from Microsoft for its COM programming model...
is supported in such forms as Gambas
Gambas
Gambas is the name of an object-oriented dialect of the BASIC programming language as well as the integrated development environment that accompanies it. Designed to run on Linux and other Unix-like computer operating systems, its name is a recursive acronym for Gambas Almost Means Basic...
, FreeBASIC
FreeBASIC
FreeBASIC is a free/open source , 32-bit BASIC compiler for Microsoft Windows, protected-mode DOS , Linux, FreeBSD and Xbox....
, and XBasic
XBasic
XBasic is a variant of the BASIC programming language that was developed in the late 1980s for the Motorola 88000 CPU and Unix by Max Reason. In the early 1990s it was ported to Windows and Linux, and since 1999 it has been available as open source software with its runtime library under the LGPL...
.
Most distributions also include support for PHP
PHP
PHP is a general-purpose server-side scripting language originally designed for web development to produce dynamic web pages. For this purpose, PHP code is embedded into the HTML source document and interpreted by a web server with a PHP processor module, which generates the web page document...
, Perl
Perl
Perl is a high-level, general-purpose, interpreted, dynamic programming language. Perl was originally developed by Larry Wall in 1987 as a general-purpose Unix scripting language to make report processing easier. Since then, it has undergone many changes and revisions and become widely popular...
, Ruby, Python and other dynamic languages
Dynamic programming language
Dynamic programming language is a term used broadly in computer science to describe a class of high-level programming languages that execute at runtime many common behaviors that other languages might perform during compilation, if at all...
. While not as common, Linux also supports C# (via Mono
Mono (software)
Mono, pronounced , is a free and open source project led by Xamarin to create an Ecma standard compliant .NET-compatible set of tools including, among others, a C# compiler and a Common Language Runtime....
), Vala
Vala (programming language)
Vala is a programming language created with the goal of bringing modern language features to C, with no added runtime needs and with little overhead, by targeting the GObject object system. It is being developed by Jürg Billeter and Raffaele Sandrini. The syntax borrows heavily from C#...
, and Scheme
Scheme programming language
Scheme is one of the two main dialects of the programming language Lisp. Unlike Common Lisp, the other main dialect, Scheme follows a minimalist design philosophy specifying a small standard core with powerful tools for language extension. Its compactness and elegance have made it popular with...
. A number of Java Virtual Machine
Java Virtual Machine
A Java virtual machine is a virtual machine capable of executing Java bytecode. It is the code execution component of the Java software platform. Sun Microsystems stated that there are over 4.5 billion JVM-enabled devices.-Overview:...
s and development kits run on Linux, including the original Sun Microsystems JVM (HotSpot
HotSpot
HotSpot is a Java virtual machine for desktops and servers, maintained and distributed by Oracle Corporation. It features techniques such as just-in-time compilation and adaptive optimization designed to improve performance.-History:...
), and IBM's J2SE RE, as well as many open-source projects like Kaffe
Kaffe
Kaffe is a clean room design of a Java Virtual Machine. It comes with a subset of the Java Platform, Standard Edition , Java API, and tools needed to provide a Java runtime environment. Like most other Free Java virtual machines, Kaffe uses GNU Classpath as its class library.Kaffe, first released...
and JikesRVM
JikesRVM
Jikes RVM is a mature open source virtual machine that runs Java programs. Unlike most other JVMs it is written in Java, a style of implementation termed meta-circular.-History:...
.
GNOME
GNOME
GNOME is a desktop environment and graphical user interface that runs on top of a computer operating system. It is composed entirely of free and open source software...
and KDE
KDE
KDE is an international free software community producing an integrated set of cross-platform applications designed to run on Linux, FreeBSD, Microsoft Windows, Solaris and Mac OS X systems...
are popular desktop environment
Desktop environment
In graphical computing, a desktop environment commonly refers to a style of graphical user interface derived from the desktop metaphor that is seen on most modern personal computers. These GUIs help the user in easily accessing, configuring, and modifying many important and frequently accessed...
s and provide a framework for developing applications. These projects are based on the GTK+
GTK+
GTK+ is a cross-platform widget toolkit for creating graphical user interfaces. It is licensed under the terms of the GNU LGPL, allowing both free and proprietary software to use it. It is one of the most popular toolkits for the X Window System, along with Qt.The name GTK+ originates from GTK;...
and Qt
Qt (toolkit)
Qt is a cross-platform application framework that is widely used for developing application software with a graphical user interface , and also used for developing non-GUI programs such as command-line tools and consoles for servers...
widget toolkit
Widget toolkit
In computing, a widget toolkit, widget library, or GUI toolkit is a set of widgets for use in designing applications with graphical user interfaces...
s, respectively, which can also be used independently of the larger framework. Both support a wide variety of languages. There are a number of Integrated development environment
Integrated development environment
An integrated development environment is a software application that provides comprehensive facilities to computer programmers for software development...
s available including Anjuta
Anjuta
Anjuta is an integrated development environment for the C, C++, Java, JavaScript, Python and Vala computer programming languages, written for the GNOME project...
, Code::Blocks
Code::Blocks
Code::Blocks is a free and open source, cross-platform IDE which supports multiple compilers including GCC and MSVC. It is developed in C++ using wxWidgets as the GUI toolkit. Using a plugin architecture, its capabilities and features are defined by the provided plugins.Currently, Code::Blocks is...
, CodeLite
Codelite
CodeLite is a free, open-source, cross-platform IDE for the C/C++ programming languages.- History :On August 2006 Eran Ifrah, CodeLite's author, started a project named CodeLite...
, Eclipse, Geany
Geany
Geany is a lightweight cross-platform GTK+ text editor based on Scintilla and including basic Integrated Development Environment features. It is designed to have short load times, with limited dependency on separate packages or external libraries. It is available for a wide range of operating...
, ActiveState Komodo
ActiveState Komodo
Komodo Edit is a highly regarded free text editor for dynamic programming languages. Introduced in January 2007, with the release of version 4.3, Komodo Edit is built on top of the Open Komodo project...
, KDevelop
KDevelop
KDevelop is a free software integrated development environment for the KDE Platform on Unix-like computer operating systems. KDevelop includes no compiler. Instead, it uses an external compiler such as gcc to produce executable code....
, Lazarus
Lazarus (software)
Lazarus is a free cross-platform IDE which provides a Delphi-like development experience for Pascal and Object Pascal developers. It is developed for, and supported by, the Free Pascal compiler. Since early 2008, Lazarus has been available for Microsoft Windows, several Linux distributions,...
, MonoDevelop
MonoDevelop
MonoDevelop is an open source integrated development environment for the Linux platform, Mac OS X, and Microsoft Windows, primarily targeted for the development of software that uses both the Mono and Microsoft .NET frameworks...
, NetBeans
NetBeans
NetBeans refers to both a platform framework for Java desktop applications, and an integrated development environment for developing with Java, JavaScript, PHP, Python, Groovy, C, C++, Scala, Clojure, and others...
, Qt Creator
Qt Creator
Qt Creator is a cross-platform C++ integrated development environment which is part of the Qt SDK. It includes a visual debugger and an integrated GUI layout and forms designer. The editor's features includes syntax highlighting and autocompletion, but not tabs. Qt Creator uses the C++ compiler...
and Omnis Studio
Omnis Studio
Omnis Studio is a rapid application development tool that allows programmers and application developers to create enterprise, web, and mobile applications for Windows, Linux, and Mac OS X personal computers and servers across all business sectors....
, while the long-established editors Vim
Vim (text editor)
Vim is a text editor written by Bram Moolenaar and first released publicly in 1991. Based on the vi editor common to Unix-like systems, Vim is designed for use both from a command line interface and as a standalone application in a graphical user interface...
and Emacs
Emacs
Emacs is a class of text editors, usually characterized by their extensibility. GNU Emacs has over 1,000 commands. It also allows the user to combine these commands into macros to automate work.Development began in the mid-1970s and continues actively...
remain popular.
Uses
As well as those designed for general purpose use on desktops and servers, distributions may be specialized for different purposes including: computer architectureComputer architecture
In computer science and engineering, computer architecture is the practical art of selecting and interconnecting hardware components to create computers that meet functional, performance and cost goals and the formal modelling of those systems....
support, embedded systems
Embedded Linux
Embedded Linux is the use of Linux in embedded computer systems such as mobile phones, personal digital assistants, media players, set-top boxes, and other consumer electronics devices, networking equipment, machine control, industrial automation, navigation equipment and medical instruments...
, stability, security, localization to a specific region or language, targeting of specific user groups, support for real-time
Real-time computing
In computer science, real-time computing , or reactive computing, is the study of hardware and software systems that are subject to a "real-time constraint"— e.g. operational deadlines from event to system response. Real-time programs must guarantee response within strict time constraints...
applications, or commitment to a given desktop environment. Furthermore, some distributions deliberately include only free software
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...
. Currently, over three hundred distributions are actively developed, with about a dozen distributions being most popular for general-purpose use.
Linux is a widely ported
Porting
In computer science, porting is the process of adapting software so that an executable program can be created for a computing environment that is different from the one for which it was originally designed...
operating system kernel. The Linux kernel runs on a highly diverse range of computer architecture
Computer architecture
In computer science and engineering, computer architecture is the practical art of selecting and interconnecting hardware components to create computers that meet functional, performance and cost goals and the formal modelling of those systems....
s: in the hand-held ARM
ARM architecture
ARM is a 32-bit reduced instruction set computer instruction set architecture developed by ARM Holdings. It was named the Advanced RISC Machine, and before that, the Acorn RISC Machine. The ARM architecture is the most widely used 32-bit ISA in numbers produced...
-based iPAQ
IPAQ
iPAQ presently refers to a Pocket PC and personal digital assistant first unveiled by Compaq in April 2000; the name was borrowed from Compaq's earlier iPAQ Desktop Personal Computers. Since Hewlett-Packard's acquisition of Compaq, the product has been marketed by HP. The devices use a Windows...
and the mainframe
Mainframe computer
Mainframes are powerful computers used primarily by corporate and governmental organizations for critical applications, bulk data processing such as census, industry and consumer statistics, enterprise resource planning, and financial transaction processing.The term originally referred to the...
IBM
IBM
International Business Machines Corporation or IBM is an American multinational technology and consulting corporation headquartered in Armonk, New York, United States. IBM manufactures and sells computer hardware and software, and it offers infrastructure, hosting and consulting services in areas...
System z9, System z10; in devices ranging from mobile phone
Mobile phone
A mobile phone is a device which can make and receive telephone calls over a radio link whilst moving around a wide geographic area. It does so by connecting to a cellular network provided by a mobile network operator...
s to supercomputer
Supercomputer
A supercomputer is a computer at the frontline of current processing capacity, particularly speed of calculation.Supercomputers are used for highly calculation-intensive tasks such as problems including quantum physics, weather forecasting, climate research, molecular modeling A supercomputer is a...
s. Specialized distributions exist for less mainstream architectures. The ELKS kernel fork
Fork (software development)
In software engineering, a project fork happens when developers take a legal copy of source code from one software package and start independent development on it, creating a distinct piece of software...
can run on Intel 8086
Intel 8086
The 8086 is a 16-bit microprocessor chip designed by Intel between early 1976 and mid-1978, when it was released. The 8086 gave rise to the x86 architecture of Intel's future processors...
or Intel 80286
Intel 80286
The Intel 80286 , introduced on 1 February 1982, was a 16-bit x86 microprocessor with 134,000 transistors. Like its contemporary simpler cousin, the 80186, it could correctly execute most software written for the earlier Intel 8086 and 8088...
16-bit
16-bit
-16-bit architecture:The HP BPC, introduced in 1975, was the world's first 16-bit microprocessor. Prominent 16-bit processors include the PDP-11, Intel 8086, Intel 80286 and the WDC 65C816. The Intel 8088 was program-compatible with the Intel 8086, and was 16-bit in that its registers were 16...
microprocessors, while the µClinux kernel fork may run on systems without a memory management unit
Memory management unit
A memory management unit , sometimes called paged memory management unit , is a computer hardware component responsible for handling accesses to memory requested by the CPU...
. The kernel also runs on architectures that were only ever intended to use a manufacturer-created operating system, such as Macintosh
Macintosh
The Macintosh , or Mac, is a series of several lines of personal computers designed, developed, and marketed by Apple Inc. The first Macintosh was introduced by Apple's then-chairman Steve Jobs on January 24, 1984; it was the first commercially successful personal computer to feature a mouse and a...
computers (with both PowerPC
PowerPC
PowerPC is a RISC architecture created by the 1991 Apple–IBM–Motorola alliance, known as AIM...
and Intel processors), PDAs
Personal digital assistant
A personal digital assistant , also known as a palmtop computer, or personal data assistant, is a mobile device that functions as a personal information manager. Current PDAs often have the ability to connect to the Internet...
, video game console
Video game console
A video game console is an interactive entertainment computer or customized computer system that produces a video display signal which can be used with a display device to display a video game...
s, portable music players, and mobile phone
Mobile phone
A mobile phone is a device which can make and receive telephone calls over a radio link whilst moving around a wide geographic area. It does so by connecting to a cellular network provided by a mobile network operator...
s.
There are several industry associations and hardware conferences devoted to maintaining and improving support for diverse hardware under Linux, such as FreedomHEC
FreedomHEC
FreedomHEC is an annual "unconference" for computer hardware engineers and device driver developers. FreedomHEC focuses on making computer hardware interoperate with free software and open source operating systems, especially Linux....
.
Desktop
The popularity of Linux on standard desktop computers and laptops has been increasing over the years. Currently most distributions include a graphical user environment, with the two most popular environments being GNOMEGNOME
GNOME is a desktop environment and graphical user interface that runs on top of a computer operating system. It is composed entirely of free and open source software...
(which can utilize additional shells
Shell (computing)
A shell is a piece of software that provides an interface for users of an operating system which provides access to the services of a kernel. However, the term is also applied very loosely to applications and may include any software that is "built around" a particular component, such as web...
such as the default GNOME Shell and Ubuntu
Ubuntu (operating system)
Ubuntu is a computer operating system based on the Debian Linux distribution and distributed as free and open source software. It is named after the Southern African philosophy of Ubuntu...
Unity), and the KDE Plasma Desktop.
The performance of Linux on the desktop has been a controversial topic; for example in 2007 Con Kolivas
Con Kolivas
Con Kolivas is an Australian anaesthetist who is known on the Internet for his programming work on the Linux kernel in his spare time. He has written patches for the kernel to improve its desktop performance, particularly reducing I/O impact...
accused the Linux community of favoring performance on servers. He quit Linux kernel development because he was frustrated with this lack of focus on the desktop, and then gave a "tell all" interview on the topic. Since then a significant amount of development has been undertaken in an effort to improve the desktop experience. Projects such as Upstart
Upstart
Upstart is an event-based replacement for the traditional init daemon — the method by which several Unix-like computer operating systems perform tasks when the computer is started. It was written by Scott James Remnant, a former employee of Canonical Ltd....
and systemd
Systemd
systemd is a replacement for the System V init daemon for Linux. It is intended to provide a better framework for expressing services' dependencies, allow more work to be done in parallel at system startup, and to reduce shell overhead....
aim for a faster boot time.
Many popular applications are available for a wide variety of operating systems. For example Mozilla Firefox
Mozilla Firefox
Mozilla Firefox is a free and open source web browser descended from the Mozilla Application Suite and managed by Mozilla Corporation. , Firefox is the second most widely used browser, with approximately 25% of worldwide usage share of web browsers...
, OpenOffice.org
OpenOffice.org
OpenOffice.org, commonly known as OOo or OpenOffice, is an open-source application suite whose main components are for word processing, spreadsheets, presentations, graphics, and databases. OpenOffice is available for a number of different computer operating systems, is distributed as free software...
/LibreOffice
LibreOffice
LibreOffice is a free and open source office suite developed by The Document Foundation as a fork of OpenOffice.org. It is largely compatible with other major office suites, including Microsoft Office, and available on a variety of platforms...
and Blender
Blender (software)
Blender is a free and open-source 3D computer graphics software product used for creating animated films, visual effects, interactive 3D applications or video games. The current release version is 2.60, and was released on October 19, 2011...
have downloadable versions for all major operating systems. Furthermore, some applications were initially developed for Linux, such as Pidgin
Pidgin (software)
Pidgin is an open-source multi-platform instant messaging client, based on a library named libpurple. Libpurple has support for many commonly used instant messaging protocols, allowing the user to log into various services from one application.The number of Pidgin users was estimated to be over 3...
, and GIMP
GIMP
GIMP is a free software raster graphics editor. It is primarily employed as an image retouching and editing tool and is freely available in versions tailored for most popular operating systems including Microsoft Windows, Apple Mac OS X, and Linux.In addition to detailed image retouching and...
, and were ported to other operating systems including Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...
and Mac OS X
Mac OS X
Mac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...
due to their popularity. In addition, a growing number of proprietary desktop applications are also supported on Linux; see List of proprietary software for Linux. In the field of animation and visual effects, most high end software, such as Autodesk Maya
Maya (software)
Autodesk Maya , commonly shortened to Maya, is 3D computer graphics software that runs on Microsoft Windows, Mac OS and Linux, originally developed by Alias Systems Corporation and currently owned and developed by Autodesk, Inc. It is used to create interactive 3D applications, including video...
, Softimage XSI and Apple Shake
Shake (software)
Shake is a discontinued image compositing package used in the post-production industry. Shake was widely used in visual effects and digital compositing for film, HD and commercials. Shake exposes its node graph architecture graphically. It enables complex image processing sequences to be designed...
, is available for Linux, Windows and/or Mac OS X. There are also several companies that have ported their own or other companies' games to Linux.
Many types of applications available for Microsoft Windows and Mac OS X are also available for Linux. Commonly, either a free software
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...
application will exist which does the functions of an application found on another operating system, or that application will have a version that works on Linux, such as with Skype
Skype
Skype is a software application that allows users to make voice and video calls and chat over the Internet. Calls to other users within the Skype service are free, while calls to both traditional landline telephones and mobile phones can be made for a fee using a debit-based user account system...
and some video games. Furthermore, the Wine
Wine (software)
Wine is a free software application that aims to allow computer programs written for Microsoft Windows to run on Unix-like operating systems. Wine also provides a software library, known as Winelib, against which developers can compile Windows applications to help port them to Unix-like...
project provides a Windows compatibility layer to run unmodified Windows applications on Linux. CrossOver
Crossover
-Fiction and media:* Fictional crossover, a storyline combining characters or settings from separate fictional properties** Fictional crossovers in video games* Crossover , a 2002 documentary by Justin Lin...
is a proprietary solution based on the open source Wine
Wine (software)
Wine is a free software application that aims to allow computer programs written for Microsoft Windows to run on Unix-like operating systems. Wine also provides a software library, known as Winelib, against which developers can compile Windows applications to help port them to Unix-like...
project that supports running Windows versions of Microsoft Office
Microsoft Office
Microsoft Office is a non-free commercial office suite of inter-related desktop applications, servers and services for the Microsoft Windows and Mac OS X operating systems, introduced by Microsoft in August 1, 1989. Initially a marketing term for a bundled set of applications, the first version of...
, Intuit applications such as Quicken
Quicken
Quicken is a personal finance management tool developed by Intuit, Inc.Quicken runs on Windows and Macintosh systems. Previous versions ran on DOS. An online version is also available. The last version of Quicken for Macintosh computers was Quicken Essentials for Mac released in February 2010...
and QuickBooks
QuickBooks
QuickBooks is a line of business accounting software developed and marketed by Intuit.-History:Intuit was founded in 1983 by Scott Cook and Tom Proulx in Mountain View, California, USA...
, Adobe Photoshop
Adobe Photoshop
Adobe Photoshop is a graphics editing program developed and published by Adobe Systems Incorporated.Adobe's 2003 "Creative Suite" rebranding led to Adobe Photoshop 8's renaming to Adobe Photoshop CS. Thus, Adobe Photoshop CS5 is the 12th major release of Adobe Photoshop...
versions through CS2, and many popular games such as World of Warcraft
World of Warcraft
World of Warcraft is a massively multiplayer online role-playing game by Blizzard Entertainment. It is the fourth released game set in the fantasy Warcraft universe, which was first introduced by Warcraft: Orcs & Humans in 1994...
and Team Fortress 2
Team Fortress 2
Team Fortress 2 is a free-to-play team-based first-person shooter multiplayer video game developed by Valve Corporation. A sequel to the original mod Team Fortress based on the Quake engine, it was first released as part of the video game compilation The Orange Box on October 10, 2007 for Windows...
. In other cases, where there is no Linux port of some software in areas such as desktop publishing
Desktop publishing
Desktop publishing is the creation of documents using page layout software on a personal computer.The term has been used for publishing at all levels, from small-circulation documents such as local newsletters to books, magazines and newspapers...
and professional audio
Professional audio
Professional audio, also 'pro audio', refers to both an activity and a type of audio equipment. Typically it encompasses the production or reproduction of sound for an audience, by individuals who do such work as an occupation like live event support, using sound reinforcement systems designed for...
, there is equivalent software available on Linux.
The collaborative nature of free software development allows distributed teams to perform language localization
Language localisation
Language localisationThe spelling "localization", a variant of "localisation", is the preferred spelling in the US and Canada. is the second phase of a larger process of product translation and cultural adaptation to account for...
of some Linux distributions for use in locales where localizing proprietary systems would not be cost-effective. For example the Sinhalese language version of the Knoppix
Knoppix
Knoppix, or KNOPPIX , is an operating system based on Debian designed to be run directly from a CD / DVD or a USB key , one of the first of its kind for any operating system. Knoppix was developed by Linux consultant Klaus Knopper. When starting a program, it is loaded from the removable medium...
distribution was available significantly before Microsoft Windows XP was translated to Sinhalese. In this case the Lanka Linux User Group
Lanka Linux User Group
Lanka Linux User Group, also known as LK-LUG, is the premier organization in Sri Lanka for promoting free software. Since its beginnings in 1998 with 40 members, hundreds of Linux enthusiasts around the world have joined....
played a major part in developing the localized system by combining the knowledge of university professors, linguists, and local developers.
Installing, updating and removing software in Linux is typically done through the use of package managers such as the Synaptic Package Manager
Synaptic Package Manager
Synaptic is a computer program which is a GTK+ graphical user interface front-end to the Advanced Packaging Tool for the Debian package management system. Synaptic is usually used on systems based on deb packages but can also be used on systems based on RPM packages...
, PackageKit
PackageKit
PackageKit is an open source and free suite of software applications designed to provide a consistent and high-level front end for a number of different package management systems...
, and Yum Extender
Yellow dog Updater, Modified
The Yellowdog Updater, Modified is an open-source command-line package-management utility for RPM-compatible Linux operating systems and has been released under the GNU General Public License. It was developed by Seth Vidal and a group of volunteer programmers...
. While most major Linux distributions have extensive repositories, often containing tens of thousands of packages, not all the software that can run on Linux is available from the official repositories. Alternatively, users can install packages from unofficial repositories, download pre-compiled packages directly from websites, or compile the source code by themselves. All these methods come with different degrees of difficulty; compiling the source code is in general considered a challenging process for new Linux users, but it's hardly needed in modern distributions and is not a method specific to Linux.
Servers, mainframes and supercomputers
Linux distributions have long been used as serverServer (computing)
In the context of client-server architecture, a server is a computer program running to serve the requests of other programs, the "clients". Thus, the "server" performs some computational task on behalf of "clients"...
operating systems, and have risen to prominence in that area; Netcraft
Netcraft
Netcraft is an Internet services company based in Bath, England.Netcraft provides web server and web hosting market-share analysis, including web server and operating system detection...
reported in September 2006 that eight of the ten most reliable internet hosting companies ran Linux distributions on their web server
Web server
Web server can refer to either the hardware or the software that helps to deliver content that can be accessed through the Internet....
s. Since June 2008, Linux distributions represented five of the top ten, FreeBSD
FreeBSD
FreeBSD is a free Unix-like operating system descended from AT&T UNIX via BSD UNIX. Although for legal reasons FreeBSD cannot be called “UNIX”, as the direct descendant of BSD UNIX , FreeBSD’s internals and system APIs are UNIX-compliant...
three of ten, and Microsoft
Microsoft
Microsoft Corporation is an American public multinational corporation headquartered in Redmond, Washington, USA that develops, manufactures, licenses, and supports a wide range of products and services predominantly related to computing through its various product divisions...
two of ten; since February 2010, Linux distributions represented six of the top ten, FreeBSD
FreeBSD
FreeBSD is a free Unix-like operating system descended from AT&T UNIX via BSD UNIX. Although for legal reasons FreeBSD cannot be called “UNIX”, as the direct descendant of BSD UNIX , FreeBSD’s internals and system APIs are UNIX-compliant...
two of ten, and Microsoft
Microsoft
Microsoft Corporation is an American public multinational corporation headquartered in Redmond, Washington, USA that develops, manufactures, licenses, and supports a wide range of products and services predominantly related to computing through its various product divisions...
one of ten.
Linux distributions are the cornerstone of the LAMP
LAMP (software bundle)
LAMP is an acronym for a solution stack of free, open source software, referring to the first letters of Linux , Apache HTTP Server, MySQL and PHP , principal components to build a viable general purpose web server.The GNU project is advocating people to use the term "GLAMP" since what is known as...
server-software combination (Linux, Apache
Apache HTTP Server
The Apache HTTP Server, commonly referred to as Apache , is web server software notable for playing a key role in the initial growth of the World Wide Web. In 2009 it became the first web server software to surpass the 100 million website milestone...
, MySQL
MySQL
MySQL officially, but also commonly "My Sequel") is a relational database management system that runs as a server providing multi-user access to a number of databases. It is named after developer Michael Widenius' daughter, My...
, Perl
Perl
Perl is a high-level, general-purpose, interpreted, dynamic programming language. Perl was originally developed by Larry Wall in 1987 as a general-purpose Unix scripting language to make report processing easier. Since then, it has undergone many changes and revisions and become widely popular...
/PHP
PHP
PHP is a general-purpose server-side scripting language originally designed for web development to produce dynamic web pages. For this purpose, PHP code is embedded into the HTML source document and interpreted by a web server with a PHP processor module, which generates the web page document...
/Python
Python (programming language)
Python is a general-purpose, high-level programming language whose design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...
) which has achieved popularity among developers, and which is one of the more common platforms for website hosting.
Linux distributions have become increasingly popular on mainframes
Mainframe computer
Mainframes are powerful computers used primarily by corporate and governmental organizations for critical applications, bulk data processing such as census, industry and consumer statistics, enterprise resource planning, and financial transaction processing.The term originally referred to the...
in the last decade partly due to pricing and the open-source model. In December 2009, computer giant IBM
IBM
International Business Machines Corporation or IBM is an American multinational technology and consulting corporation headquartered in Armonk, New York, United States. IBM manufactures and sells computer hardware and software, and it offers infrastructure, hosting and consulting services in areas...
reported that it would predominantly market and sell mainframe-based Enterprise Linux Server.
Linux distribution
Linux distribution
A Linux distribution is a member of the family of Unix-like operating systems built on top of the Linux kernel. Such distributions are operating systems including a large collection of software applications such as word processors, spreadsheets, media players, and database applications...
s are also commonly used as operating systems for supercomputer
Supercomputer
A supercomputer is a computer at the frontline of current processing capacity, particularly speed of calculation.Supercomputers are used for highly calculation-intensive tasks such as problems including quantum physics, weather forecasting, climate research, molecular modeling A supercomputer is a...
s: , out of the top 500
TOP500
The TOP500 project ranks and details the 500 most powerful known computer systems in the world. The project was started in 1993 and publishes an updated list of the supercomputers twice a year...
systems, 459 (91.8%) run a Linux distribution. Linux was also selected as the operating system for the world's most powerful supercomputer, IBM's Sequoia
IBM Sequoia
Sequoia is a petascale Blue Gene/Q supercomputer being constructed by IBM for the National Nuclear Security Administration as part of the Advanced Simulation and Computing Program...
which will become operational in 2011.
Embedded devices
Due to its low cost and ease of customization, LinuxEmbedded Linux
Embedded Linux is the use of Linux in embedded computer systems such as mobile phones, personal digital assistants, media players, set-top boxes, and other consumer electronics devices, networking equipment, machine control, industrial automation, navigation equipment and medical instruments...
is often used in embedded system
Embedded system
An embedded system is a computer system designed for specific control functions within a larger system. often with real-time computing constraints. It is embedded as part of a complete device often including hardware and mechanical parts. By contrast, a general-purpose computer, such as a personal...
s. Android—based on a modified version of the Linux kernel—has become a major competitor of Nokia's older Symbian
Symbian
Symbian is a mobile operating system and computing platform designed for smartphones and currently maintained by Accenture. The Symbian platform is the successor to Symbian OS and Nokia Series 60; unlike Symbian OS, which needed an additional user interface system, Symbian includes a user...
OS, found in many smartphone
Smartphone
A smartphone is a high-end mobile phone built on a mobile computing platform, with more advanced computing ability and connectivity than a contemporary feature phone. The first smartphones were devices that mainly combined the functions of a personal digital assistant and a mobile phone or camera...
s. During the third quarter of 2010, 25.5% of smartphones sold worldwide used Android (with all Linux variants forming 27.6% of the total during that time). Cell phones and PDAs running Linux on open-source platforms became more common from 2007; examples include the Nokia N810
Nokia N810
The Nokia N810 Internet tablet is an Internet appliance from Nokia, announced on 17 October, 2007 at the Web 2.0 Summit in San Francisco. Despite Nokia's strong association with cellular products, the N810 is not a phone, but instead allows the user to browse the Internet and communicate using...
, Openmoko
Openmoko
Openmoko is a project to create a family of open source mobile phones, including the hardware specification and the operating system. The project was sponsored by Openmoko Inc....
's Neo1973, and the Motorola ROKR E8. Continuing the trend, Palm
Palm, Inc.
Palm, Inc., was a smartphone manufacturer headquartered in Sunnyvale, California, that was responsible for products such as the Pre and Pixi as well as the Treo and Centro smartphones. Previous product lines include the PalmPilot, Palm III, Palm V, Palm VII, Zire and Tungsten. While their older...
(later acquired by HP) produced a new Linux-derived operating system, webOS, which is built into its new line of Palm Pre
Palm Pre
The Palm Pre is a multimedia smartphone designed and marketed by Palm with a multi-touch screen and a sliding keyboard. The smartphone was the first to use Palm's Linux based mobile operating system, webOS...
smartphones. The popular TiVo
TiVo
TiVo is a digital video recorder developed and marketed by TiVo, Inc. and introduced in 1999. TiVo provides an on-screen guide of scheduled broadcast programming television programs, whose features include "Season Pass" schedules which record every new episode of a series, and "WishList"...
digital video recorder also uses a customized Linux, as do several network firewalls
Firewall (computing)
A firewall is a device or set of devices designed to permit or deny network transmissions based upon a set of rules and is frequently used to protect networks from unauthorized access while permitting legitimate communications to pass....
and routers from such makers as Cisco
Cisco
Cisco may refer to:Companies:*Cisco Systems, a computer networking company* Certis CISCO, corporatised entity of the former Commercial and Industrial Security Corporation in Singapore...
/Linksys
Linksys
Linksys by Cisco, commonly known as Linksys, is a brand of home and small office networking products now produced by Cisco Systems, though once a separate company founded in 1995 before being acquired by Cisco in 2003...
. The Korg OASYS
Korg OASYS
The Korg OASYS was a workstation synthesizer released in early 2005, 1 year after the successful Korg Triton Extreme. Unlike the Triton series, the OASYS was implemented on a custom Linux operating system and was designed to be arbitrarily expandable via software updates, with its functionality...
, the Korg KRONOS
Korg Kronos
The Kronos is a music workstation manufactured by Korg that combines nine different synthesizer sound engines with a sequencer, digital recorder, effects, a color touchscreen display and a keyboard...
, the Yamaha
Yamaha
Yamaha may refer to:* Yamaha Corporation, a Japanese company with a wide range of products and services** Yamaha Motor Company, a Japanese motorized vehicle-producing company...
Yamaha Motif XS/Motif XF music workstation
Music workstation
A music workstation is an electronic musical instrument providing the facilities of:*a sound module,*a music sequencer and* a musical keyboard.It enables a musician to compose electronic music using just one piece of equipment.-History:...
s, Yamaha S90XS/S70XS, Yamaha MOX6/MOX8 synthesizer
Synthesizer
A synthesizer is an electronic instrument capable of producing sounds by generating electrical signals of different frequencies. These electrical signals are played through a loudspeaker or set of headphones...
s, Yamaha Motif-Rack XS tone generator module
Synthesizer
A synthesizer is an electronic instrument capable of producing sounds by generating electrical signals of different frequencies. These electrical signals are played through a loudspeaker or set of headphones...
, and Roland RD-700GX digital piano
Digital piano
A digital piano is a modern electronic musical instrument, different from the electronic keyboard, designed to serve primarily as an alternative to a traditional piano, both in the way it feels to play and in the sound produced. It is meant to provide an accurate simulation of a real piano. Some...
also run Linux. Linux is also used in stage lighting
Stage lighting
Modern stage lighting is a flexible tool in the production of theatre, dance, opera and other performance arts. Several different types of stage lighting instruments are used in the pursuit of the various principles or goals of lighting. Stage lighting has grown considerably in recent years...
control systems, such as the WholeHogIII console.
Market share and uptake
Many quantitative studies of freeFree software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...
/ open source software focus on topics including market share and reliability, with numerous studies specifically examining Linux. The Linux market is growing rapidly, and the revenue of servers, desktops, and packaged software running Linux was expected to exceed $35.7 billion by 2008.
IDC
International Data Corporation
International Data Corporation is a market research and analysis firm specializing in information technology, telecommunications and consumer technology. IDC is a subsidiary of International Data Group...
's Q1 2007 report indicated that Linux held 12.7% of the overall server market at that time. This estimate was based on the number of Linux servers sold by various companies, and did not include server hardware purchased separately which had Linux installed on it later. In September 2008 Microsoft CEO Steve Ballmer
Steve Ballmer
Steven Anthony "Steve" Ballmer is an American business magnate. He is the chief executive officer of Microsoft, having held that post since January 2000. , his personal wealth is estimated at US$13.9 billion, ranking number 19 on the Forbes 400.-Early life:Ballmer was born in Detroit, Michigan to...
admitted that 60% of web-servers run Linux versus 40% that run Windows Server
Windows Server
Windows Server is a brand name for a group of server operating systems released by Microsoft Corporation. All are part of Microsoft Servers.- Members :This brand includes the following software:* Windows 2000 Server* Windows Server 2003...
.
Primarily based on web server statistics
Web analytics
Web analytics is the measurement, collection, analysis and reporting of internet data for purposes of understanding and optimizing web usage....
, various companies estimated that the desktop market share of Linux range from less than 1% to 4.8%. In comparison, Microsoft operating systems hold more than 85%.
Analysts and proponents attribute the relative success of Linux to its security, reliability, low cost, and freedom from vendor lock-in
Vendor lock-in
In economics, vendor lock-in, also known as proprietary lock-in or customer lock-in, makes a customer dependent on a vendor for products and services, unable to use another vendor without substantial switching costs...
.
The Wine
Wine (software)
Wine is a free software application that aims to allow computer programs written for Microsoft Windows to run on Unix-like operating systems. Wine also provides a software library, known as Winelib, against which developers can compile Windows applications to help port them to Unix-like...
compatibility layer allows users to run many programs designed for Windows under Linux. About half of Wine's code has been contributed by volunteers and half sponsored by commercial interests including CodeWeavers
CodeWeavers
CodeWeavers is a company that sells a proprietary version of Wine called CrossOver, for running Windows applications on Mac OS X and Linux. The company was founded in 1996 as a consultancy, eventually moving entirely over to Wine development and support...
, which produces a commercial version of the software.
Since 2009, Google has also provided funding to the Wine project.
The XO laptop
OLPC XO-1
The XO-1, previously known as the $100 Laptop, Children's Machine, and 2B1, is an inexpensive subnotebook computer intended to be distributed to children in developing countries around the world, to provide them with access to knowledge, and opportunities to "explore, experiment and express...
project of One Laptop Per Child is creating a new and potentially much larger Linux community which is planned to reach millions of schoolchildren and their families in the developing world. Major supporters of the project include Google
Google
Google Inc. is an American multinational public corporation invested in Internet search, cloud computing, and advertising technologies. Google hosts and develops a number of Internet-based services and products, and generates profit primarily from advertising through its AdWords program...
, Red Hat
Red Hat
Red Hat, Inc. is an S&P 500 company in the free and open source software sector, and a major Linux distribution vendor. Founded in 1993, Red Hat has its corporate headquarters in Raleigh, North Carolina with satellite offices worldwide....
, and eBay
EBay
eBay Inc. is an American internet consumer-to-consumer corporation that manages eBay.com, an online auction and shopping website in which people and businesses buy and sell a broad variety of goods and services worldwide...
. Although the XO will have a Windows option, it will be primarily deployed with Fedora
Fedora (operating system)
Fedora is a RPM-based, general purpose collection of software, including an operating system based on the Linux kernel, developed by the community-supported Fedora Project and sponsored by Red Hat...
Linux while using Sugar as the desktop environment.
For years Linux has been the platform of choice in the film industry. The first major film produced on Linux servers was 1997's Titanic
Titanic (1997 film)
Titanic is a 1997 American epic romance and disaster film directed, written, co-produced, and co-edited by James Cameron. A fictionalized account of the sinking of the RMS Titanic, it stars Leonardo DiCaprio as Jack Dawson, Kate Winslet as Rose DeWitt Bukater and Billy Zane as Rose's fiancé, Cal...
. Since then major studios including Dreamworks Animation
DreamWorks Animation
DreamWorks Animation SKG, Inc. is an American animation studio based in Glendale, California that creates animated feature films, television program and online virtual worlds...
, Pixar
Pixar
Pixar Animation Studios, pronounced , is an American computer animation film studio based in Emeryville, California. The studio has earned 26 Academy Awards, seven Golden Globes, and three Grammy Awards, among many other awards and acknowledgments. Its films have made over $6.3 billion worldwide...
, Weta Digital
Weta Digital
Weta Digital is a digital visual effects company based in Wellington, New Zealand. It was founded by Peter Jackson, Richard Taylor, and Jamie Selkirk in 1993 to produce the digital special effects for Heavenly Creatures. In 2007 Weta Digital’s Senior Visual Effects Supervisor, Joe Letteri, was...
, and Industrial Light & Magic have migrated to Linux. According to the Linux Movies Group, more than 95% of the servers and desktops at large animation and visual effects companies use Linux.
Copyright, trademark, and naming
Linux and most GNU software are licensed under the GNU General Public LicenseGNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....
(GPL). The GPL requires that anyone who distributes Linux must make the source code (and any modifications) available to the recipient under the same terms. Other key components of a software system may use other licenses; many libraries use the GNU Lesser General Public License
GNU Lesser General Public License
The GNU Lesser General Public License or LGPL is a free software license published by the Free Software Foundation . It was designed as a compromise between the strong-copyleft GNU General Public License or GPL and permissive licenses such as the BSD licenses and the MIT License...
(LGPL), a more permissive variant of the GPL, and the X.org
X.Org Server
X.Org Server refers to the X server release packages stewarded by the X.Org Foundation,which is hosted by freedesktop.org, and grants...
implementation of the X Window System
X Window System
The X window system is a computer software system and network protocol that provides a basis for graphical user interfaces and rich input device capability for networked computers...
uses the MIT License
MIT License
The MIT License is a free software license originating at the Massachusetts Institute of Technology . It is a permissive license, meaning that it permits reuse within proprietary software provided all copies of the licensed software include a copy of the MIT License terms...
.
Torvalds states that the Linux kernel will not move from version 2 of the GPL to version 3. He specifically dislikes some provisions in the new license which prohibit the use of the software in digital rights management
Digital rights management
Digital rights management is a class of access control technologies that are used by hardware manufacturers, publishers, copyright holders and individuals with the intent to limit the use of digital content and devices after sale. DRM is any technology that inhibits uses of digital content that...
, and it would also be impractical to obtain permission from all the copyright holders, who number in the thousands.
A 2001 study of Red Hat Linux
Red Hat Linux
Red Hat Linux, assembled by the company Red Hat, was a popular Linux based operating system until its discontinuation in 2004.Red Hat Linux 1.0 was released on November 3, 1994...
7.1 found that this distribution contained 30 million source lines of code
Source lines of code
Source lines of code is a software metric used to measure the size of a software program by counting the number of lines in the text of the program's source code...
. Using the Constructive Cost Model
COCOMO
**********************************************************************************************The Constructive Cost Model is an algorithmic software cost estimation model developed by Barry W. Boehm...
, 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
Proprietary software
Proprietary software is computer software licensed under exclusive legal right of the copyright holder. The licensee is given the right to use the software under certain conditions, while restricted from other uses, such as modification, further distribution, or reverse engineering.Complementary...
means, it would have cost about $ ( US dollars) to develop in the United States.
Most of the code (71%) was written in the C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....
programming
Computer programming
Computer programming is the process of designing, writing, testing, debugging, and maintaining the source code of computer programs. This source code is written in one or more programming languages. The purpose of programming is to create a program that performs specific operations or exhibits a...
language
Programming language
A programming language is an artificial language designed to communicate instructions to a machine, particularly a computer. Programming languages can be used to create programs that control the behavior of a machine and/or to express algorithms precisely....
, but many other languages were used, including C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...
, Lisp, assembly language
Assembly language
An assembly language is a low-level programming language for computers, microprocessors, microcontrollers, and other programmable devices. It implements a symbolic representation of the machine codes and other constants needed to program a given CPU architecture...
, Perl
Perl
Perl is a high-level, general-purpose, interpreted, dynamic programming language. Perl was originally developed by Larry Wall in 1987 as a general-purpose Unix scripting language to make report processing easier. Since then, it has undergone many changes and revisions and become widely popular...
, Python
Python (programming language)
Python is a general-purpose, high-level programming language whose design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...
, Fortran
Fortran
Fortran is a general-purpose, procedural, imperative programming language that is especially suited to numeric computation and scientific computing...
, and various shell script
Shell script
A shell script is a script written for the shell, or command line interpreter, of an operating system. It is often considered a simple domain-specific programming language...
ing languages. Slightly over half of all lines of code were licensed under the GPL. The Linux kernel itself was 2.4 million lines of code, or 8% of the total.
In a later study, the same analysis was performed for Debian GNU/Linux
Debian
Debian is a computer operating system composed of software packages released as free and open source software primarily under the GNU General Public License along with other free software licenses. Debian GNU/Linux, which includes the GNU OS tools and Linux kernel, is a popular and influential...
version 4.0 (etch, which was released in 2007). This distribution contained close to 283 million source lines of code, and the study estimated that it would have required about seventy three thousand man-years and cost US$ (in dollars) to develop by conventional means.
In the United States, the name Linux is a trademark registered to Linus Torvalds. Initially, nobody registered it, but on 15 August 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 him to have the trademark assigned to Torvalds, and in 1997 the case was settled. The licensing of the trademark has since been handled by the Linux Mark Institute
Linux Mark Institute
The Linux Mark Institute is an organization which administers the "Linux" trademark on behalf of Linus Torvalds for computer software which includes the Linux kernel, computer hardware utilizing Linux-based software, and for services associated with the implementation and documentation of...
. Torvalds has stated that he trademarked the name only to prevent someone else from using it. LMI originally charged a nominal sublicensing fee for use of the Linux name as part of trademarks, but later changed this in favor of offering a free, perpetual worldwide sublicense.
GNU/Linux
The Free Software FoundationFree Software Foundation
The Free Software Foundation is a non-profit corporation founded by Richard Stallman on 4 October 1985 to support the free software movement, a copyleft-based movement which aims to promote the universal freedom to create, distribute and modify computer software...
views Linux distributions that use GNU software as GNU variants
GNU variants
GNU variants is a term used by the Free Software Foundation and others to refer to operating systems which use application software and system libraries from GNU.- Hurd variants :...
and they ask that such operating systems be referred to as GNU/Linux or a Linux-based GNU system. The media and common usage, however, refers to this family of operating systems simply as Linux, as do many large Linux distributions (e.g. SUSE Linux and Mandriva Linux
Mandriva Linux
Mandriva Linux is a Linux distribution distributed by Mandriva. It uses the RPM Package Manager...
). Some distributions, notably Debian
Debian
Debian is a computer operating system composed of software packages released as free and open source software primarily under the GNU General Public License along with other free software licenses. Debian GNU/Linux, which includes the GNU OS tools and Linux kernel, is a popular and influential...
, use GNU/Linux. The naming issue remains controversial.
See also
- List of Linux distributions
- Comparison of Linux distributionsComparison of Linux distributionsTechnical variations of Linux distributions include support for different hardware devices and systems or software package configurations. Organizational differences may be motivated by historical reasons...
- Comparison of open source and closed source
- Comparison of operating systemsComparison of operating systemsThese tables compare general and technical information for a number of widely used and currently available operating systems.Because of the large number and variety of available Linux distributions, they are all grouped under a single entry; see comparison of Linux distributions for a detailed...
- Linux Documentation ProjectLinux Documentation ProjectThe Linux Documentation Project is an all-volunteer project that maintains a large collection of GNU and Linux-related documentation and publishes the collection online. It began as a way for hackers to share their documentation with each other and with their users, and for users to share...
- Linux Mark InstituteLinux Mark InstituteThe Linux Mark Institute is an organization which administers the "Linux" trademark on behalf of Linus Torvalds for computer software which includes the Linux kernel, computer hardware utilizing Linux-based software, and for services associated with the implementation and documentation of...
- Linux.comLinux.comLinux.com is the name of a website owned by the Linux Foundation. The site is currently a central source for Linux information, software, documentation and answers across the server, desktop/netbook, mobile, and embedded areas. Linux.com offers free Linux tutorials, news and blogs, discussion...
- List of operating systems
- Usage share of operating systems
- 9885 Linux9885 Linux9885 Linux is an asteroid discovered on October 12, 1994 by Spacewatch. The asteroid is named after the Linux operating system kernel.- See also :* 9793 Torvalds, an asteroid named after Linus Torvalds...