Overview of Operating Systems

Download Report

Transcript Overview of Operating Systems

Overview of Operating Systems
• Introduction
Software that runs computer
 General Purpose (PC to Mainframe)
 Mission Specific (robot, real-time computer)
Overview of Operating Systems
• Purpose of an operating system?
To facilitate easy, efficient, fair, orderly, and
secure use of computer resources
 Software: spreadsheets, word processors, Web
browsers, e-mail, games, graphing tools, etc.
 Hardware: RAM, CPU, keyboard, mouse, disks,
modem, printer, screen, video card, etc.
Figure 1.1 A layered view of a contemporary computer system
Overview of Operating Systems
• Resource Manager/ Virtual Machine
e.g. allocates/manages on RAM, CPU, disks,
printer queues, etc.
e.g. isolates you from the complications of
hardware resources. (mouse, disk, DVD, etc.)
Unix/Linux command example:

cp memo memo_backup
Overview of Operating Systems
• Operating System Services
 execution of a program
 input & output operations performed by
program
 communication between processes
 error detection & reporting
 manipulation of all types of files
Overview of Operating Systems
Character Versus Graphical User Interface
Character User Interface (CUI)
(command-line user interface)
Graphical User Interface (GUI)
(point-and-click device)
Linux has both.
GNOME (GNU Network Object Model Environment)
KDE (K Desktop Environment)
Overview of Operating Systems
Type of Operating Systems
• Single-user, single-process
DOS, MacOS, Window 3.1
• Single-user, multiprocess
OS/2, Window NT Workstation
• Multiuser, multiprocess
LINUX, UNIX, Window NT Server
Overview of Operating Systems
• Multiuser, multiprocess systems are used to
increase resource utilization.
To increase throughput (# of precesses finished
in unit time)
Overview of Operating Systems
• multiprogram : The mechanism of assigning
the CPU to another process when the
current process is performing I/O.
• interactive OS, batch OS
Interactive: LINUX, UNIX, DOS, Windows, VMS
Batch: payroll
 LINUX/UNIX has both.
• time-sharing systems
– CPU is switched from one process to another in quick
succession to allow all process in the system to make
progress, giving each user the impression of sole use of
the system.
UNIX / LINUX History
• UNIX:
– Conceived & implemented in 1969 at AT&T’s
Bell Laboratories by Ken Thompson, Denis
Ritchie, Douglas McIlroy, and Joe Ossanna.
– Released in 1971, written entirely in assembly
language
– Rewritten in 1973 in C , with exceptions to the
kernel and I/O, by Dennis Ritchie
UNIX / LINUX History
• UNIX:
– The availability of an operating system written
in a high-level language allowed easier
portability to different computer platforms.
With a legal glitch forcing AT&T to license the
operating system's source code, Unix quickly
grew and became widely adopted by academic
institutions and businesses.
UNIX / LINUX History
• GNU Project:
– Started in 1983 by Richard Stallman
– had the goal of creating a "complete Unixcompatible software system" composed entirely
of free software
UNIX / LINUX History
• GNU GPL:
– Free Software Foundation was created in 1985 by
Richard Stallman
– GNU General Public License (GNU GPL) written in
1989
– By the early 1990s, many of the programs required in
an operating system (such as libraries, compilers, text
editors a Unix shell, and a windowing system) were
completed, although low-level elements such as device
drivers, daemons, and the kenels were stalled and
incomplete.
UNIX / LINUX History
• GNU Project:
– 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.
UNIX / LINUX History
• Richard Stallman, left, founder of the GNU
Project, and Linus Torvalds, right, principal author
of the Linux kernel
UNIX / LINUX History
• MINIX
– Andrew S. Tanenbaum, author of the MINIX operating
system
UNIX / LINUX History
• MINIX:
– MINIX was an inexpensive minimal Unix-like
operating system, designed for education in
computer science
UNIX / LINUX History
• LINUX:
– In 1991 while attending the University of
Helsinki, Torvalds, curious about the operating
systems and frustrated by the licensing of
MINIX limiting it to educational use only
(which prevented any commercial use) began to
work on his own operating system which
eventually became Linux.
UNIX / LINUX History
• LINUX:
– GNU GPL applications & codes replaced all
MINIX ones
– In order to make the Linux available for
commercial use, Torvalds initiated a switch
from his original license (which prohibited
commercial redistribution) to the GNU GPL.
Advantages & Disadvantages
of Running UNIX/LINUX
• Advantage #1 – Stability
– If an application crashes in Linux, it will
usually not harm the kernel or other processes.
• Advantage #2 – Free Software
– Most software can be obtained without cost for
Linux. e.g. Open Office. (Conversion isn’t
100% perfect)
Advantages & Disadvantages
of Running UNIX/LINUX
• Advantage #3 – Runs on old hardware
– Runs on old 386 or 486 with 1GB disk and
16MB memory. With a large disk and using
Samba to make your machine share the disk as
a Windows share.
• Advantage #4 – Security (a double-edged
sword)
– The code being in the public domain
Advantages & Disadvantages
of Running UNIX/LINUX
• Disadvantage #1 – Learning Curve
– NO instant gratification. Takes time to learn.
– Don't expect to be an expert after reading something
like “Linux for Dummies”. Budget some money for
training and learning time.
• Disadvantage #2 – Equivalent Programs
– There are still applications that do not exist in Linux. .
It may not make sense for you to switch if you are
going to spend tons of time converting databases and
application data.
Advantages & Disadvantages
of Running UNIX/LINUX
• Disadvantage #3 – More Technical Ability Needed
– Make sure that you train someone in Linux really well. A good
Linux administrator needs to be on hand as you start to migrate
your systems over. This is a disadvantage financially, at least in
the beginning.
• Disadvantage #4 – Not All Hardware Compatible
– the latest and greatest hardware that is being produced is not
compatible with Linux. Ask if the hardware vendor has support
for Linux. Some manufacturers do write their own Linux drivers
and distribute them with your purchase. Rely on third-party
drivers and other means to make hardware like a new Ethernet
card work, sometimes.
LINUX Installation Options
• Dual boot or Virtual Linux
• Download & Install VirtualBox. (SUN->ORACLE)
– http://www.virtualbox.org
– Then, Install Linux On The VirtualBox
• Download & Install Linux/Debian Latest Stable
Release.
– http://www.debian.org
• After Successful Linux/Debian Installation:
– apt-get upgrade
– apt-get update
Debian: Directory Structure
• / - Root directory.
–
–
–
–
–
–
–
–
–
–
–
–
/bin- Essential command binaries.
/boot- Static files of the boot loader.
/dev- Device files.
/etc- Host-specific system configuration.
/home- User home directories.
/lib- Essential shared libraries and kernel modules.
/mnt- Mount point for mounting a filesystem temporarily.
/opt - Add-on application software packages.
/proc – System configuration parameters.
/root - Home directory for the root user.
/sbin - Essential system binaries.
/sys - Virtual file systems which stores and allows modification of
devices connected to the system. Symbolic links to the kernel
source tree.
– /tmp - Temporary files.
– /usr - Secondary hierarchy.
– /var - Variable data.