Linux

sanatoriumdrumElectronics - Devices

Nov 25, 2013 (3 years and 6 months ago)

84 views

Linux

From Wikipedia, the free encyclopedia


(Redirected from
Linux operating system
)

Jump to:
navigation
,
search


This article is about operating systems that use the Linux kernel. For the kernel itself, see
Linux kernel
. For other uses, see
Linux (disambiguation)
.

Linux


Tux
, the penguin,

mascot of the Linux kernel

OS family

Unix
-
like

Kernel

type

Monolithic kernel

License

GNU General Public License

and
others

Working
state

Current

Linux

(commonly pronounced
IPA
:
/ˈlɪnəks/

in English; variants exist
[1]
) is a
Unix
-
like

computer
operating system
. 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 t
he basis for the
alternative name

GNU/Linux
.
[3]

Predominantly known for it
s 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]

video game systems, such as the
PlayS
tation 2

and
PlayStation 3
, several
arcade games
, and
embedded devices

such as
mobile phones
,
routers
, and
stage lighting

systems.

Contents

[
hide
]



1

History


o

1.1

MINIX


o

1.2

Commercial and popular uptake




2

Design


o

2.1

User interface




3

Development


o

3.1

Community


o

3.2

Programming on Linux




4

Uses


o

4.1

Desktop


o

4.2

Servers and
supercomputers


o

4.3

Embedded devices


o

4.4

Market share and uptake




5

Code size




6

Licensing, trademark, and naming


o

6.1

GNU/Linux




7

See also




8

References




9

External links


History

See also:
History of Linux


The
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.



Richard Stallman
, founder of the
GNU project

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 S
oftware 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 syst
em) 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

MINIX
, a Unix
-
like system intended for academic use, was released by
Andrew S.
Tanenbaum

in 1987. While source code for the system was available
, modification and
redistribution were restricted (that is not the case today). 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.



Linus Torvalds
, creator of the
Linux kernel
.

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, as he described "a fundamental
error."
[9]

Tanenbaum suggested that those who wanted a mode
rn operating system should
look into one based on the
microkernel

model. The posting elicited the response of
Torvalds and
Ken Thompson
, one of the founders of
Unix
, 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 f
ledgling 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
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 communit
ies combine
and distribute the kernel, GNU components, and non
-
GNU components, with additional
package management software in the form of
Linux distributions
.

Design

Li
nux 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 dir
ectly 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 impor
tant part of most Linux systems,
providing the
shell

and
Unix tools

which carry out many basic o
perating system tasks. On
top these tools form a Linux system with a
graphical user interface

that can be used,
usually running in the
X Window System
.



This section requires
expansion
.

User interface

See als
o:
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 machi
nes).

On desktop machines,
KDE
,
GNOME

and
Xfce

are the most popular user int
erfaces,
[14]

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

and
Window
Maker
. The window manager provides a means to control the placement and appearance
of individual app
lication windows, and interacts with the X window system.

A Linux system usually provides a
CLI

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 deskto
p.

Development

Main article:
Linux distribution



A summarised 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

nor
Minix
.

The primary difference betwe
en 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
.

As an operating system
underdog
, Linux aims for
interoperability

with other operating
systems and established computing standard
s. Linux systems adhere to
POSIX
,
[15]

SUS
,
[16]

ISO

and
ANSI

standards where possible. To date, however, only the Linux
-
FT
distribution has been POSIX.1 certified.
[17]

Free software projects, although developed in a
collaborative

fashion, are often produced
independently of each other. However, given t
hat the software licenses explicitly permit
redistribution, this 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

Linux
-
based software, and facilitates installation of a Linux operating
system. Distributions are maintained by individuals, loose
-
knit teams, volunteer
organizations, and commercial entities. They include system software and
application
software

in the form of
packages
, and distribution
-
specific software for initial system
installation and configuration as well as later package upgrades and installs. A
distribution

is responsible for the default configuration of installed Linux systems, system
security, and more generally integration of the different software packages into a
coherent whole.

