Linux (commonly pronounced IPA: /ËlɪnÉks/ in English; variants exist[1]) is the name usually given to any Unix-like computer operating system that uses the Linux Kernel. Linux is one of the most prominent examples of free software and open source development: typically all underlying source code can be freely modified, used, and redistributed by anyone.[2]
The name "Linux" comes from the Linux kernel, started in 1991 by Linus Torvalds. The system's utilities and libraries usually come from the GNU operating system, announced in 1983 by Richard Stallman. The GNU contribution is the basis for the alternative name GNU/Linux.[3]
Predominantly known for its use in servers, Linux is supported by corporations such as Dell, Hewlett-Packard, IBM, Novell, Oracle Corporation, Red Hat, and Sun Microsystems. It is used as an operating system for a wide variety of computer hardware, including desktop computers, supercomputers,[4] E-book readers, video game systems such as the PlayStation 2 and PlayStation 3, several arcade games, and embedded devices such as mobile phones and routers.
Contents [hide]
1 History
1.1 MINIX
1.2 Commercial and popular uptake
2 Pronunciation
3 Design
3.1 User interface
4 Development
4.1 Community
4.2 Programming on Linux
5 Uses
5.1 Desktop
5.2 Servers and supercomputers
5.3 Embedded devices
5.4 Market share and uptake
6 Code size
7 Licensing, trademark, and naming
7.1 GNU/Linux
8 See also
9 References
10 External links
History
See also: History of Linux
Richard Stallman, founder of the GNU projectThe Unix operating system was conceived and implemented in the 1960s and first released in 1970. Its wide availability and portability meant that it was widely adopted, copied and modified by academic institutions and businesses, with its design being influential on authors of other systems.
The GNU Project, started in 1984, had the goal of creating a "complete Unix-compatible software system"[5] made entirely of free software. In 1985, Richard Stallman created the Free Software Foundation and developed the GNU General Public License (GNU GPL). Many of the programs required in an OS (such as libraries, compilers, text editors, a Unix shell, and a windowing system) were completed by the early 1990s, although low level elements such as device drivers, daemons, and the kernel were stalled and incomplete.[6] 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.[7]
MINIX
Linus Torvalds, creator of the Linux kernel.MINIX, a Unix-like system intended for academic use, was released by Andrew S. Tanenbaum in 1987. The source code for MINIX 1.0 was printed in his book Operating Systems: Design and Implementation. While easily available, modification and redistribution were restricted (though that is not the case today). The code was covered by the copyrights of the textbook, published by Prentice Hall. In addition, MINIX's 16-bit design was not well adapted to the 32-bit design of the increasingly cheap and popular Intel 386 architecture for personal computers.
In 1991, Torvalds began to work on a non-commercial replacement for MINIX while he was attending the University of Helsinki.[8] This eventually became the Linux kernel.
In 1992, Tanenbaum posted an article on Usenet claiming Linux was obsolete. In the article, he criticized the operating system as being monolithic in design and being tied closely to the x86 architecture and thus not portable, which he described as "a fundamental error".[9] Tanenbaum suggested that those who wanted a modern operating system should look into one based on the microkernel model. The posting elicited the response of Torvalds, which resulted in a well known debate over the microkernel and monolithic kernel designs.[9]
Linux was dependent on the MINIX user space at first. With code from the GNU system freely available, it was advantageous if this could be used with the fledgling OS. 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 the Linux kernel compatible with the components from the GNU Project, Torvalds initiated a switch from his original license (which prohibited commercial redistribution) to the GNU GPL.[10] Linux and GNU developers worked to integrate GNU components with Linux to make a fully functional and free operating system.[6]
Commercial and popular uptake
Today Linux is used in numerous domains, from embedded systems[11] to supercomputers,[12] and has secured a place in web server installations with the popular LAMP application stack.[13] 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 distributions.
Pronunciation
In 1992, Torvalds explained how he pronounces the word Linux:
'li' is pronounced with a short [ee] sound: compare prInt, mInImal etc. 'nux' is also short, non-diphthong, like in pUt. It's partly due to minix: linux was just my working name for the thing, and as I wrote it to replace minix on my system, the result is what it is... linus' minix became linux.
—Linus Torvalds, comp.os.linux newsgroup[14]
Torvalds has made available an audio sample which indicates his own pronunciation, in English and Swedish.[15][16] However, an interview from the 2001 documentary Revolution OS indicates that his preferred pronunciation has slightly changed.[17]
Many English speakers tend to pronounce the name as [ËlɪnÊks] or [ËlɪnÉks].
Design
Linux is a modular Unix-like operating system. It derives much of its basic design from principles established in Unix during the 1970s and 1980s. Linux uses a monolithic kernel, the Linux kernel, which handles process control, networking, and peripheral and file system access. Device drivers are integrated directly with the kernel.
Much of Linux's higher-level functionality is provided by separate projects which interface with the kernel. The GNU userland is an important part of most Linux systems, providing the shell and Unix tools which carry out many basic operating system tasks. On top of the kernel, these tools form a Linux system with a graphical user interface that can be used, usually running in the X Window System.
User interface
See also: User interface
Linux can be controlled by one or more of a text-based command line interface (CLI), graphical user interface (GUI) (usually the default for desktop), or through controls on the device itself (common on embedded machines).
On desktop machines, KDE, GNOME and Xfce are the most popular user interfaces,[18] though a variety of other user interfaces exist. Most popular user interfaces run on top of the X Window System (X), which provides network transparency, enabling a graphical application running on one machine to be displayed and controlled from another.
Other GUIs include X window managers such as FVWM, Enlightenment, Fluxbox and Window Maker. The window manager provides a means to control the placement and appearance of individual application windows, and interacts with the X window system.
A Linux system usually provides a command line interface of some sort through a shell, which is the traditional way of interacting with a Unix system. A Linux distribution specialized for servers may use the CLI as its only interface. A “headless system” run without even a monitor can be controlled by the command line via a protocol such as SSH or telnet.
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.
Development
Main article: Linux distribution
A summarized history of Unix-like operating systems showing Linux's origins. Note that despite similar architectural designs and concepts being shared as part of the POSIX standard, Linux does not share any non-free source code with the original Unix or Minix.The primary difference between Linux and many other popular contemporary operating systems is that the Linux kernel and other components are free and open source software. Linux is not the only such operating system, although it is the best-known and most widely used. Some free and open source software licences 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 systems adhere to POSIX,[19] SUS,[20] ISO and ANSI standards where possible. To date, however, only the Linux-FT distribution has been POSIX.1 certified.[21]
Free software projects, although developed in a collaborative fashion, are often produced independently of each other. However, because the software licenses explicitly permit redistribution there is a basis for larger scale projects that collect the software produced by stand-alone projects and make this software available together in a Linux distribution.
A Linux distribution, commonly called a “distro”, is a project that manages a remote collection of Linux-based software, and facil