You are on page 1of 58

OPERATING SYSTEMS

Software in the Background


Chapter 2
Objectives
 Describe the functions of an Operating System
 Explain the basics of a personal computer operating system
 Describe the advantages of a graphical operating system
 Differentiate among different versions of Microsoft Windows
 Explain the need for network operating systems
 Describe the methods of resource allocation on large
computers
 Be able to describe the differences among multiprocessing,
multiprogramming, and timesharing
 Explain the principles of memory management
 List several functions typically performed by utility programs
Contents
Operating System: Hidden Software
Systems Software
Functions of OS
Types of OS
MS-DOS
Microsoft Windows
Mac OS
UNIX
LINUX
Network Operating System NOS
Resource Allocation
Utility Programs
Operating System
Hidden Software
 Definition – provides access to all resources
 Kernel
 Manages the operating system
 Memory resident
 Loads set of programs that lies between applications software
and the hardware
 Fundamental software that controls non-resident portions of
the OS as needed
 Booting – Loads the kernel into memory
Systems Software
Definition:
All programs related to coordinating
computer operations
Components
Operating System
Utility programs
Program language translators
Functions of OS
Manage the computer’s resources
CPU
Memory
Disk drives
Printers

Establish a user interface


Execute and provide services for applications
software
Carries out all input and output operation
User Interface
Facilitates communication between the user and
the operating system
Two forms
Command line
 Text-based
 Key commands
 Examples: MS-DOS, Unix
Graphical user interface (GUI)
 Visual images
 Menus
 Examples: Windows, Mac OS, Linux
Platform
Definition:
Computer hardware and operating
system software that dictate what
other software can run

Wintel
Intel-based PC running Microsoft
Windows
OS is Hidden
User interested in application
software to make the PC
useful
Application software is
platform specific
User must be aware of the
type of OS
User should be aware of the
functions of OS
Types of OS

Command line
Single user PC
Network Operating System (NOS)
MS-DOS

 Command-line interface

 Prompt – system is waiting for you to do something

 Key a command

 Not user-friendly
Microsoft Windows
Graphical user
interface
Eases access to
the OS
Most new
computers come
with Windows
already installed
GUI
On-screen pictures
Icons
Menus
 Pull down
 Pop up
Click to activate a
command or function
Fast
Easy
Intuitive
Early Days of Windows

Operating environment for MS-DOS

Shell – layer added between users


and DOS
Windows Today
Home/consumer market
Windows 95
Windows 98
Windows Millennium Edition (ME)
Corporate market
Windows NT
Windows 2000
Windows XP
Pocket computers and Internet appliances
Windows CE
Windows 95 and 98
Self-contained OS
DOS commands still available
Start programs by
Start button
Double clicking the icon
Task bar permits movement between open
programs
Long file names up to 255 characters
Plug and play
Object linking and embedding (OLE)
Windows 98 Additions
Internet / intranet browsing

Support for DVD and additional multimedia


components
Support for large hard drives

TV viewer and broadcast ability

Wizards
Improved Windows Features
Backup
Interfaces with other software
Networking features
Security
Dr. Watson
Windows
Helps reduce the cost of owning and maintaining a
PC
Windows ME
Millennium Edition
Multimedia support -- Windows Media Player 7
Jukebox
Record music CDs as digital files
Windows Movie Maker
Basic video editing
Windows Image Acquisition
Scanner and digital camera
Windows ME
Millennium Edition
Reliability Features
System File Protection
AutoUpdate
System Restore
Help Center
Home Network Support
Wizard for connecting multiple computers and
peripherals
Multiple users can share a single Internet
connection
Windows NT
New Technology
Engineered for stability
Strong security
Versions
NT Workstation
NT Server
Drawbacks
Lacks support for older Windows and MS-DOS
software and hardware
Complex to learn and use
Requires more memory and processing power
Windows 2000
Stability features
Security features
Uses simple approach to hardware setup
from Windows 98
Versions
Windows 2000 Professional for individual users
Windows 2000 for network servers
Was intended for both the corporate and
home use, replacing Win NT and Win 98
Windows 2000
Complex
Heavy demand for computer resources
Improvements over windows NT
Maintains user preferences
Self-healing applications software
Supports Windows 98 file structure
Uses plug and play
Provides improved support for laptops
Windows XP
Extends Windows ME and provides a more stable
environment
Two categories
Network server
 3 versions based upon network complexity
Desktop computer
 2 versions
 Professional Client
 Personal Client
Windows CE
Consumer Electronics
Where used
 Embedded systems
 Industrial controllers
 Robots
 Office equipment
 Cameras
 Telephones
 Home entertainment devices
 Automobile navigation systems
 Pocket PC
 Internet appliance market
Windows CE
Consumer Electronics
Subset of Windows
Less memory

Smaller screens

Little or no file storage

Provides Internet connectivity


Accessibility Options

Seeing

Hearing

Touching
Mac OS
First
commercially
successful GUI
(1984)
Served as a
model to other
GUI systems
UNIX
Supports
Multi-user
Time-sharing
Character-based system
Command-line interface
Runs on various processors and many types of
computers
Primary OS used on Internet servers
LINUX
 UNIX-like OS
 Open-source software
 Download it free
 Make changes
 Distribute copies
 Restriction – any changes must be freely available to the
