Linux
Chapter 1: introduction to Linux
Linux: a success story
• Summer 1991: Linux Torvalds (student computer science in Helsinki) wrote a terminal emulator,
run on the raw hardware without an operating system, and which allowed him to access the
university’s Unix system.
this program was the first Linux operating system kernel
• Linux generated interest and many volunteers decided to collaborate
• Linux evoluted over many years
• During the 15 years from Linux 2.0 to Linux 3.2 the size of the compressed Linux source code has
increased by a factor of almost 16
• The “Linux” project is by no means finished today.
Linux is constantly being extended and improved by hundreds of programmers throughout the world
What is Linux?
“Linux” is just the operating system kernel:
namely the program that handles the allocation (toewijzing) of resources to applications
the central controller of everything that happens on the computer
Since an operating system without applications isn’t useful, one usually installs a Linux distribution = a
package consisting of “Linux” and a selection of applications, utilities, documentation and other useful stuff.
- Most Linux distributions are “freely available” (free of charge or at very low cost)
Unix isn’t Linux!
• UNIX:
• 1970: operating system developed at AT&T Bell Labs
• Many different variants of UNIX
• UNIX is now both a trademark and a specification, owned by an industry consortium called
the Open Group
• Only software that has been certified by the Open Group may call itself UNIX
• Despite adopting all the requirements of the UNIX specification, Linux has not been certified,
so Linux really isn’t UNIX! It’s just… UNIX-like.
Linux kernel
A kernel:
which program gets which pieces of memory
starts and kills programs
handles displaying text on a monitor
handles switching of application (small CPU – finite amount of memory) = preemptive multitasking
1
, so the kernel takes care of running the processes, starting and stopping them as requested, and
handing out system resources
− boot loader: loads the kernel and get it started
a kernel isn’t useful without something to control we need applications to work with the computer.
- Applications just follow the kernel’s Application Programming Interface (API) and in return don’t
have to worry about the implementation details
Open source vs closed source
Open source Closed source
the right to obtain the software The right to use the machine code
the right to modify it for your own use No right to modify it for your own use
the right to see/adapt the source code No right to see/adapt the source code
you must share the code of your changes
GNU
Linux is just a ‘kernel’.
A full operation system is Linux + GNU.
GNU is a Unix-like operating system that is free software (Richard Stallman).
So Linux was able to target their tools and provide a complete system.
All Linux distributions (Red Hat ,Debian,.) are GNU/Linux distributions
Linux distribution
Different flavors of distributions:
Server?
Client?
Industry specific tools?
Mayor players:
Red Hat Entreprise Linux (RHEL)
− Server applications
− Long release cycle
− Sponsors the Fedora Project
− Personal desktop comprising the latest software
− Shorter release cycle
− Making money with the service they offer
Debian
− More of a community effort
− It’s own package management system (apt-get)
2
, Ubunu
− Most popular Debian derived distribution
CentOs
− Recompiled all the RHEL packages and gave them away for free
− Do not offer the paid support that RHEL does
Open SUSE
− Incorporates many aspects of RHEL
− Desktop based and available to the general public
− SUSE Linux Enterprise
− Proprietary code and is sold as a server product
Linux commands
A command is a software program that when executed on the command line, performs an action on the
computer
We use the bash shell to execute the commands
Different commands:
Commands built-in to the shell itself
Commands that are stored in files that are searched by the shell
Aliases
Functions
Hardware platforms for Linux
At the begin Linux would only run on a computer like Linus’: a 386 with a specific hard drive controller.
The types of hardware grew from the Intel chip up to supercomputers
Later, smaller-size, Linux supported, chips were developed to fit in consumer devices, called embedded
devices (ex. Raspberry Pi)
Operating systems
How the choose the operating system?
The machine’s role (desktop or server?)
GUI or not?
The functions of the machine
Lifetime and risk tolerance
Release cycle and maintenance cycle
Backward compatibility
Cost
Examples:
Microsoft Windows Apple OS X
• Splits the operating systems according • Has undergone UNIX certification
to the machine’s purpose: desktop or • OS X is primarily a desktop operating
server system but there are optional packages
• New versions of the desktop come out that help with management of network
every 3-5 years and tend to be services
supported for many years • Many find the system easier to use
• Backward compatibility is also a priority • Quite popular in the creative industries
for Microsoft such as video production
• Users can run older software • Runs on Apple hardware
• The server runs a GUI, but as a
competitive response to Linux, it is
3
, possible to use line scripting through
PowerShell
• Closed source
• Pay for licenses
BSD (Berkely Software Distribution) Android
• There are several open source BSD • uses the Dalvik virtual machine with
projects, such as OpenBSD, FreeBSD, Linux, providing a robust platform for
and NetBSD. mobile devices such as phones and
• These are alternatives to Linux in many tablet
respects as they use a large amount of • android is generally incompatible
common software with desktop Linux distributions
• BSDs are typically implemented in the
server role, there are also variants such
as GNOME and KDE that were
developed for desktop roles
Chapter 2: Open source applications and licenses
Major open source applications
Linux software generally falls into one of 3 categories:
• Server software – software that has no direct interaction with the monitor and keyboard of the
machine it runs on
Its purpose = to give information to other computers, called clients
• Desktop software – a web browser, text editor, music player, or other software that you interact
with
In many cases (for example a web browser), the software talks to a server on the other side and
interpretes the data for you
• Tools – software that exists to make it easier to manage your system
For example: a tool that helps you configure your display, a tool that provides you a Linux shell, ..
• Shell laat toe om te communiceren met Linux
Server applications
One of the early uses of Linux was for web servers
A web server hosts content for web pages, which are viewed by a web browser using the Hypertext
Transfer Protocol (HTTP) or its encrypted version, HTTPS.
• Apache = the dominant web server of today
originally a standalone project but the group has now formed the Apache Software Foundation
and maintains more than 100 open source software projects
• Eerste groep van applicaties en Apache dient om een website op te zetten
• Nginx = another web server that focuses on performance by making use of more modern UNIX
kernel and it only does a subset of what Apache can do
==> More than 65% of websites are hosted by either nginx or Apache
Mail has always been a popular use for Linux servers
4
The benefits of buying summaries with Stuvia:
Guaranteed quality through customer reviews
Stuvia customers have reviewed more than 700,000 summaries. This how you know that you are buying the best documents.
Quick and easy check-out
You can quickly pay through credit card or Stuvia-credit for the summaries. There is no membership needed.
Focus on what matters
Your fellow students write the study notes themselves, which is why the documents are always reliable and up-to-date. This ensures you quickly get to the core!
Frequently asked questions
What do I get when I buy this document?
You get a PDF, available immediately after your purchase. The purchased document is accessible anytime, anywhere and indefinitely through your profile.
Satisfaction guarantee: how does it work?
Our satisfaction guarantee ensures that you always find a study document that suits you well. You fill out a form, and our customer service team takes care of the rest.
Who am I buying these notes from?
Stuvia is a marketplace, so you are not buying this document from us, but from seller GraduateITF. Stuvia facilitates payment to the seller.
Will I be stuck with a subscription?
No, you only buy these notes for $25.55. You're not tied to anything after your purchase.