Linux range of use: Difference between revisions

Content deleted Content added
Virtualization: remove DRBD (block storage), clarify category -- change from "Related" to "serving a similar use-case"
WP:LINKs: adds, updates, fix-cut: WP:NOPIPEs, WP:REPEATLINKs. Article title section MOS:HEADing word repeats cut. Full terms define before WP:ABBReviations. Small WP:EoS WP:COPYEDITs.
Line 1:
{{Refimprove|date=November 2013}}
[[Linux kernel]]-based [[operating systemssystem]]s have foundbeen widewidely adoptionadopted andin a very far-reachingwide range of useuses. All the [[Free and open-source#Advantages and benefits of free and open-source software|advantages and benefits of [[free and open-source software]] apply to the Linux kernel itself, and also to most of the rest of the system software.
 
==LinuxFor ondesktop the desktopcomputers==
{{Main|Linux on the desktop}}
 
The common [[human interface device]]s (HIDs) available for [[desktop computer]]s, [[laptop]]s and similar devices determine the design of the (graphical) human-computer interface implemented intoin software. There are a couple offew software packages to choose among, when building an accordingly designed [[graphical user interface]]. The generic input driver for the Linux kernel is [[evdev]], but here are several [[input method]]s implemented as middleware, i.e., on topatop and not as part of the Linux kernel.
 
==Linux as aFor gaming platform==
{{Main|Linux as a gaming platform}}
 
As the actual adoption is proving, the Linux kernel is also suitable as a gaming platform. Of course, additionaladded software is necessaryneeded to either augment a typical desktop installation to be suitable as a gaming platform, or to create a Linux-based operating system for thea sole purpose of being adedicated gaming platform.
 
==Linux forFor servers and clusters==
{{Main|Linux for servers}}
 
=== Servers ===
There is an abundance of server software (''cf. [[client–server model]]'') supporting various [[communications protocol]]s, such as e.g. [[HTTP]] (web server), [[SMTP]] (mail transfer agents), [[POP3]] and [[IMAP]] (e-mail server), [[Lightweight Directory Access Protocol|LDAP]] (LDAP), [[Server Message Block|SMB/CIFS]] (SMB-CIFS) ([[Samba (software)|Samba]]), [[Simple Network Management Protocol|SNMP]] (SNMP) (for [[system monitor|system]] and [[network monitoring]]), [[Session Initiation Protocol|SIP]] (SIP), various [[routing protocol]]s that runsrun, partiallypartly exclusively, on top of the Linux kernel.
 
Some software bundles, also called [[solution stack]]s, have been that widely adopted, that their acronyms have become well known, e.g. Examples include:
* [[LAMP (software bundle)|LAMP]] – for [[Dynamic web page|dynamic web sites]]
* [[LYME (software bundle)|LYME]] and LYCE – for [[Dynamic web page|dynamic web sites]]
 
For [[dynamic web page]]s:
Linux kernel-based operating systems also serve as basis for cloud computing solutions, such as:
* ''Linux'' [[operating system]], ''[[Apache HTTP Server|Apache]]'' web server, ''[[MySQL]]'' [[database]], and ''[[PHP]]'' [[programming language]] ([[LAMP (software bundle)|LAMP]])
* [[LEAP (software bundle)|LEAP]] – for [[cloud computing]]
* ''Linux'' operating system, ''[[Yaws (web server)|Yaws]]'' [[web server]], ''[[Mnesia]]'' or ''[[CouchDB]]'' [[database]], and ''[[Erlang (programming language)|Erlang]]'' programming language ([[LYME (software bundle)|LYME]], LYCE)
 
For [[cloud computing]]:
* ''Linux'' operating system, ''[[Eucalyptus (software)|Eucalyptus]]'' [[Amazon Web Services]] framework, ''[[AppScale]]'' cloud computing framework, and ''[[Python (programming language)|Python]]'' programming language (LEAP)
* [[OpenStack]] – for [[infrastructure as a service]] (IaaS), the controller nodes run only on a Linux operating system
 
And of course allAll three types of [[virtualization]] (hardware-based, software-based, and paravirtualization) have been implemented by a couple offew projects, that run Linux, some being Linux -exclusive. The Linux kernel itself has been customized, adapted, and [[Hardening (computing)|hardened]] to various scenarios, especially to the operation of a [[bastion host]]. Some were already mainlined, some are being developed and maintained out-of-tree.
 
Linux kernel-based operating systems are still employed as routing servers on both, [[Server (computing)|server computers]] and also on [[Commodity computing|commodity hardware]], in cases where professional routing equipment such as [[Cisco Catalyst]], are either overkill or simply too expensivecostly. Components of the Linux kernel, such as [[Netfilter]] or the [[Linux network scheduler]], in conjunctionalong with the available free and open-source [[routing]] [[Daemon (computer software)|daemon]]s [[Bird Internet routing daemon|BIRD]] (BIRD), [[B.A.T.M.A.N.]], [[Quagga (software)|Quagga]], and [[XORP]] fulfill the task very well.
Very low-cost and low-performance routing can be even achievedperformed by [[wireless router]]s running [[OpenWrt]].
 
The anonymity routing solution [[Tor (anonymity network)|Tor]] is [[cross-platform]] and not exclusive to Linux.
 
=== Clusters ===
Components of the Linux kernel, likesuch e.g.as [[Logical Volume Manager (Linux)|LVMLogical Volume Manager]] (LVM), are well suited to support [[computer cluster]]s. There is also software for the management ofmanaging clusters, e.g., [[Pacemaker (software)|Pacemaker]], [[Linux-HA]], [[Distributed Replicated Block Device|DRBD]], [[oVirt]], [[openQRM]], [[Ganeti]], [[Eucalyptus (software)|Eucalyptus]], [[AppScale]], or [[OpenNebula]].
 
For both [[single system image]] and multi system image clusters, there are at least [[LinuxPMI]], [[OpenSSI]], [[Open-Sharedroot]] ([[Disklessdiskless shared-root cluster]]), and [[Kerrighed]] available.
 
=== Virtualization Virtualizing===
There are three solutions for [[Operating systemoperating-level virtualization|OSsystem-level virtualization]]: [[Linux-VServer]], [[LXC]] and [[OpenVZ]], which offer similarities to [[FreeBSD jail]]s and [[Solaris Containers]].
 
A Linux operating systems runs virtualized on [[Xen]], a micro-kernel-type hypervisor published under the same license as the Linux kernel ([[GNU General Public License#Version 2|GNU GPL- 2.0]]), and with [[Kernel-based Virtual Machine|KVM]] it is possible to turn the Linux kernel into a [[hypervisor]].
 
For the managing there are [[libvirt]], [[libguestfs]] and several utilities building uponon them, as well asand a couple offew other programs.
 
[[OpenStack]] controller nodes run exclusively on Linux, while compute nodes are cross-platform. Software projects, serving a similar use-case as OpenStack are [[Nimbus (cloud computing)|Nimbus]], [[Ganeti]], [[AppScale]], [[OpenNebula]], [[Eucalyptus (software)|Eucalyptus]] or [[openQRM]].
 
==Linux forFor mobile devices==
[[File:Samsung Galaxy Nexus Render.png|100px|thumb|[[Galaxy Nexus]], a Linux-based Android device]]
{{Main|Linux for mobile devices}}
Line 55 ⟶ 57:
Many mobile devices have a [[touchscreen]] as their sole [[human interface device]] (HID). The GUI and partly the [[middleware]] of the operating system has to be adapted as to enable software designers to create an according human-computer interface.
 
==Linux forFor embedded systems==
[[File:Oxygen devices.svg|thumb|left|Examples of devices that use embedded systems.]]
{{Main|Linux for embedded systems}}
 
There are actively maintained patches that transform theThe Linux kernel into a [[Real-time computing|real-time]] kernel. That way Linux kernelhas gained a wide adoption as a kerneluse forin operating systems drivingused in [[embedded system]]s. Minimally, such an operating system includes a more or less modified Linux kernel,as [[uClibcReal-time computing|µClibcreal-time]] and [[BusyBox]]non-real-time variants.
 
Patches exist which transform the Linux kernel into a [[Real-time computing|real-time]] kernel, termed a [[real-time operating system]] (RTOS). Several are actively maintained. Minimally, such an operating system includes a more or less modified Linux kernel, [[uClibc]] and [[BusyBox]].
 
A nonNon-RTOS variants exist. [[RTOSOpenWrt]] example, andwhich at the sameis timealso a [[Linux distribution]], is [[OpenWrt]]. OpenWrt is intended to befor employeduse on [[Customercustomer-premises equipment|CPE]] (CPE) devices like [[wireless router]]s. Another[[Rockbox]], examplewhich is based on [[RockboxμClinux]], is an operating system for [[portable media player]]s based on [[μClinux]].
{{-clear}}
 
==Linux forFor supercomputers==
{{Main|LinuxSupercomputer foroperating supercomputerssystems}}
 
All the fastest supercomputers in the decade since the ''[[Earth Simulator]] supercomputer,'' have used Linux. Linux also ran on the first tera[[teraflopsFLOPS]] supercomputer, ''[[ASCI Red]]'' in 1997, and on ''[[IBM Roadrunner]]'' in 2008, which was the first [[petascale computing|petascale]] supercomputercomputer. <!-- Earth_Simulator#Operating_system 2002-2004 BSD (SUPER-UX)
ASCI White AIX 2001/November 2001 12.3 teraflops.
ASCI Red 1997
Line 99 ⟶ 103:
 
==References==
{{reflistReflist}}
 
{{Linux}}