Linux
- This article is about Linux-based operating systems, GNU/Linux, and related topics. See Linux kernel for the kernel itself. See Linux (washing powder) for the Swiss brand of washing powder.
Linux is the name of a computer operating system and its kernel. It is one of the most famous examples of free software and of open-source development.
The name Linux strictly refers only to the Linux kernel, but it is commonly used to describe entire Unix-like operating systems (also known as GNU/Linux) that are based on the Linux kernel and libraries and tools from the GNU project. Linux distributions typically bundle large quantities of software with the core system.
The kernel was originally developed for Intel 386 microprocessors but now supports a variety of computer architectures. It is deployed in applications ranging from personal computers to supercomputers and embedded systems such as mobile phones and personal video recorders.
Initially developed and used mostly by individual enthusiasts, Linux has since gained the support of industry heavyweights such as IBM and Hewlett-Packard, and is overtaking many proprietary versions of Unix. Proponents and many analysts attribute this success to its vendor independence, low cost of implementation, security, and reliability.
History
The Linux kernel was initially written as a hobby by Finnish university student Linus Torvalds while attending the University of Helsinki. Linus originally used Minix on his computer, a simplified kernel written by Andrew Tanenbaum for teaching operating system design. However, Tanenbaum did not support extensions to his operating system, leading Linus to write a replacement for Minix. Although a running Minix system was originally necessary in order to install and run Linux, the Linux system quickly surpassed Minix in functionality.
The first version of Linux was released to the Internet in September 1991, with the second version following shortly thereafter in October [1]. Since then, thousands of developers around the world have participated in the project. The essay The Cathedral and the Bazaar discusses the development model of the Linux kernel and similar software.
The history of Linux is closely tied to that of GNU, a prominent free-software project led by Richard Stallman. The GNU project was started in 1983 for developing a complete Unix-like operating system, including software development tools and user application programs, entirely of free software. By 1991, when the first version of the Linux kernel was written, the GNU project had produced all the necessary components of this system except the kernel. Torvalds and other early Linux-kernel developers adapted their kernel to work with the GNU components to create a fully functional operating system. The kernel is licensed under the GNU General Public License (GPL) but it is not part of the GNU Project. The GNU project does have a kernel, Hurd, but it is still in development.
Tux the penguin is the logo and mascot of Linux. The Linux trademark (SN: 1916230) is owned by Linus Torvalds, registered for "Computer operating system software to facilitate computer use and operation." The assignment of the trademark to Torvalds occurred after an attorney, one William R. Della Croce, Jr, in 1996 began sending letters to various Linux distributors claiming to own the Linux trademark and demanding royalties. The distributors rapidly pooled resources, appealed against the original trademark assignment and had it reassigned to Linus Torvalds. The licensing of the trademark is now handled by the Linux Mark Institute.
See also: Timeline of Linux development
Pronunciation of Linux
In 1992, Torvalds explained [2]:
- "Li" is pronounced with a short [ee] sound: compare prInt, mInImal etc. 'nux' is also short, non-diphtong [sic], 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.
An audio file of Torvalds saying "Hello, this is Linus Torvalds, and I pronounce Linux as Linux" also exists [3]. Note that in English, "Linux" and "Minix" are usually pronounced with a short I sound that is different from Torvalds' Finland-Swedish pronunciation of these words.
See also List of words of disputed pronunciation#Names for a discussion of the various ways "Linux" is pronounced.
"GNU/Linux"
Main article: GNU/Linux naming controversy
Because the GNU tools, an essential part of nearly all Linux distributions, stem from a long-standing free operating system project that predates the Linux kernel, Richard Stallman and the Free Software Foundation ask that the combined system (regardless of distribution) be referred to as GNU/Linux. Although some distributions do use this name, most notably Debian GNU/Linux, most simply refer to the system as Linux. The distinction between Torvalds' kernel and entire Linux-based systems that contain the kernel is a perennial source of confusion, and the naming remains controversial.
Litigation
Main article: SCO-Linux Controversies
In March 2003, the SCO Group (SCO) filed a lawsuit against IBM claiming that IBM had contributed portions of SCO's intellectual property to the Linux kernel in violation of IBM's license to use UNIX. Additionally, SCO sent letters to a number of companies warning that their use of Linux without a license from SCO may be actionable, and claimed in the press that they would be suing individual Linux users. This controversy has involved lawsuits by SCO against Novell, DaimlerChrysler (partially dismissed in July, 2004), and AutoZone, and by Red Hat and others against SCO. To date, no proof of SCO's claims of copied code in Linux has been provided.
Linux distributions
Main article: Linux distribution
Linux is almost always used as part of a Linux distribution (distro). These are compiled by individuals, loose-knit teams, and various professional organizations. They include any number of additional system software and application programs, as well as certain processes to install these systems on a computer. Distributions are created for many different purposes, including localization, architecture support, real-time applications, and embedded systems, and there are some which deliberately include only free software.
A typical general-purpose distribution includes the Linux kernel, the GNU libraries and tools, command-line shells, and a tremendous amount of application software, from office applications suites and the graphical X Window System to compilers, text editors, and scientific tools.
Scale of development efforts
More Than a Gigabuck: Estimating GNU/Linux's Size, a study of Red Hat Linux 7.1, found that this particular distribution contained 30 million source lines of code (SLOC). Using the Constructive Cost Model (COCOMO), the study estimated that this distribution required about eight thousand person-years of development time. Had all this software been developed by conventional proprietary means, it would have cost 1.08 billion dollars (year 2000 dollars) to develop in the United States.
The majority of the code (71%) was written in the C programming language, but many other languages were used, including C++, Lisp, assembly language, Perl, Fortran, Python, and various shell scripting languages. Slightly over half of all lines of code were licensed under the GPL. The Linux kernel contained 2.4 million lines of code, or 8% of the total.
In a later study, Counting potatoes: the size of Debian 2.2, the same analysis was performed for Debian GNU/Linux version 2.2. This distribution contained over fifty-five million source lines of code, and would have cost 1.9 billion dollars (year 2000 dollars) to develop by conventional proprietary means.
Applications of Linux-based operating systems
In the past, a Linux user needed significant knowledge of computers in order to install and configure his system. For this reason and, being attracted by access to the internals of the system, Linux users have traditionally tended to be more technologically oriented than users of Microsoft Windows and Mac OS, often revelling in the tag of "hacker" or "geek". This stereotype has been dispelled in recent years by the increasing user-friendliness and broader adoption of many Linux distributions. Linux has made considerable progress in server and special-purpose markets, such as image rendering and Web services, and is beginning to make inroads into the high volume desktop market.
Linux is the cornerstone of the so-called LAMP server-software combination (Linux, Apache, MySQL, Perl/PHP/Python) that has achieved widespread popularity among Web developers, making it one of the most common platforms on the Web.
Linux is also often used in embedded systems. Its low cost makes it particularly useful in set-top boxes and for such devices as the Simputer, a computer aimed especially at low-income populations in developing nations. In mobile phones, it is an alternative to the common Symbian OS's software in the cell-phone market. In handheld devices, it is an alternative to the dominant Windows CE and Palm OS operating systems. The popular TiVo PVR also uses a customized version of Linux. A number of network firewalls and routers, including several from Linksys, use Linux internally, due to its advanced firewalling and routing capabilities.
In desktop environments like KDE and GNOME, Linux may be used with a user interface that is comparable to that of Mac OS or Microsoft Windows in addition to other desktop environments and to its traditional Unix-like command line interface. Graphical Linux software exists for many niches, but in some areas there is still greater breadth and quantity of software available for proprietary operating systems.
Usability, market share and moving from Windows
Once viewed as an operating system only computer geeks could use, Linux is today a much more user-friendly system, with many graphical interfaces and applications that bear a close resemblance to those of popular consumer operating systems.
Its market share for desktop usage remains small but growing. According to market research company IDC, 25% of servers and 2.8% of desktop computers were running Linux in 2002. However, argued advantages of Linux, such as lower cost, fewer security vulnerabilities, and lack of vendor lock-in have spurred a growing number of high-profile cases of mass adoption of Linux by corporations and governments for specific purposes.
Linux and other free software projects are frequently criticised for not going far enough in terms of ensuring usability, and the question of Linux's usability compared to Windows or the Macintosh remains hotly debated. For those only familiar with Windows or the Macintosh, using Linux may be difficult because many tasks do not work identically, and substantial differences remain in more sophisticated administrative and configuration tasks. It is also easier to find local technical support for Windows or MacOS than for Linux in many places.
Additionally, users might have to switch application software, and equivalents of some programs may not be available or there may be fewer options, as there are for computer games. However, more office and end-user applications now come with an automated installation program. Because of reluctance to change and the fact that most computers come with Windows pre-installed, there is a slow adoption of new desktop operating systems.
Support for certain new or obscure hardware remains an issue. Though many vendors provide drivers, the majority of available device drivers must be developed by volunteers after the release of the product. Often this development requires reverse engineering of some sort, as manufacturers often refuse to provide hardware specifications for their products.
There have been conflicting studies of Linux's usability and cost. Relevantive, a Berlin-based company specializing in consulting companies on the usability of software and Web services, concluded in 2003 that the usability of Linux for a set of specific desktop-related tasks was "nearly equal to Windows XP." On the other hand, Microsoft-sponsored studies by IDC have argued that Linux has a higher total cost of ownership (TCO) than Windows.
Linux distributions have been criticized for unpredictable development schedules, thus making enterprise users less comfortable with Linux than they might be with other systems (Marcinkowski, 2003). However, some observers claim that the intervals between Linux distribution releases are no worse, and often better, than the project management "schedule slipping" that occurs with other operating systems and with software systems in general. The large number of choices of Linux distributions can also confuse users and software vendors.
The paper Why Open Source Software / Free Software (OSS/FS)? Look at the Numbers! identifies many quantitative studies of open source software, including market share, reliability, with many studies specifically examining Linux.
Windows software under Linux
Several programs run Windows applications on Linux, with varying levels of success. By emulating hardware, VMware can run Windows and other operating systems under linux with near-perfect functionality, but with a severe speed penalty and no DirectX or OpenGL support. Win4Lin is significantly faster, but supports only Windows and requires a patched Linux kernel. Both require a Microsoft Windows Operating System CD or CD image.
Unlike hardware emulators, WINE and WINE-based programs like Crossover Office and Transgaming Cedega, use an application compatibility layer that is comparable in speed to native execution, but with support of varying quality for a limited number of popular applications and games with cases of unsupported applications working with minor documented tweaking. A Windows CD is not required.
Installation
Initially, difficulty of installation was a barrier to adoption of Linux-based systems, but the process has been made much easier in recent years. Many distributions are as easy to install as a comparable version of Windows. Also, personal computers that come with Linux distributions already installed are readily available from numerous vendors, including large, mainstream vendors like Hewlett-Packard and Wal-Mart.
The most common method of installing Linux, supported by all major distributions, is by booting from a CD that contains the installation program and installable software. Such a CD can be burned from a downloaded ISO image, purchased alone for a low price, or can be obtained as part of a box set that may also include manuals and additional commercial software.
Some distributions, such as Debian, can be installed from a small set of floppy disks. After a basic system is installed, more software can be added by downloading it from the Internet or using CDs.
Some distributions, such as Knoppix, can be run directly from a so-called live CD, rather than installing it to the hard drive. With this, one boots from the CD and can use Linux without making any modification to the contents of the hard drive. Similarly, some minimal distributions, such as tomsrtbt, can be run directly from a set of floppy disks without needing to change the hard drive contents.
Many distributions also support booting over a network, so an installation on a properly configured machine can be done over a network.
Configuration
Configuration of most settings is stored in a single directory called /etc
, while user-specific settings are stored in hidden files in the user's home directory. A few programs use a configuration database instead of files.
There are a number of ways to change these settings. The easiest way to do this is by using tools provided by distributions such as SuSE's YaST or Mandrake's Control Center. Others, like Linuxconf, Gnome System Tools, and Webmin, are not distribution-specific. There are also many command line utilities for configuring programs. Since nearly all settings are stored in ordinary text files they can be configured by any text editor.
Support
Technical support is provided by commercial suppliers and by other Linux users, usually in online forums, newsgroups and mailing lists. Linux User Groups (LUGs) all over the world assist many users, mostly locally, and often also hold "installfests" where users can install Linux with a nearby helping hand.
The business model of commercial suppliers is generally dependent on charging for support, especially for business users. Third-party commercial support is also readily available.
References
- Glyn Moody: Rebel Code: Linux and the Open Source Revolution, Perseus Publishing, ISBN 0-713-99520-3
- Gedda. R. (2004). Linux breaks desktop barrier in 2004: Torvalds. Retrieved January 16, 2004 from [4]
- Mackenzie, K. (2004). Linux Torvalds Q&A. Retrieved January 19, 2004 from [5]
- Marcinkowski, A. (2003). Linux needs reconsideration. Retrieved January 16, 2004 from [6]
- More Than a Gigabuck: Estimating GNU/Linux's Size by David A. Wheeler
- Counting potatoes: the size of Debian 2.2 by Jesús M. González-Barahona et al.
- Why Open Source Software / Free Software (OSS/FS)? Look at the Numbers! by David A. Wheeler
See also
External links
- The Linux Kernel Archives, managed by Linus Torvalds
- The Linux Documentation Project
- History of Linux
- Background information on Linux from Economist.com
- Guide to Using the Linux Desktop