Community



A command line session using
bash

Linux is largely driven by its develop
er and user communities. Some vendors develop
and fund their distributions on a volunteer basis,
Debian

being a well
-
known example.
Others maintain a community version of their commercial dist
ributions, as
Red Hat

does
with
Fedora
.

In many cities and regions, local associ
ations known as
Linux Users Groups

(LUGs) seek
to promote Linux and by extension free software. They hold meetings and provide free
demonstrations, training, technical su
pport, and operating system installation to new
users. There are also many
Internet

communities that seek to provide support to Linux
users and developers. Most distributions and open sour
ce projects have
IRC

chatrooms or
newsgroups
.
Online
forums

are another means for support, with notable examples being
LinuxQuestions.org

and the
Gentoo

forums. Linux distributions host
mailing lists
;
commonly there will be a specific topic such as usage or development for a given list.

There are several technology website
s with a Linux focus.
Linux Weekly News

is a
weekly digest of Linux
-
related news; the
Linux J
ournal

is an online magazine of Linux
articles published monthly;
Slashdot

is a technology
-
related news website with many
stories on Linux and open source software;
Groklaw

has written in depth about Linux
-
related legal proceedings and there are many articles relevant to the Linux kernel and its
relationship with
GNU

on the
GNU project's

website. Print
magazines

on Linux often
include
cover disks

including software or even complete Linux distributions.
[18]
[19]

Although Lin
ux is generally available free of charge, several large corporations have
established business models that involve selling, supporting, and contributing to Linux
and free software. These include
De
ll
,
IBM
,
HP
,
Sun Microsystems
,
Novell
, and
Red
Hat
. The free software licenses on which Linux is based explicitly accommodate and
encourage commercialization
; the relationship between Linux as a whole and individual
vendors may be seen as
symbiotic
. One common business model of commercial suppliers
is charging for support, especially for bus
iness 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.

Programming on Linux

Most Linux distributions support dozens of
programming languages
. The most common
colle
ction of utilities for building both Linux applications and operating system programs
is 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
. The Linux kernel itself is written to be co
mpiled with GCC.
Proprietary

compilers for Linux include the
Intel C++ Co
mpiler

and IBM XL C/C++
Compiler.

Most distributions also include support for
Perl
,
Ruby
,
Python

and other
dynamic
languages
. Examples
of languages that are less common, but still well
-
supported, are
C#

via the
Mono

project, and
Scheme
. A number of
Java Virtual Machines

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
. The two main frameworks for
developing graphical applications are those of
GNOME

and
KDE
. These projects are
based on the
GTK+

and
Qt

widget toolkits
, 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 environments

available including
Anjuta
,
Code::Blocks
,

Eclipse
,
KDevelop
,
Lazarus
,
MonoDevelop
,
NetBeans
, and
Omnis Studio

while the long
-
established editors
Vim

and
Emacs

remain popular.
[20]

Uses

As well as those designed for general purpose use on desktops and servers, distributions
may be specialized for different purposes including:
computer architecture

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.
[21]

Linux is a widely
ported

operating system. While the Linux kernel was originally
designed only for
Intel 80386

microprocessors
, it now runs on a more diverse range of
computer architectures

than any other operating system: in the hand
-
held
ARM
-
based
iPAQ

and the
mainframe

IBM

System z9
, in devi
ces ranging from
mobile phones

to
supercomputers
.
[22]

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,
PDAs
,
video game consoles
,
portable
music players
, and
mobile phones
.

Desktop



A
KDE 4

desktop.



A
GNOME

2.20 desktop.

Main article:
Desktop Linux

Although there is a lack of Linux ports
for some
Mac OS X

and
Microsoft Windows

programs in domains such as
desktop publishing
[23]

and
professional audio
,
[24]
[25]
[26]

applications equivalent to thos
e available for Mac and Windows are available for
Linux.
[27]

Most Linux distributions provide a program for browsing a list of thousands of
free
software

