Uniprocessor Scheduling

Slides:



Advertisements
Similar presentations
Uniprocessor Scheduling Chapter 9 Operating Systems: Internals and Design Principles, 6/E William Stallings Patricia Roy Manatee Community College, Venice,
Advertisements

Chapter 9 Uniprocessor Scheduling Operating Systems: Internals and Design Principles, 6/E William Stallings Patricia Roy Manatee Community College, Venice,
Chapter 9 Uniprocessor Scheduling
1 Uniprocessor Scheduling Types of scheduling –The aim of processor scheduling is to assign processes to be executed by the processor so as to optimize.
Chapter 9 Uniprocessor Scheduling
Chapter 9 Uniprocessor Scheduling Operating Systems: Internals and Design Principles, 6/E William Stallings Dave Bremer Otago Polytechnic, N.Z. ©2008,
Chapter 9 Uniprocessor Scheduling Operating Systems: Internals and Design Principles, 6/E William Stallings Dave Bremer Otago Polytechnic, N.Z. ©2008,
Ceng Operating Systems Chapter 2.2 : Process Scheduling Process concept  Process scheduling Interprocess communication Deadlocks Threads.
Day 25 Uniprocessor scheduling. Algorithm: Selection function Selection function – which process among ready processes to select. w – time spent in system,
Chapter 9 Uniprocessor Scheduling
Uniprocessor Scheduling Chapter 9. Aim of Scheduling The key to multiprogramming is scheduling Scheduling is done to meet the goals of –Response time.
1 Uniprocessor Scheduling Chapter 9. 2 Aims of Scheduling Assign processes to be executed by the processor(s) Response time Throughput Processor efficiency.
1 Lecture 10: Uniprocessor Scheduling. 2 CPU Scheduling n The problem: scheduling the usage of a single processor among all the existing processes in.
1 Uniprocessor Scheduling Chapter 9. 2 Aim of Scheduling Main Job: Assign processes to be executed by the processor(s) and processes to be loaded in main.
Chapter 9 Uniprocessor Scheduling Seventh Edition By William Stallings Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Operating Systems: Internals.
Uniprocessor Scheduling
CPU Scheduling Chapter 6 Chapter 6.
Chapter 6: CPU Scheduling
Computer Architecture and Operating Systems CS 3230: Operating System Section Lecture OS-3 CPU Scheduling Department of Computer Science and Software Engineering.
Lecture 5: Uniprocessor Scheduling
1 Uniprocessor Scheduling Chapter 9. 2 CPU Scheduling We concentrate on the problem of scheduling the usage of a single processor among all the existing.
Chapter 9 Uniprocessor Scheduling Spring, 2011 School of Computer Science & Engineering Chung-Ang University.
Chapter 9 Uniprocessor Scheduling Operating Systems: Internals and Design Principles, 6/E William Stallings Patricia Roy Manatee Community College, Venice,
Chapter 9 Uniprocessor Scheduling Operating Systems: Internals and Design Principles, 6/E William Stallings Patricia Roy Manatee Community College, Venice,
Chapter 6 CPU SCHEDULING.
Chapter 9 Uniprocessor Scheduling Seventh Edition By William Stallings Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Operating Systems: Internals.
Operating System Chapter 9. Uniprocessor Scheduling
Uniprocessor Scheduling Chapter 9. Aim of Scheduling To improve: Response time: time it takes a system to react to a given input Turnaround Time (TAT)
Uniprocessor Scheduling Chapter 9. Aim of Scheduling Minimize response time Maximize throughput Maximize processor efficiency.
1 Our focus  scheduling a single CPU among all the processes in the system  Key Criteria: Maximize CPU utilization Maximize throughput Minimize waiting.
1 Uniprocessor Scheduling Chapter 9. 2 Aim of Scheduling Response time Throughput Processor efficiency.
Uniprocessor Scheduling Chapter 9. Aim of Scheduling Response time Throughput Processor efficiency.
Uniprocessor Scheduling
Operating System 9 UNIPROCESSOR SCHEDULING. TYPES OF PROCESSOR SCHEDULING.
Uniprocessor Scheduling Chapter 9. Processor Scheduling Processor scheduling determines the assignment of processes to be executed by the processor over.
Uniprocessor Scheduling Chapter 9. Aim of Scheduling Assign processes to be executed by the processor or processors: –Response time –Throughput –Processor.
Processor Scheduling Hank Levy. 22/4/2016 Goals for Multiprogramming In a multiprogramming system, we try to increase utilization and thruput by overlapping.
Lecture Topics: 11/15 CPU scheduling: –Scheduling goals and algorithms.
Chapter 9 Uniprocessor Scheduling Operating Systems: Internals and Design Principles, 6/E William Stallings Dave Bremer Otago Polytechnic, N.Z. ©2008,
Lecturer 5: Process Scheduling Process Scheduling  Criteria & Objectives Types of Scheduling  Long term  Medium term  Short term CPU Scheduling Algorithms.
1 Uniprocessor Scheduling Chapter 9. 2 Aim of Scheduling Assign processes to be executed by the processor(s) Response time Throughput Processor efficiency.
Uniprocessor Scheduling Chapter 9 Operating Systems: Internals and Design Principles, 6/E William Stallings Patricia Roy Manatee Community College, Venice,
Uniprocessor Scheduling
CPU Scheduling Chapter 5.
Uniprocessor Scheduling
Chapter 2.2 : Process Scheduling
Day 25 Uniprocessor scheduling
Chapter 6: CPU Scheduling
Operating Systems CPU Scheduling.
Chapter 6: CPU Scheduling
Chapter 5: CPU Scheduling
Introduction What is an operating system bootstrap
Uniprocessor Scheduling
OverView of Scheduling
Operating System Concepts
Uniprocessor scheduling
Operating System Chapter 9. Uniprocessor Scheduling
TDC 311 Process Scheduling.
Chapter 9 Uniprocessor Scheduling
Operating System 9 UNIPROCESSOR SCHEDULING
Chapter 9 Uniprocessor Scheduling
Process Scheduling B.Ramamurthy 2/23/2019.
Processor Scheduling Hank Levy 1.
Uniprocessor scheduling
Uniprocessor Process Management & Process Scheduling
Uniprocessor Scheduling
Uniprocessor Scheduling
CPU Scheduling.
CPU Scheduling: Basic Concepts
Chapter 5: CPU Scheduling
Presentation transcript:

