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 computers 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) Windows NT Windows 2000

Corporate market
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 Was intended for both the corporate and home use, replacing Win NT and Win 98

Windows 2000 Professional for individual users Windows 2000 for network servers

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 clients 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