applications that have already been tested and configured for a specific
distribution. These free programs can be downloaded and installed with one mouse click
and a digital signature guarantees that no one has

added a virus or a spyware to these
programs.

Many
free software

titles that are popular on Windows, such as
Pidgin
,
Mozilla Firefox
,
Openoffice.org
, and
GIMP
, are available for Linux. A growing amount of proprietary
desktop software is also supported under Linux,
[28]

examples being
Adobe Flash Player
,
Acrobat Reader
,
Matlab
,
Nero Burning ROM
,
Opera
,
Google Picasa
,
RealPlayer
, and
Skype
. In the field of animation and visual effects, most high end soft
ware, such as
AutoDesk Maya, Softimage XSI and Apple Shake, is available for Linux, Windows
and/or Mac OS X.
CrossOver

is a proprietary solution based on the open source
Wine

project that supports running older Windows versions of
Microsoft Office

and
Adobe
Photoshop

versions through CS2.
Microsoft Office 2007

and Adobe Photoshop CS3 are
known not to

work.
[29]
[30]

Besides the free Windows compatibility layer
Wine
, most distributions offer
Dual boot

and
X86 virtualization

for
running both Linux and Windows on the same computer.

Linux's open nature allows distributed teams to
localize

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 availabl
e for a long time
before
Microsoft Windows XP

was translated to Sinhalese. In this case the Lanka Linux
User Group played a major part in developing the localized s
ystem by combining the
knowledge of university professors,
linguists
, and local developers.

The performance of Linux on the desktop has been a controversial topic, with at least one
key Li
nux kernel developer, Con Kolivas, accusing the Linux community of favouring
performance on servers. He quit Linux development because he was frustrated with this
lack of focus on the desktop, and then gave a 'tell all' interview on the topic.
[31]

See also:
Linux gaming


Servers and supercomputers

Historically, Linux has mainly been used as a
server

operating system, and has risen to
prominence in that area;
Netcraft

reported in February 2008 that five of th
e ten most
reliable internet hosting companies run Linux on their
web servers
.
[32]

This is due to its
relative sta
bility and long uptime, and the fact that desktop software with a graphical user
interface for servers is often unneeded. Enterprise and non
-
enterprise Linux distributions
may be found running on servers. Linux is the cornerstone of the
LAMP

server
-
software
combination (Linux,
Apache
,
MySQL
,
Perl
/
PHP
/
Python
) which has achieved popularity
among developers, and which is one of the more common platforms for website hosting.

Linux is commonly used as an operating system for
supercomputers
. As of
November
2007
, out of the top 500 systems, 426 (85.2%) run Linux.
[33]

Embed
ded devices

Main article:
Embedded Linux

See also:
Linux devices


Due to its low cost and ability
to be easily modified, an
embedded Linux

is often used in
embedded systems
. Linux has become

a major competitor to the proprietary
Symbian OS

found in the majority of smartphones


16.7% of
smartphones

so
ld worldwide during
2006 were using Linux
[34]



and it is an alternative to the proprietary
Windows CE

and
Palm OS

operating systems on
mobile devices
. Cell phones or PDAs running on Linux
and built on open source platform bec
ame a trend from 2007, like
Nokia N810
,
Openmoko
's
Neo1973

and the on
-
going
Google Android
. The popular
TiVo

digital video
recorder uses a customized version of Linux
.
[35]

Several network
firewall

and
router

standalone p
roducts, including several from
Linksys
, use Linux internally, using its
advanced firewall and routing capabilities. The
Korg OASYS

and the
Yamaha Motif XS

music workstations

also run Linux.
[36]

Further more Linux is used in the leading
stage
lighting

control system, FlyingPig/HighEnd WholeHogIII Console
[37]
.

Market share and uptake

Main article:
Linux adoption

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

The Linux market
is growing rapidly, and the revenue of servers, desktops, and pack
aged software running
Linux is expected to exceed $35.7 billion by 2008.
[39]

IDC
's report for Q1 2007 says that Linux now holds 12.7% of the overall server
market.
[40]

