Chapter 9 Uniprocessor Scheduling Spring, 2011 School of Computer Science & Engineering Chung-Ang University.

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 3: CPU Scheduling
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 Module CPU Scheduling n We concentrate on the problem of scheduling the usage of a single processor among all the existing.
Chapter 9 Uniprocessor Scheduling
1 Uniprocessor Scheduling Chapter 9. 2 Aims of Scheduling Assign processes to be executed by the processor(s) Response time Throughput Processor efficiency.
Informationsteknologi Tuesday, October 9, 2007Computer Systems/Operating Systems - Class 141 Today’s class Scheduling.
A. Frank - P. Weisberg Operating Systems CPU Scheduling.
7/12/2015Page 1 Process Scheduling B.Ramamurthy. 7/12/2015Page 2 Introduction An important aspect of multiprogramming is scheduling. The resources that.
1 Lecture 10: Uniprocessor Scheduling. 2 CPU Scheduling n The problem: scheduling the usage of a single processor among all the existing processes in.
1Chapter 05, Fall 2008 CPU Scheduling The CPU scheduler (sometimes called the dispatcher or short-term scheduler): Selects a process from the ready queue.
Chapter 9 Uniprocessor Scheduling Seventh Edition By William Stallings Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Operating Systems: Internals.
1 CPU Scheduling & Deadlock Operating Systems Lecture 4.
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.
10CSE CPU Scheduling Copyrights Lecture Slides adapted from “ Advanced Operating Systems ”, Lecture Notes by Prof. Prof. Daniel Mosse, University Of Pittsburgh,
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 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.
Fall 2000M.B. Ibáñez Lecture 11 Uniprocessor Scheduling.
1 Uniprocessor Scheduling Chapter 9. 2 CPU Scheduling n We concentrate on the problem of scheduling the usage of a single processor among all the existing.
Lecture 7: Scheduling preemptive/non-preemptive scheduler CPU bursts
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.
Lecture Topics: 11/15 CPU scheduling: –Scheduling goals and algorithms.
1 Uniprocessor Scheduling Chapter 3. 2 Alternating Sequence of CPU And I/O Bursts.
Chapter 9 Uniprocessor Scheduling Operating Systems: Internals and Design Principles, 6/E William Stallings Dave Bremer Otago Polytechnic, N.Z. ©2008,
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,
Principles of Operating Systems Lecture 15
Uniprocessor Scheduling
Uniprocessor Scheduling
CPU Scheduling Chapter 5.
Uniprocessor Scheduling
Chapter 2.2 : Process Scheduling
Chapter 6: CPU Scheduling
Uniprocessor Scheduling
OverView of Scheduling
Uniprocessor scheduling
Operating System Chapter 9. Uniprocessor Scheduling
Chapter 9 Uniprocessor Scheduling
Operating System 9 UNIPROCESSOR SCHEDULING
Chapter 9 Uniprocessor Scheduling
Process Scheduling B.Ramamurthy 2/23/2019.
Uniprocessor Scheduling
Uniprocessor Scheduling
Presentation transcript:

Chapter 9 Uniprocessor Scheduling Spring, 2011 School of Computer Science & Engineering Chung-Ang University

Aim of Processor Scheduling Assign processes to be executed by the processor(s) over time, in a way that meets system objectives such as –Response time –Throughput –Processor efficiency 2

Types of Scheduling 3

Scheduling and Process State Transitions 4

Levels of Scheduling 5

Long-Term Scheduling Performed when a new process is created Determines which programs are admitted to the system for processing Controls the degree of multiprogramming Two decisions –When to take on one or more additional processes –Which job(s) to accept and turn into processes 6

Medium-Term Scheduling Part of the swapping function A decision whether to add a process to those that are at least partially in main memory and therefore available for execution The swapping-in decision is based on the need to manage the degree of multiprogramming 7

Short-Term Scheduling Known as the dispatcher Executes most frequently Invoked whenever an event occurs that may lead to the blocking of the current process –Clock interrupts –I/O interrupts –Operating system calls –Signals(e.g., semaphores) 8

