Transcript Adeyl Khan

C3: OPERATING SYSTEMS
Software in the Background
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


Helps reduce the cost of owning and
maintaining a PC
WINDOWS ME- MILLENNIUM EDITION


Multimedia support -Windows Media Player 7
Jukebox


Windows Movie Maker


Record music CDs as
digital files
Basic video editing
Windows Image
Acquisition

Scanner and digital
camera

Reliability Features





System File Protection
Auto-Update
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
3
versions based upon network complexity
 Desktop
2
server
computer
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





Subset of Windows
Less memory
Smaller screens
Little or no file storage
Provides Internet
connectivity
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
Advantages over
Windows
•Extremely stable
•Internet support
•Reinstallation is simpler
PC Setup


PC comes with Windows
installed
Install LINUX in a dual-boot
configuration
Disadvantage
•Scarcity of applications
Network Operating System NOS
Designed to permit computers on a network to
share resources
Functions
 Examples

 Windows
2000 Server
 Novell Net Ware

Provides
 Data
security
 Troubleshooting
 Administrative control
• 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 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
Memory Management
•The process of providing separate memory space to programs
•Memory Protection keeps one program from interfering with
another
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
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