Uniprocessor Scheduling - PowerPoint PPT Presentation

1 / 17
About This Presentation
Title:

Uniprocessor Scheduling

Description:

Process Scheduling Example. Preemptive version of shortest ... Multilevel feedback using round robin within each of the priority queues. 1-second preemption. ... – PowerPoint PPT presentation

Number of Views:166
Avg rating:3.0/5.0
Slides: 18
Provided by: patt214
Category:

less

Transcript and Presenter's Notes

Title: Uniprocessor Scheduling


1
Uniprocessor Scheduling
  • Chapter 9

2
Aim of Scheduling
  • To improve
  • Response time time it takes a system to react to
    a given input
  • Turnaround Time (TAT) Total time spent in the
    system

  • waiting time service time
  • Throughput jobs per minute (inverse of TAT)

3
Types of Scheduling
4
Long-Term Scheduling
  • Determines which programs are admitted to the
    system for processing
  • Controls the degree of multiprogramming
  • More processes, smaller percentage of time each
    process is executed
  • Which job to admit? FCFS, Priority, expected
    exec time, I/O req.s

Medium-Term Scheduling
  • Part of the swapping function
  • Swapping-in decision is based on the need to
    manage the degree of multiprogramming

Short-Term Scheduling
  • Known as the dispatcher
  • Executes most frequently
  • Invoked when an event occurs Clock interrupts,
    I/O, OS calls, Signals, etc.

5
Evaluation Criteria for Short-Term Scheduling
Policies
  • User-oriented, performance related
  • Turnaround time time between submission and
    completion
  • Response Time time between submission and the
    first output.
  • User-oriented, other
  • Predictability runs the same way (Time cost)
    regardless of the system load
  • System-oriented, Performance related
  • Maximize Throughput rate at which processes are
    completed
  • Processor utilization percentage of time that
    the processor is busy
  • System-oriented, other
  • Fairness
  • Enforcing priorities?
  • Balancing resources? Is it favoring processes
    that do not request stressed resources?

6
Priorities
  • Scheduler chooses a process of higher priority
    over one of lower priority
  • Use multiple ready queues to represent each level
    of priority
  • Lower-priority may suffer starvation
  • allow a process to change its priority based on
    its age or execution history

Decision Mode
  • Nonpreemptive
  • Once a process is in the running state, it will
    continue until it terminates or blocks itself
  • Preemptive
  • Currently running process may be interrupted and
    moved to the Ready state due to an external
    event.
  • No single process can monopolize the processor
    for very long ? Better service

7
Process Scheduling Example
8
First-Come-First-Served (FCFS)
A
B
C
D
E
  • Each process joins the Ready queue
  • Nonpreemptive
  • The oldest process in the ready queue is selected
    to run next
  • Disadvantage
  • A short process may have to wait a very long
    time before it can execute
  • Advantage Favors CPU-bound processes
  • I/O processes have to wait until CPU-bound
    process completes

9
Round-Robin (RR)
A
B
C
D
E
  • Preemption based on a clock (time slicing)
  • Clock interrupt is generated at periodic
    intervals (time slice is determined a priori)
  • When an interrupt occurs, the currently running
    process is placed in the ready queue and next
    ready job is selected to run

10
Shortest Process Next (SPN)
  • Nonpreemptive
  • Process with shortest expected processing time is
    selected next.
  • For batch jobs, user is required to estimate the
    running time. If estimated time for process not
    correct, the OS may abort it.
  • For interactive jobs, OS tries to predict it.
  • Short process jumps ahead of longer processes
  • Possibility of starvation for longer processes

11
Process Scheduling Example
12
Shortest Remaining Time (SRT)
  • Preemptive version of shortest process next
    policy
  • Achieves better turnaround time as compared to
    SPN, because a short job is given immediate
    preference to a running longer job
  • Risk of starvation for long jobs
  • Must estimate the remaining processing time ? Not
    easy!

13
Highest Response Ratio Next (HRRN)
A
B
C
D
E
  • Nonpreemptive
  • An important performance criteria to minimize is
  • Normalized TurnAround Time TAT /
    ServiceTime
  • Choose next process with the highest response
    ratio R (so that it does not get any higher!)

14
Feedback (FB)
  • Hard to predict the remaining time a process
    needs to execute.
  • Instead, we can penalize jobs that have been
    running longer
  • Each subsequent time that a job is preempted, it
    is moved to a lower-priority ready queue. This
    way, a longer process will gradually drift
    downward in the hierarchy of queues.
  • starvation may occur if new jobs enter the system
    frequently

15
A Comparison of Scheduling Policies
16
Characteristics of Various Scheduling Policies
17
Traditional UNIX Scheduling
  • Designed to provide good response time for
    interactive users while ensuring that
    low-priority background jobs do not starve
  • Multilevel feedback using round robin within each
    of the priority queues. 1-second preemption.
  • Priorities are recomputed once per second.
  • It is based on process type and execution history
  • In decreasing order of priority, the bands are as
    follows
  • Swapper
  • Block I/O device control
  • File manipulation
  • Character I/O device control
  • User processes
Write a Comment
User Comments (0)
About PowerShow.com