Queuing Diagram 9

Short-Term Scheduling Criteria User-oriented : Response Time –Elapsed time between the submission of a request until there is output –Maximize the number of users with average response time of 2 sec. or less System-oriented : Throughput –Efficient utilization of the processor –Maximize the number of processes completed per unit of time 10

Short-Term Scheduling Criteria Performance-related –Quantitative –Measurable such as response time and throughput Not directly performance-related –Qualitative –Not readily measurable such as predictability 11

Scheduling Criteria 12

Scheduling Criteria 13

Priorities Scheduler will always choose a process of higher priority over one of lower priority Use multiple ready queues to represent multiple levels of priority Lower-priority may suffer starvation –Allow a process to change its priority based on its age or execution history 14

Priority Queuing 15

Decision Mode Specifies the instances in time at which the selection function is excercised Nonpreemptive –Once a process is in the running state, it will continue until it terminates or blocks itself for I/O or to request some OS service 16

Decision Mode Preemptive –Currently running process may be interrupted and moved to the Ready state by the operating system When a new process arrives When an interrupt occurs Periodically, based on a clock interrupt –Allows for better service since any one process cannot monopolize the processor for very long 17

Process Scheduling Example 18

First-Come-First-Served Each process joins the Ready queue When the current process ceases to execute, the process that has been in the Ready queue the longest is selected 19

First-Come-First-Served A short process may have to wait a very long time before it can execute Favors CPU-bound processes –Short I/O processes have to wait until a long CPU-bound process completes Not an attractive alternative on its own, and so often combined with a priority scheme 20

Round Robin Uses preemption based on a clock 21

Round Robin A clock interrupt is generated at periodic intervals The principle design issue: the length of the time quantum When an interrupt occurs, the currently running process is placed in the ready queue –Next ready job is selected on a FCFS basis Known as time slicing 22

Effect of Size of Preemption Time Quantum 23

Effect of Size of Preemption Time Quantum 24

Round Robin Particularly effective in a general-purpose time-sharing system or transaction processing system Processor-bound processes tend to receive an unfair portion of processor time –Poor performance for I/O-bound processes –Inefficient use of I/O devices –An increase in the variance of response time A VRR may avoid this unfairness 25

Queuing Diagram 26

Shortest Process Next Nonpreemptive policy for reducing bias in favor of long processes Process with shortest expected processing time is selected next Short process jumps ahead of longer processes 27

Shortest Process Next Overall performance is significantly improved in terms of response time –However, the variability of response time increases, especially for longer processes –Predictability of longer processes is reduced If the estimated time for process is substantially under the actual running time, the operating system may abort it The possibility of starvation for longer processes 28

Shortest Remaining Time Preemptive version of SPN Must estimate processing time A risk of starvation of longer processes Elapsed times must be recorded 29

Highest Response Ratio Next Choose next process with the greatest ratio Attractive because it accounts the age of the process → A longer process will eventually get past competing shorter jobs 30

Feedback Penalize jobs that have been running longer If we don’t know remaining time to execute, let’s focus on the time spent so far Newer, shorter processes are favored over older, longer processes 31

Feedback Scheduling 32

Scheduling Policies 33

Comparison of Scheduling Policies 34

Comparison of Scheduling Policies 35

Fair-Share Scheduling User’s application runs as a collection of processes (threads) The concern is not how a particular process performs but rather how his set of processes performs Need to make scheduling decisions based on process sets FSS monitors usage to give fewer resources to users who have had more than their fair share 36

Fair-Share Scheduler 37

Traditional UNIX Scheduling Multilevel feedback using round robin within each of the priority queues If a running process does not block or complete within 1 second, it is preempted Priorities are recomputed once per second The base priority divides all processes into fixed bands of priority levels 38

Bands Decreasing order of priority –Swapper –Block I/O device control –File manipulation –Character I/O device control –User processes 39

Example of Traditional UNIX Process Scheduling 40