lecture 01 introduction

19
Fall 2000 M.B. Ibáñez Lecture 01 Introduction What is an Operating System? The Evolution of Operating Systems Course Outline

Upload: uriel-witt

Post on 13-Mar-2016

33 views

Category:

Documents


3 download

DESCRIPTION

Lecture 01 Introduction. What is an Operating System? The Evolution of Operating Systems Course Outline. What is an Operating System?. A program that acts as an intermediary between a user of a computer and the computer hardware. Operating system goals: Execute user programs - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Lecture 01 Introduction

Fall 2000 M.B. Ibáñez

Lecture 01Introduction

What is an Operating System?The Evolution of Operating Systems

Course Outline

Page 2: Lecture 01 Introduction

Fall 2000 M.B. Ibáñez

What is an Operating System?

• A program that acts as an intermediary between a user of a computer and the computer hardware.

• Operating system goals:– Execute user programs – Make solving user problems easier– Allocate resources in a efficient and fair way

Page 3: Lecture 01 Introduction

Fall 2000 M.B. Ibáñez

Abstract View of System Components

a

Hardware

a

lots of different components,with different speds,different protocols for communication

a

user 1 user 2 user n

a

They want low cost and efficient services

a

compiler text editor database system

a

They want to have an easy life (don’t have to worry about speeds,use of file instead of blocks, large memory, etc)

a

Operating System

Page 4: Lecture 01 Introduction

Fall 2000 M.B. Ibáñez

Services given by an Operating System

• Efficient program execution– Keeping all the devices busy– Good throughput for the user

• Access to I/O devices• Controlled access to system and files• Error detection and response• Accounting

Page 5: Lecture 01 Introduction

Fall 2000 M.B. Ibáñez

Evolution of Operating SystemsSerial Processing

• From the late 1940s to the mid-1950s• There was no Operating System

– These machines were run from a console, consisting of display lights, toggle switches, some form of input device, and a printer

• Job scheduling– A user used a sign-up sheet to reserve machine time.

• How to run a job?– Load the compiler and source program into memory– Save the object program– Loading and linking together the object program and common functions

Page 6: Lecture 01 Introduction

Fall 2000 M.B. Ibáñez

Evolution of Operating SystemsSimple Batch Systems

• Mid-1950s• The users did not interact directly with the computer system.

The operator would sort programs into batches with similar requirements.

• The user prepared a job. A Monitor executed the job.$JOB$FTN <FORTRAN instructions>$LOAD$RUN <data>$END

Page 7: Lecture 01 Introduction

Fall 2000 M.B. Ibáñez

Memory Layout For a Resident Monitor

Boundary

InterruptProcessing

DeviceDrivers

JobSequencing

Control LanguageInterpreter

UserProgram

Area

Monitor

a

From Operating Systems.Internals and Design Principles.W. Stalling. Prentice Hall

Page 8: Lecture 01 Introduction

Fall 2000 M.B. Ibáñez

There are some hardware features desirable

• Memory protection the user program should not alter the monitor’s

area• Timer

to prevent a single job from monopolizing the system

• Privileged instructions I/O instructions by example

Page 9: Lecture 01 Introduction

Fall 2000 M.B. Ibáñez

Multiprogrammed Batch Systems

a

time

a

A

a

A

a

A

a

B

a

B

a

time

a

A

a

B

a

A

a

B

a

A

Page 10: Lecture 01 Introduction

Fall 2000 M.B. Ibáñez

Effects of Multiprogramming

Uniprogramming Multiprogramming

Processor use 17% 33%

Memory use 30% 67%

Disk use 33% 67%

Printer use 33% 67%

Elapsed time 30 min. 15 min.

Throughput rate 6 jobs/hr 12 jobs/hr

Mean response time 18 min. 10 min.

a

From Operating Systems.Internals and Design Principles.W. Stalling. Prentice Hall

Page 11: Lecture 01 Introduction

Fall 2000 M.B. Ibáñez

Time-sharing systems

• 1960s, they become common early 1970s• Multiprogramming allows the processor to handle multiple

batch jobs at a time– Main objective: Maximize processor use

• Multiprogramming can be used to handle multiple interactive jobs: time -sharing– Main objective: Minimize response time

• Processor time is shared among multiple users• Multiple users simultaneously access the system through

terminals

Page 12: Lecture 01 Introduction

Fall 2000 M.B. Ibáñez

Primitive Time-sharing Operating System

a

Monitorjob 1free

a

Monitorfreejob 2

a

Monitorfreejob2job3

a

Monitorfreejob1job3

Page 13: Lecture 01 Introduction

Fall 2000 M.B. Ibáñez

New problems for the Operating Systems

• Multiple jobs are in memory– They must be protected from interfering with each other

• Multiple interactive users– The file system must be protected so that only authorized

users have access to a particular file

• The contention for resources, such as printers and mass storage devices, must be handled

Page 14: Lecture 01 Introduction

Fall 2000 M.B. Ibáñez

Characteristics of Modern Operating Systems.What forces a change?

Developments in hardware

• Multiprocessor machines• Greatly increased machine

speed• High-speed network

attachments• Increasing size and variety

of memory storage services

New applications

• Multimedia applications• Internet and Web access• client/server computing

Page 15: Lecture 01 Introduction

Fall 2000 M.B. Ibáñez

Characteristics of Modern Operating Systems Microkernel architecture

• A microkerner architecture assigns only a few essential functions to the kernel, such as– Address spaces– Interprocess communication– Basic scheduling

• The microkernel approach simplifies implementation, provides flexibility, and is well suited to a distributed environment

Page 16: Lecture 01 Introduction

Fall 2000 M.B. Ibáñez

Characteristics of Modern Operating SystemsMultithreading

• Multithreading– technique in which a process, executing an application,

is divided into threads that can run simultaneously

• Thread– dispatchable unit of work– executes sequentially and is interruptable

• Process – collection of one or more threads

Page 17: Lecture 01 Introduction

Fall 2000 M.B. Ibáñez

Characteristics of Modern Operating Systems Symmetric multiprocessing (SMP)

• Systems with multiple multiprocessors– there are multiple processors– these processors share same main memory and I/O facilities– All processors can perform the same functions

• Advantages over uniprocessor architectures– Performance– Availability– Incremental growth– Scaling

Page 18: Lecture 01 Introduction

Fall 2000 M.B. Ibáñez

Characteristics of Modern Operating Systems Distributed operating systems

• provides the illusion of a single main memory

• used for distributed file system

Page 19: Lecture 01 Introduction

Fall 2000 M.B. Ibáñez

Outline of the Course

• Processes• Memory• I/O devices• File systems• Protection and security