Linux Open House
Linux Open House
Presentation..........................................................................1
Index...................................................................................2
Linux....................................................................................3
Features of Linux / Functions...................................................4
Community............................................................................5
Programming on Linux / Uses..................................................6
Desktop................................................................................7
The X-Window System............................................................8
GNOME / KDE.................................................................8
LXDE.............................................................................9
Servers, Mainframes & Supercomputers...................................10
Linux Distributions................................................................11
Components..................................................................11
Package Management.....................................................12
Live-CD........................................................................13
Popular Linux Distributions.................................................14,15
Tools for choosing a distribution..............................................16
Installation...........................................................................17
Linux: Advantages & Disadvantages.........................................18
Bibliography..........................................................................19
1
Linux
Linux is a Unix-like computer operating system under the
model of free and open source software development and
distribution. The defining component of Linux is the Linux
kernel, an operating system kernel first released on 5 October
1991, by Linus Torvalds.
Linux was originally developed as a free operating system for
Intel x86-based personal computers. It has since been ported
to more computer hardware platforms than any other
operating system. It is a leading operating system on servers
and other big iron systems such as mainframe computers and
supercomputers: more than 90% of today's 500 fastest supercomputers run
some variant of Linux, including the 10 fastest. Linux also runs on mobile
phones, tablet computers, network routers, building automation controls,
televisions and video game consoles; the Android system in wide use on
mobile devices is built on the Linux kernel.
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 and Linux Mint), Fedora
(and its derivatives such as the commercial Red Hat
Enterprise Linux and its open equivalent CentOS),
Mandriva/Mageia, openSUSE (and its commercial
derivative SUSE Linux Enterprise Server), and Arch
Linux. 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 will
typically include the X Window System and an accompanying desktop
environment such as GNOME or KDE Plasma. Some such 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
all graphical environments from the standard install and instead include other
software such as the Apache HTTP Server and an SSH server such as OpenSSH.
Because Linux is freely redistributable, anyone may create a distribution for
any intended use. Applications commonly used with desktop Linux systems
include the Mozilla Firefox web browser, the LibreOffice office application suite,
and the GIMP image editor.
Features of Linux
2
386 works in protected mode.
Memory protection between processes, so that one can not bring the
system.
Demand load executables: Linux only reads from disk those parts of a
program currently being used.
Policy for copy on write pages among executables COMPARISON: This
means that multiple processes can use the same memory to run. When
one tries to write to that memory, that page (4KB memory) is copied to
another location. This policy of copy on write has two benefits: it
increases the speed and reduces memory usage.
The memory is managed as a unified resource to the user programs and
disk cache, so that all free memory can be used to cache and this can in
turn be reduced when running large programs.
Support for many national or customized keyboards and is quite easy to
add new dynamically.
Functions
The main functions of this great operating system are:
Multitasking system: In Linux you can run several programs at once without
having to stop the execution of each application.
Multiuser System: Multiple users can access the applications and system
resources while Linux. And of course, each of them can run multiple programs
at once (multitasking).
3
Community
Programming on Linux
Most Linux distributions support dozens of programming languages. The
4
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 alternative 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, and in terms of terminal programming or QuickBASIC or Turbo BASIC
programming in the form of QB64.
A common feature of Unix-like systems, Linux includes traditional specific-
purpose programming languages targeted at scripting, text processing and
system configuration and management in general. Linux distributions support
shell scripts, awk, sed and make. Many programs also have an embedded
programming language to support configuring or programming themselves. For
example, regular expressions are supported in programs like grep, or locate,
while advanced text editors, like GNU Emacs have a complete Lisp interpreter
built-in.
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 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 and JikesRVM.
GNOME and KDE are popular desktop environments and provide a framework
for developing applications. 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, CodeLite, Eclipse, Geany, ActiveState Komodo, KDevelop,
Lazarus, MonoDevelop, NetBeans, and Qt Creator, while the long-established
editors Vim, nano and Emacs 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
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.
5
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.
6
The X-Window System
X-Window system is the graphical user interface (GUI) for Linux. In other
Operating Systems, GUI is an integral part of system, but in Linux X-Window is
an additional appilcation. Linux is completly functional without the need of a
graphical mode.
Some X-Window Systems in Linux are:
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 is developed by both volunteers and paid contributors, the
largest corporate contributor being Red Hat.
Linux CentOS 6 running GNOME desktop environment.
7
Linux OpenSUSE running KDE desktop environment.
LXDE
LXDE (Lightweight X11 Desktop Environmen) is a free and open
source desktop environment for Unix and other platforms, such
as Linux or BSD. The goal of the project is to provide a desktop
environment that is fast and energy efficient.LXDE is designed to
work well with computers on the low end of the performance
spectrum such as older resource-constrained machines,
especially those with low amounts of RAM.
8
Servers, Mainframes and Supercomputers
Linux distributions have long been used as server 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 servers. 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.
9
Linux distributions
A Linux distribution (often called distro for short) 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. These operating systems consist of the Linux kernel
and, usually, a set of libraries and utilities from the GNU Project, with graphics
support from the X Window System. Distributions optimized for size may not
contain X and tend to use more compact alternatives to the GNU utilities, such
as BusyBox, uClibc, or dietlibc. There are currently over six hundred Linux
distributions. Over three hundred of those are in active development,
constantly being revised and improved.
Because most of the kernel and supporting packages are free and open source
software, Linux distributions have taken a wide variety of forms—from fully
featured desktop, server, laptop, netbook, mobile phone, and tablet operating
systems as well as minimal environments (typically for use in embedded
systems or for booting from a floppy disk). Aside from certain custom software
(such as installers and configuration tools), a distribution is most simply
described as a particular assortment of applications installed on top of a set of
libraries married with a version of the kernel, such that its "out-of-the-box"
capabilities meet most of the needs of its particular end-user base.
One can distinguish between commercially backed distributions, such as
Fedora (Red Hat), openSUSE (SUSE), Ubuntu (Canonical Ltd.), and Mandriva
Linux (Mandriva), and entirely community-driven distributions, such as Debian,
Slackware and Gentoo.
Users were attracted to Linux distributions as alternatives to the DOS and
Microsoft Windows operating systems on the PC, Mac OS on the Apple
Macintosh, and proprietary versions of Unix. Most early adopters were familiar
with Unix from work or school. They embraced Linux for its stability, low (if any)
cost, and availability of the source code for most or all of the software included.
Originally, the distributions were simply a convenience, but today, they have
become the usual choice even for Unix or Linux experts. To date, Linux has
proven more popular in the server market, primarily for Web and database
servers (see also LAMP), and in embedded devices market than in the desktop
market.
Components
A typical desktop Linux distribution comprises a Linux kernel, GNU tools and
libraries, additional software, documentation, a window system, window
manager, and a desktop environment. Most of the included software is free
software/open-source software which is distributed by its maintainers both as
compiled binaries and in source code form, allowing users to modify and
compile the original source code if they wish. Other software included with
some distributions may be proprietary and may not be available in source code
form.
10
Many distributions provide an installation system akin to that provided with
other modern operating systems. Some distributions like Gentoo Linux, T2, and
Linux From Scratch include only binaries of a basic kernel, compilation tools,
and an installer; the installer compiles all the requested software for the
specific microarchitecture of the user's machine, using these tools and the
provided source code.
Package management
11
system is self-hosting. This can be done via compilation on another system
capable of building binaries for the intended target (possibly by cross-
compilation). For example, see Linux From Scratch.
12
Examples
Popular distributions
Well-known Linux distributions include:
13
of developers with both 100% Red Hat-compatible versions
and an upgraded version that is not always 100% upstream
compatible.
Fedora, a community distribution sponsored by American
company Red Hat.
Oracle Linux, which is a derivative of Red Hat Enterprise
Linux, maintained and commercially supported by Oracle.
Android
14
Interdistribution issues
There are tools available to help people select an appropriate distribution, such
as several different versions of the Linux Distribution Chooser, and the
universal package search tool whohas. There are easy ways to try out several
Linux distributions before deciding on one: Multi Distro is a Live CD that
contains nine space-saving distributions. Tools are available to make such CDs
and DVDs, among them Nautopia.
Virtual machines such as VirtualBox and VMware Workstation permit booting of
Live CD image files without actually burning a CD.
Details and interest rankings of Linux distributions are available on DistroWatch
and a fairly comprehensive list of live CDs is available at livecdlist.com. Some
websites such as OSDir.com and www.osvids.com offer screenshots and videos
as a way to get a first impression of various distributions.
Workspot used to provide online Linux desktop demos using Virtual Network
Computing (VNC). It is currently not active.
Installation
There are many ways to install a Linux distribution. The most common method
15
of installing Linux is by booting from a CD-ROM or DVD 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, provided as a cover
disk with a magazine, shipped for free by request, or obtained as part of a box
set that may also include manuals and additional commercial software. New
users tend to begin by partitioning a hard drive in order to keep their previously
installed operating system. The Linux distribution can then be installed on its
own separate partition without affecting previously saved data.
Early Linux distributions were installed using sets of floppies but this has been
abandoned by all major distributions. Nowadays most distributions offer CD
and DVD sets with the vital packages on the first disc and less important
packages on later ones. They usually also allow installation over a network
after booting from either a set of floppies or a CD with only a small amount of
data on it.
Still another mode of installation is to install on a powerful computer to use as
a servers and to use less powerful machines (perhaps without hard drives, with
less memory and slower CPUs) as thin clients over the network. Clients can
boot over the network from the server and display results and pass information
to the server where all the applications run. The clients can be ordinary PCs
with the addition of a network bootloader on a drive or network interface
controller; hard disk space and processor power can be offloaded onto the
client machine if desired. The cost savings achieved by using thin clients can
be invested in greater computing power or storage on the server.
In a Live CD setup, the computer boots the entire operating system from CD
without first installing it on the computer's hard disk. Some distributions have a
Live CD installer, where the computer boots the operating system from the
disk, and then proceeds to install it onto the computer's hard disk, providing a
seamless transition from the OS running from the CD to the OS running from
the hard disk.
Both servers and personal computers that come with Linux already installed
are available from vendors including Hewlett-Packard, Dell and System76.
On embedded devices, Linux is typically held in the device's firmware and may
or may not be consumer-accessible.
Anaconda, one of the more popular installers, is used by Red Hat Enterprise
Linux, Fedora and other distributions to simplify the installation process.
16
Linux: Advantages and Disadvantages
Advantages:
Stability: By having your Unix -based core, inherits this stability that has
always characterized the Unix systems.
Security: At the server level can find that Linux security against other
servers is much larger market.
Speed: Because real multitasking features, and you do not need to load your
graphical environment to run services or applications, make its speed is far
superior to existing operating systems.
Growth: The growth system, open source, and the greater community of
thousands of developers, is the fastest in the world today.
Disadvantages:
Support: Linux Some companies do not have to back it up, so that there is no
solid support as other operating systems.
Software: Not all Windows applications can run on Linux, and it is sometimes
difficult to find a particular application, and most importantly, is that not all
applications are in Spanish.
17
Bibliography
http://en.wikipedia.org/wiki/Linux
http://en.wikipedia.org/wiki/Linux_distribution
Palo Santo Solutions Basic Linux Book
18