This estimate was based on the number of Linux server
s sold by various
companies.

Desktop adoption of Linux is approximately 1%. In comparison,
Microsoft operating
systems

hold more than
90%.
[41]
[42]
[43]
[44]
[45]
[46]
[47]

The frictional cost of switching operating systems and lack of support for certain
hardware and application programs designed for
Microsoft Windows

have been t
wo
factors that have inhibited adoption. Proponents and analysts attribute the relative success
of Linux to its security, reliability,
[48]

low cost, and freedom from
vendor lock
-
in
.
[49]

Also most recently Google has begun to fund
Wine
, which acts as a compatibility layer,
allowing users to run some Windows programs under Linux.

The
XO laptop

project of One Laptop Per Child is creating a ne
w and potentially much
larger Linux community, planned to reach
several hundred million schoolchildren

and
their families and commu
nities in developing countries.
Six countries

have ordered a
million or more units each for delivery in 2007 to distribute to schoolchildren at no
charge.
Google
,
Red Hat
, and
eBay

are major supporters of the project.
[
citation needed
]

See also:
Usage s
hare of desktop operating systems


Code size

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 devel
opment time. According to
the study, if all this software had been developed by conventional
proprietary

means, it
would have cost about 1.08 billion dollars (year
2000 U.S. dollars) to develop in the
United States.
[50]

Most of the code (71%) was written in the
C

programming

language
, but many other
l
anguages were used, including
C++
,
assembly language
,
Perl
,
Python
,
Fortran
, and
various
shell scripting

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.
[50]

In a later study, the same analysis was performed for Debian GNU/Linux version 4.0.
[51]

This distribution contained over 283 million source
lines of code, and the study estimated
that it would have cost 5.4 billion Euros to develop by conventional means.

Licensing, trademark, and naming

The Linux kernel and most GNU software are
licensed

under the
GNU General Public
License

(GPL). The GPL requires that anyone who distributes the Linux kernel must
make the sour
ce code (and any modifications) available to the recipient under the same
terms. In 1997, Linus Torvalds stated, “Making Linux GPL'd was definitely the best
thing I ever did.”
[52]

Other
key components of a Linux system may use other licenses;
many libraries use the
GNU Lesser General Public License

(LGPL), a more permissiv
e
variant of the GPL, and the
X Window System

uses the
MIT License
.

Torvalds has publicly stated tha
t he would not move the Linux kernel (currently licensed
under GPL version 2) to version 3 of the GPL, released in mid
-
2007, specifically citing
some provisions in the new license which prohibit the use of the software in
digital rights
management
.
[53]
[54]

In the United

States, the name
Linux

is a
trademark

registered to Linus Torvalds.
[55]

Initially, nobody registered it, but on
August 15
,
1994
, William R. Della Croce, Jr. filed
for the trademark
Linux
, and then demanded royalties from Linux distributors.
In 1996,
Torvalds and some affected organizations sued him to have the trademark assigned to
Torvalds, and in 1997 the case was settled.
[56]

The licensing of the trademark has since
been

handled by the
Linux Mark Institute
. Torvalds has stated that he only trademarked
the name to prevent someone else from using it, but was bound in 2005 by
United States
trademark law

to take active measures to enforce the trademark. As a result, the LMI sent
out a number of letters to distribution vendors reques
ting that a fee be paid for the use of
the name, and a number of companies have complied.
[57]

See also:
SCO
-
Linux controversies


GNU/Linux

Main article:
GNU/Linux naming controversy

The
Free Software Foundation

views Linux distributions which 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
.
[58]

However, the media and population at large refers to this
family of operating systems simply as
Linux
. While some distributo
rs make a point of
using the aggregate form, most notably
Debian

with the
Debian GNU/Linux

distribution,
the

term's use outside of the enthusiast community is limited. The distinction between the
Linux kernel and distributions based on it plus the GNU system is a source of confusion
to many newcomers, and the naming remains controversial.