public
 PC Setup
 PC comes with Windows installed
 Install LINUX in a dual-boot configuration
LINUX

Advantages over Windows


Extremely stable
Internet support
Reinstallation is simpler

Disadvantage
Scarcity of applications
Network Operating System NOS
Designed to permit computers on a network to
share resources
Examples
Windows 2000 Server
Novell Net Ware
Provides
Data security
Troubleshooting
Administrative control
NOS Functions
Split between client and server computers
Server
File management
Client
Requests to the server
Messaging
Has own local OS
Makes the resources appear as if they are
local to the client’s computer
Large Computers
Used by many people at once
OS works “behind the scenes” so users can
share
OS must control
Who gets access to resources
What keeps the programs from different users from
getting mixed up with one another
Resource Allocation

Resource – hardware or software that is needed


to complete a task
Resource Allocation – assigning computer
resources to certain programs
Resource De-allocation – releasing resources
when a task is complete
Allocating the CPU
One CPU
Multiprogramming
 Event-driven
 Timesharing

More than one CPU


Multiprocessing – multiple CPUs can run several
programs simultaneously
Multiprogramming
One CPU
Concurrent execution of two or more processes
Several processes open at once
Only one process can receive the attention of the
CPU at any given moment
Effective because CPU speeds are many times
faster than input/output speeds
Event-driven Multiprogramming
One program receives the attention of the
CPU
Its processing will be interrupted based upon
events in the program
When processing needs to be temporarily
suspended, an interrupt is generated
This is a signal to the operating system to
evaluate the cause of the interrupt and
determine who should now have CPU time
Event-driven Multiprogramming
Example
 Two programs are running – Payroll and Inventory
Management
 Payroll needs to read an employee record
 Payroll generates an interrupt

 Normal processing is temporarily suspended


 The CPU looks at the interrupt and initiates the read
operation
 While waiting for the read to complete, the CPU
begins processing the Inventory Management program
Event-driven Multiprogramming
Example
 When the read operation is complete, another interrupt
is generated
 Normal processing is temporarily suspended

 The CPU looks at the interrupt and determines its


cause
 The CPU will either continue processing the Inventory
Management program or return to the Payroll program
depending upon their priority
Time-sharing Multiprogramming
 One program receives the attention of the CPU

 A small fraction of CPU time is allocated to the


program
 The time slice ends

 The CPU begins processing a different program

 Response time can vary based upon the number of


users on the system
Sharing Memory
Program must be in memory to be executed

Problems
Programs compete for space
May have a very large program
Memory space for each program must not overlap
Memory Management

The process of providing separate memory


space to programs
Memory Protection keeps one program from
interfering with another
Memory Management
Methods

Partitions or regions
Foreground and background
Virtual storage (virtual memory)
Partitions or Regions

Divide memory into sections

The partition must accommodate the largest


possible program
Problem
May cause wasted memory space
Foreground and Background
Programs are placed in either Foreground or
Background
Programs in Foreground have priority for
CPU time
While performing read / write operations for
the Foreground program, the CPU gives time
to a program in Background
Programs are placed in a holding queue while
waiting to run
Virtual Storage
Virtual Memory
Uses concept of Paging
Divide the program into equal-size pieces (pages)

Store each piece in equal-size memory spaces


(page frames)
Typical size is 2KB or 4KB

Create an index to each page and store in a Page


Table
Virtual Storage
Virtual Memory
Paging Process
A portion of the program is placed in memory
The remainder is on disk
Sections on disk will be brought into memory
as needed (one page at a time)
Virtual Storage
Virtual Memory
Problem -- Thrashing
Too large a portion of CPU time is spent locating
the correct page and bringing it into memory
Solution
Run fewer programs concurrently
Add memory
Memory Protection
Keeps one program from straying into another
Confines each program to certain defined
limits in memory
Why needed
Possible for one program to destroy or modify
another by transferring to the wrong memory location
May cause destruction of data
Action if assigned memory space is violated
Termination of executing program
Sharing Storage
Several users need to access the same disk pack
One wants to write
Another wants to read

OS keeps track of the I/O requests

OS processes I/O requests in order received


Sharing Printing Resources
Print resources are shared between active
programs
Printouts are generated in pieces as the CPU
gives each concurrent program some time
Problem
The current program may generate a few print lines
The CPU moves to the next program
The second program may generate a few print
lines, etc.
Sharing Printing Resources
Result
Printout is worthless as it contains a few lines from
several programs
Solution – Spooling
Each program thinks it is writing to the printer
The program actually writes to the hard disk
When the program is complete, the file on the hard
disk is sent to the printer
Additional Printing Problem

Printers are slow compared to the CPU speed

Solution
The CPU writing to the disk
The program completes quicker
Utility Programs
Come with System Software
Handle special needs
Perform secondary chores
Do not need to be memory resident
Functions of Utility programs
 File manager – provide access to lists of stored files
 Backup and Restore – make duplicate copies of
important files and return the copy to the hard drive if
needed
 File compression – reduces the amount of disk
space required by a file
 Disk defragmenter – reorganize files so they are
stored contiguously on disk providing for faster access
 Device drivers – convert operating system
instructions into commands that are known to a
specific device

You might also like