Uniprocessor Scheduling Scheduling of Processes

Types of Scheduling Long-term (least frequent decision) Medium-term When an new process is created, will it be admitted to the ready queue? Controls degree of multiprogramming (balances response/turnaround time and processor utilization) Can consider priority, expected execution time, I/O requirements, etc. Responds to requests for interactive sessions Medium-term Which processes should have frames allocated? Also affects degree of multiprogramming Already discussed in context of memory management Short-term (most frequent decision) Which process should execute next? Focus of this lesson I/O – next lesson

Short-Term Scheduling Performed by part of kernel referred to as dispatcher Invoked in response to Timer interrupts I/O interrupts System calls Signals (e.g. from semaphores) Some long-term and medium-term scheduling events

Short-Term Scheduling Criteria Performance Related Other User Oriented Turnaround time Response time Deadlines Predictability System Oriented Throughput Processor utilization Fairness Enforcing priorities Balancing resources

Short Term Scheduling Policies Can be described in terms of Selection function Decision mode

Selection Function Determines which of the ready processes to execute Example inputs: s: total service time required by the process e: time spent so far in execution w: time spent so far in system (executing and waiting) May also consider resource management or other execution characteristics of processes

Decision Mode Specifies times at which selection function is invoked Nonpreemptive Selection function used only when running process Blocks for I/O Requests OS service Terminates Preemptive Selection function is used at other times Timer interrupts Process admission Selection function is used when a process blocks terminates enters the system time slice expires.

Process Scheduling Example

FCFS/FIFO Policy Nonpreemptive Always select the process that has been in the ready queue the longest 5 10 15 20 A B C D E

Round Robin Policy Preemptive -- processes run for a time-slice or quantum Always select the process that has been in the ready queue the longest 5 10 15 20 A B C D E

Virtual Round Robin Policy I/O-bound processes typically do not use a complete quantum Put processes with pending I/O in auxiliary queue, remember how much time remains in their time slice Give preference to processes in auxiliary queue Allow to run for remainder of time slice

Shortest Process Next Policy Nonpreemptive Always select process with shortest estimated processing time 5 10 15 20 A B C D E

Shortest Remaining Time Policy Preemptive When a new process enters the system, or when the running process leaves the running state Select process with shortest estimated remaining processing time 5 10 15 20 A B C D E

HRRN Policy HRRN = Highest Response Ratio Next Nonpreemptive Always select the process that has the highest value of A B C D E 5 10 15 20

Multi-Level Feedback Policy Preemptive based on time quantum Maintain a ready queue for each priority When a process is preempted, move it to a lower priority queue Note: If there are no processes waiting, don’t preempt current process With quantum = 1, long processes will have very large turnaround time Give processes from queue RQi quantum = 2i

Quantum = 1 5 10 15 20 A B C D E

Quantum = 2i [[[Need to redo figure]]]