Operating System Concepts Mehdi Kargahi ECE Department University - - PowerPoint PPT Presentation

operating system concepts
SMART_READER_LITE
LIVE PREVIEW

Operating System Concepts Mehdi Kargahi ECE Department University - - PowerPoint PPT Presentation

Operating System Concepts Mehdi Kargahi ECE Department University of Tehran Spring 2008 1 2/4/2008 Reference A. Silberschatz, G. Gagne, and P. B. Galvin, Operating System Concepts, 7th Ed., 2005. 2/4/2008 2 Course Plan


slide-1
SLIDE 1

2/4/2008 1

Operating System Concepts

Mehdi Kargahi ECE Department University of Tehran Spring 2008

slide-2
SLIDE 2

2/4/2008 2

Reference

  • A. Silberschatz, G. Gagne, and P. B. Galvin,

“Operating System Concepts”, 7th Ed., 2005.

slide-3
SLIDE 3

2/4/2008 3

Course Plan

1.

Theoretical concepts

  • Exercises
  • Quiz
  • Midterm
  • Final

2.

Class participation

3.

Projects

  • Linux & Windows
  • Small scale kernel programming

4.

Exercise class participation

slide-4
SLIDE 4

2/4/2008 4

Course Outline

Introduction (Terminologies & Overview) Different Structures of Operating Systems Processes and Threads CPU Scheduling (Approaches and Algorithms) Process Synchronization: Facts and Mechanisms Resource Sharing and Deadlock Main and Virtual Memory Management Storage Management Protection & Special Purpose Systems

slide-5
SLIDE 5

2/4/2008 5

Components of a Computer System

slide-6
SLIDE 6

2/4/2008 6

Definitions

User View

Single-user (ease of use, performance) User at a terminal of a mainframe (fair sharing) User at a workstation on a network of servers (a tradeoff

between usability & resource util.)

PDAs (performance/amount of battery life) Embedded systems (almost no user intervention)

System View

Efficient and fair allocation of resources Controlling programs to prevent errors and improper use of the

computer (operations and I/O devices)

slide-7
SLIDE 7

2/4/2008 7

Computer-System Organization

Firmware: Bootstrap program (in ROM or

EEPROM)

Initializes CPU registers, device controllers, memory

contents

Locates and loads into memory the OS kernel

slide-8
SLIDE 8

2/4/2008 8

How the OS Discovers the Occurrence

  • f an Event

Polling Interrupt

From hardware by a signal sent to the CPU From software by system call (monitor call)

Interrupt time line for a single process doing output

slide-9
SLIDE 9

2/4/2008 9

Interrupts

Interrupts inform the completion of I/O to the CPU Interrupt Service Routine (ISR) Device drivers? Typically: A device driver for each device controller! Examples Direct Memory Access (DMA) What OS does with respect to DMA?

Determination of buffers, pointers, and counters for the I/O

device

Sending the start command The Completion of transfer will be notified by an interrupt

DMA steals memory cycles from CPU to access the bus

slide-10
SLIDE 10

2/4/2008 10

The Interplay of Components of a Computer System

slide-11
SLIDE 11

2/4/2008 11

Computer-System Architecture

Single-Processor Systems Multiprocessor Systems Clustered Systems

slide-12
SLIDE 12

2/4/2008 12

Single-Processor Systems

Range from PDAs to mainframes They may have special-purpose processors for I/O

devices

slide-13
SLIDE 13

2/4/2008 13

Multi-Processor (Tightly-Coupled) Systems

Sharing

the computer bus, sometimes the clock, memory, and

peripheral devices Main advantages

Increased throughput: the speedup with N processors in not

N due to overheads, contention for shared resources, and that the degree of requests is not N times of a single-processor system

Economy of scale: due to sharing of resources Increased reliability: just slows down due to failure

Graceful degradation Fault tolerance: differs from graceful degradation

slide-14
SLIDE 14

2/4/2008 14

Multi-Processor (Tightly-Coupled) Systems

Two types (HW/SW)

Asymmetric multiprocessing

Master-slave relationship (e.g., SunOS Ver. 4)

Symmetric multiprocessing (SMP)

E.g., Windows, Linux, and Mac OS Multi-core CPUs

Blade servers

Multiple processor boards, I/O boards, and

networking boards on the same chassis

They boot independently and run their own OS

slide-15
SLIDE 15

2/4/2008 15

Clustered Systems

Two or more individual systems coupled together Share storage Linked via a LAN or InfiniBand High availability Clustering

Asymmetric (Hot-standby) Symmetric Parallel clusters: allow multiple hosts to access the

same date on the shared storage

Clustering over a WAN

slide-16
SLIDE 16

2/4/2008 16

Operating-System Structure

Program vs. process/task/job Batch systems Buffering Spooling Multiprogramming

Increasing CPU utilization

Jobs are loaded into memory Scheduling & Memory management Switching at job completion/wait for IO

Time-sharing (Multitasking)

User interaction with the system Switching between users and tasks with high freq.

Switching at job completion/wait for IO/completion of time-slice

slide-17
SLIDE 17

2/4/2008 17

Operating-System Structure

Job scheduling

Selecting a job from the job pool to be loaded into memory

CPU scheduling

Selecting the next ready job to run

Virtual memory

Tries to separate logical memory from physical memory

through swapping Time sharing may require CPU sch., mem. and virtual

  • mem. managements, file system, disk management,

protection of resources, job synchronization, deadlock management

slide-18
SLIDE 18

2/4/2008 18

Operating-System Operations

Modern operating systems are interrupt-driven Trap is a software interrupt Dual-Mode operation (through mode bit)

User mode (1) Kernel (Supervisor, System, or Privileged) mode (0)

Privileged instructions

slide-19
SLIDE 19

2/4/2008 19

Privileged Instructions

The instruction to change mode bit I/O instructions Timer management Interrupt (and interrupt vector) management

What would be occurred if it was not privileged?

… Errors violating modes are detected by the

hardware and it will trap to the OS. The trap transfers control through the interrupt vector to the OS.

slide-20
SLIDE 20

2/4/2008 20

Timer

Fixed or variable timer Preventing a program from getting stuck in an

infinite loop

Time sharing

slide-21
SLIDE 21

2/4/2008 21

Operating-System Operations

Process Management Memory Management Storage Management

File-System Mass-Storage Caching I/O Systems

Protection and Security Command Interpreter