SlideShare a Scribd company logo
1 of 45
Chapter 5: CPU Scheduling




Operating System Concepts – 8th Edition, SLU SCIS   Silberschatz, Galvin and Gagne ©2009
Chapter 5: CPU Scheduling

     •     Basic Concepts
     •     Scheduling Criteria
     •     Scheduling Algorithms
     •     Thread Scheduling
     •     Multiple-Processor Scheduling
     •     Operating Systems Examples
     •     Algorithm Evaluation




Operating System Concepts – 8th Edition, SLU SCIS   5.2   Silberschatz, Galvin and Gagne ©2009
Objectives

     • To introduce CPU scheduling, which is the basis for
       multiprogrammed operating systems
     • To describe various CPU-scheduling algorithms
     • To discuss evaluation criteria for selecting a CPU-scheduling
       algorithm for a particular system




Operating System Concepts – 8th Edition, SLU SCIS   5.3   Silberschatz, Galvin and Gagne ©2009
Basic Concepts

     • Maximum CPU utilization obtained with multiprogramming
     • CPU–I/O Burst Cycle – Process execution consists of a cycle of CPU
       execution and I/O wait
     • CPU burst distribution




Operating System Concepts – 8th Edition, SLU SCIS   5.4   Silberschatz, Galvin and Gagne ©2009
Histogram of CPU-burst Times




Operating System Concepts – 8th Edition, SLU SCIS   5.5   Silberschatz, Galvin and Gagne ©2009
Alternating Sequence of CPU And
                   I/O Bursts




Operating System Concepts – 8th Edition, SLU SCIS   5.6   Silberschatz, Galvin and Gagne ©2009
CPU Scheduler

     • Selects from among the processes in memory that are ready to
       execute, and allocates the CPU to one of them
     • CPU scheduling decisions may take place when a process:
            1. Switches from running to waiting state
            2. Switches from running to ready state
            3. Switches from waiting to ready
            4. Terminates
     • Scheduling under 1 and 4 is nonpreemptive
     • All other scheduling is preemptive



Operating System Concepts – 8th Edition, SLU SCIS   5.7   Silberschatz, Galvin and Gagne ©2009
Dispatcher

     • Dispatcher module gives control of the CPU to the process selected
       by the short-term scheduler; this involves:
         switching context
         switching to user mode
         jumping to the proper location in the user program to restart
           that program
     • Dispatch latency – time it takes for the dispatcher to stop one
       process and start another running




Operating System Concepts – 8th Edition, SLU SCIS   5.8   Silberschatz, Galvin and Gagne ©2009
Scheduling Criteria

     •  CPU utilization – keep the CPU as busy as possible
     •  Throughput – # of processes that complete their execution per
       time unit
     • Turnaround time – amount of time to execute a particular process
     • Waiting time – amount of time a process has been waiting in the
       ready queue
     • Response time – amount of time it takes from when a request was
       submitted until the first response is produced, not output (for
       timesharing environment)




Operating System Concepts – 8th Edition, SLU SCIS   5.9   Silberschatz, Galvin and Gagne ©2009
Scheduling Algorithm
                         Optimization Criteria
     •     Max CPU utilization
     •     Max throughput
     •     Min turnaround time
     •     Min waiting time
     •     Min response time




Operating System Concepts – 8th Edition, SLU SCIS   5.10   Silberschatz, Galvin and Gagne ©2009
First-Come, First-Served (FCFS)
                     Scheduling


       • Suppose that the processes arrive in the order: P1 , P2 , P3
         The Gantt Chart for the schedule is:




       • Waiting time for P1 = 0; P2 = 24; P3 = 27
       • Average waiting time: (0 + 24 + 27)/3 = 17



Operating System Concepts – 8th Edition, SLU SCIS   5.11   Silberschatz, Galvin and Gagne ©2009
First-Come, First-Served (FCFS)
                     Scheduling
     Suppose that the processes arrive in the order
                                  P2 , P3 , P1
     • The Gantt chart for the schedule is:




       • Waiting time for P1 = 6; P2 = 0; P3 = 3
       • Average waiting time: (6 + 0 + 3)/3 = 3
       •Much better than previous case
       • Convoy effect short process behind long process

Operating System Concepts – 8th Edition, SLU SCIS   5.12   Silberschatz, Galvin and Gagne ©2009
Shortest-Job-First (SJF) Scheduling

     •  Associate with each process the length of its next CPU burst. Use
       these lengths to schedule the process with the shortest time
     • SJF is optimal – gives minimum average waiting time for a given set
       of processes
         The difficulty is knowing the length of the next CPU request




Operating System Concepts – 8th Edition, SLU SCIS   5.13   Silberschatz, Galvin and Gagne ©2009
Example of SJF




Operating System Concepts – 8th Edition, SLU SCIS   5.14   Silberschatz, Galvin and Gagne ©2009
Determining Length of Next CPU
                      Burst
     •    Can only estimate the length
     •    Can be done by using the length of previous CPU bursts, using
          exponential averaging




Operating System Concepts – 8th Edition, SLU SCIS   5.15   Silberschatz, Galvin and Gagne ©2009
Prediction of the Length of the
                    Next CPU Burst




Operating System Concepts – 8th Edition, SLU SCIS   5.16   Silberschatz, Galvin and Gagne ©2009
Examples of Exponential
                           Averaging
     •     α =0
            τ τ n+1 = n
            Recent history does not count
     •     α =1
            τn+1 = α tn
            Only the actual last CPU burst counts
     •     If we expand the formula, we get:
                  τn+1 = α tn+(1 - α)α tn -1 + …
                  +(1 - α )j α tn -j + …
                  +(1 - α )n +1 τ0
     •     Since both α and (1 - α) are less than or equal to 1, each successive
          term has less weight than its predecessor
Operating System Concepts – 8th Edition, SLU SCIS   5.17   Silberschatz, Galvin and Gagne ©2009
Priority Scheduling

     •  A priority number (integer) is associated with each process
     •  The CPU is allocated to the process with the highest priority
       (smallest integer ≡ highest priority)
         Preemptive
         nonpreemptive
     • SJF is a priority scheduling where priority is the predicted next CPU
       burst time
     • Problem ≡ Starvation – low priority processes may never execute
     • Solution ≡ Aging – as time progresses increase the priority of the
       process


Operating System Concepts – 8th Edition, SLU SCIS   5.18   Silberschatz, Galvin and Gagne ©2009
Round Robin (RR)

     •  Each process gets a small unit of CPU time (time quantum), usually
       10-100 milliseconds. After this time has elapsed, the process is
       preempted and added to the end of the ready queue.
     • If there are n processes in the ready queue and the time quantum is
       q, then each process gets 1/n of the CPU time in chunks of at most q
       time units at once. No process waits more than (n-1)q time units.
     • Performance
         q large ⇒ FIFO
         q small ⇒ q must be large with respect to context switch,
           otherwise overhead is too high


Operating System Concepts – 8th Edition, SLU SCIS   5.19   Silberschatz, Galvin and Gagne ©2009
Example of RR with Time
                        Quantum = 4




Operating System Concepts – 8th Edition, SLU SCIS   5.20   Silberschatz, Galvin and Gagne ©2009
Time Quantum and Context
                         Switch




Operating System Concepts – 8th Edition, SLU SCIS   5.21   Silberschatz, Galvin and Gagne ©2009
Turnaround Time Varies With The
               Time Quantum




Operating System Concepts – 8th Edition, SLU SCIS   5.22   Silberschatz, Galvin and Gagne ©2009
Multilevel Queue

     •     Ready queue is partitioned into separate queues:
           foreground (interactive)
           background (batch)
     •     Each queue has its own scheduling algorithm
            foreground – RR
            background – FCFS
     •     Scheduling must be done between the queues
            Fixed priority scheduling; (i.e., serve all from foreground then from
              background). Possibility of starvation.
            Time slice – each queue gets a certain amount of CPU time which it
              can schedule amongst its processes; i.e., 80% to foreground in RR
            20% to background in FCFS

Operating System Concepts – 8th Edition, SLU SCIS   5.23      Silberschatz, Galvin and Gagne ©2009
Multilevel Queue Scheduling




Operating System Concepts – 8th Edition, SLU SCIS   5.24   Silberschatz, Galvin and Gagne ©2009
Multilevel Feedback Queue

     • A process can move between the various queues; aging can be
       implemented this way
     • Multilevel-feedback-queue scheduler defined by the following
       parameters:
         number of queues
         scheduling algorithms for each queue
         method used to determine when to upgrade a process
         method used to determine when to demote a process
         method used to determine which queue a process will enter
         when that process needs service


Operating System Concepts – 8th Edition, SLU SCIS   5.25   Silberschatz, Galvin and Gagne ©2009
Example of Multilevel Feedback
                     Queue
     •     Three queues:
            Q0 – RR with time quantum 8 milliseconds
            Q1 – RR time quantum 16 milliseconds
            Q2 – FCFS
     •     Scheduling
            A new job enters queue Q0 which is served FCFS. When it gains
              CPU, job receives 8 milliseconds. If it does not finish in 8
              milliseconds, job is moved to queue Q1.
            At Q1 job is again served FCFS and receives 16 additional
              milliseconds. If it still does not complete, it is preempted and
              moved to queue Q2.

Operating System Concepts – 8th Edition, SLU SCIS   5.26   Silberschatz, Galvin and Gagne ©2009
Multilevel Feedback Queues




Operating System Concepts – 8th Edition, SLU SCIS   5.27   Silberschatz, Galvin and Gagne ©2009
Thread Scheduling

     •  Distinction between user-level and kernel-level threads
     •  Many-to-one and many-to-many models, thread library schedules
       user-level threads to run on LWP
         Known as process-contention scope (PCS) since scheduling
           competition is within the process
     • Kernel thread scheduled onto available CPU is system-contention
       scope (SCS) – competition among all threads in system




Operating System Concepts – 8th Edition, SLU SCIS   5.28   Silberschatz, Galvin and Gagne ©2009
Pthread Scheduling

     •     API allows specifying either PCS or SCS during thread creation
            PTHREAD SCOPE PROCESS schedules threads using PCS
             scheduling
            PTHREAD SCOPE SYSTEM schedules threads using SCS
             scheduling.




Operating System Concepts – 8th Edition, SLU SCIS   5.29   Silberschatz, Galvin and Gagne ©2009
Pthread Scheduling API




Operating System Concepts – 8th Edition, SLU SCIS   5.30   Silberschatz, Galvin and Gagne ©2009
Pthread Scheduling API




Operating System Concepts – 8th Edition, SLU SCIS   5.31   Silberschatz, Galvin and Gagne ©2009
Multiple-Processor Scheduling

     •  CPU scheduling more complex when multiple CPUs are available
     •  Homogeneous processors within a multiprocessor
     •  Asymmetric multiprocessing – only one processor accesses the
       system data structures, alleviating the need for data sharing
     • Symmetric multiprocessing (SMP) – each processor is self-
       scheduling, all processes in common ready queue, or each has its
       own private queue of ready processes
     • Processor affinity – process has affinity for processor on which it is
       currently running
         soft affinity
         hard affinity

Operating System Concepts – 8th Edition, SLU SCIS   5.32   Silberschatz, Galvin and Gagne ©2009
NUMA and CPU Scheduling




Operating System Concepts – 8th Edition, SLU SCIS   5.33   Silberschatz, Galvin and Gagne ©2009
Multicore Processors

     • Recent trend to place multiple processor cores on same physical
       chip
     • Faster and consume less power
     • Multiple threads per core also growing
     • Takes advantage of memory stall to make progress on another
       thread while memory retrieve happens




Operating System Concepts – 8th Edition, SLU SCIS   5.34   Silberschatz, Galvin and Gagne ©2009
Multithreaded Multicore System




Operating System Concepts – 8th Edition, SLU SCIS   5.35   Silberschatz, Galvin and Gagne ©2009
Operating System Examples

     •     Solaris scheduling
     •     Windows XP scheduling
     •     Linux scheduling




Operating System Concepts – 8th Edition, SLU SCIS   5.36   Silberschatz, Galvin and Gagne ©2009
Solaris Dispatch Table




Operating System Concepts – 8th Edition, SLU SCIS   5.37   Silberschatz, Galvin and Gagne ©2009
Solaris Scheduling




Operating System Concepts – 8th Edition, SLU SCIS   5.38   Silberschatz, Galvin and Gagne ©2009
Windows XP Priorities




Operating System Concepts – 8th Edition, SLU SCIS   5.39   Silberschatz, Galvin and Gagne ©2009
Linux Scheduling

     •     Constant order O(1) scheduling time
     •     Two priority ranges: time-sharing and real-time
     •     Real-time range from 0 to 99 and nice value from 100 to 140
     •     (figure 5.15)




Operating System Concepts – 8th Edition, SLU SCIS   5.40   Silberschatz, Galvin and Gagne ©2009
Priorities and Time-slice length




Operating System Concepts – 8th Edition, SLU SCIS   5.41   Silberschatz, Galvin and Gagne ©2009
List of Tasks Indexed According to
                     Priorities




Operating System Concepts – 8th Edition, SLU SCIS   5.42   Silberschatz, Galvin and Gagne ©2009
Algorithm Evaluation

     • Deterministic modeling – takes a particular predetermined
       workload and defines the performance of each algorithm for that
       workload
     • Queueing models
     • Implementation




Operating System Concepts – 8th Edition, SLU SCIS   5.42   Silberschatz, Galvin and Gagne ©2009
Evaluation of CPU schedulers by
                   Simulation




Operating System Concepts – 8th Edition, SLU SCIS   5.44   Silberschatz, Galvin and Gagne ©2009
End of Chapter 5




Operating System Concepts – 8th Edition, SLU SCIS   Silberschatz, Galvin and Gagne ©2009

More Related Content

What's hot

Process scheduling in Light weight weight and Heavy weight processes.
Process scheduling in Light weight weight and Heavy weight processes.Process scheduling in Light weight weight and Heavy weight processes.
Process scheduling in Light weight weight and Heavy weight processes.Shreya Kumar
 
cpu scheduling
cpu schedulingcpu scheduling
cpu schedulinghashim102
 
Operating system 30 preemptive scheduling
Operating system 30 preemptive schedulingOperating system 30 preemptive scheduling
Operating system 30 preemptive schedulingVaibhav Khanna
 
CPU Scheduling in OS Presentation
CPU Scheduling in OS  PresentationCPU Scheduling in OS  Presentation
CPU Scheduling in OS Presentationusmankiyani1
 
CPU scheduling ppt file
CPU scheduling ppt fileCPU scheduling ppt file
CPU scheduling ppt fileDwight Sabio
 
OS - CPU Scheduling
OS - CPU SchedulingOS - CPU Scheduling
OS - CPU Schedulingvinay arora
 
First-Come-First-Serve (FCFS)
First-Come-First-Serve (FCFS)First-Come-First-Serve (FCFS)
First-Come-First-Serve (FCFS)nikeAthena
 
CPU scheduling algorithms in OS
CPU scheduling algorithms in OSCPU scheduling algorithms in OS
CPU scheduling algorithms in OSharini0810
 
Comparison Analysis of CPU Scheduling : FCFS, SJF and Round Robin
Comparison Analysis of CPU Scheduling : FCFS, SJF and Round RobinComparison Analysis of CPU Scheduling : FCFS, SJF and Round Robin
Comparison Analysis of CPU Scheduling : FCFS, SJF and Round RobinUniversitas Pembangunan Panca Budi
 
17 cpu scheduling and scheduling criteria
17 cpu scheduling and scheduling criteria 17 cpu scheduling and scheduling criteria
17 cpu scheduling and scheduling criteria myrajendra
 
Scheduling algorithms
Scheduling algorithmsScheduling algorithms
Scheduling algorithmsPaurav Shah
 

What's hot (20)

Process scheduling in Light weight weight and Heavy weight processes.
Process scheduling in Light weight weight and Heavy weight processes.Process scheduling in Light weight weight and Heavy weight processes.
Process scheduling in Light weight weight and Heavy weight processes.
 
Cpu scheduling
Cpu schedulingCpu scheduling
Cpu scheduling
 
cpu scheduling
cpu schedulingcpu scheduling
cpu scheduling
 
5 Process Scheduling
5 Process Scheduling5 Process Scheduling
5 Process Scheduling
 
Operating system 30 preemptive scheduling
Operating system 30 preemptive schedulingOperating system 30 preemptive scheduling
Operating system 30 preemptive scheduling
 
scheduling
schedulingscheduling
scheduling
 
CPU Scheduling in OS Presentation
CPU Scheduling in OS  PresentationCPU Scheduling in OS  Presentation
CPU Scheduling in OS Presentation
 
CPU scheduling ppt file
CPU scheduling ppt fileCPU scheduling ppt file
CPU scheduling ppt file
 
OS - CPU Scheduling
OS - CPU SchedulingOS - CPU Scheduling
OS - CPU Scheduling
 
Cpu scheduling
Cpu schedulingCpu scheduling
Cpu scheduling
 
cpu scheduling in os
cpu scheduling in oscpu scheduling in os
cpu scheduling in os
 
First-Come-First-Serve (FCFS)
First-Come-First-Serve (FCFS)First-Come-First-Serve (FCFS)
First-Come-First-Serve (FCFS)
 
CPU scheduling algorithms in OS
CPU scheduling algorithms in OSCPU scheduling algorithms in OS
CPU scheduling algorithms in OS
 
Comparison Analysis of CPU Scheduling : FCFS, SJF and Round Robin
Comparison Analysis of CPU Scheduling : FCFS, SJF and Round RobinComparison Analysis of CPU Scheduling : FCFS, SJF and Round Robin
Comparison Analysis of CPU Scheduling : FCFS, SJF and Round Robin
 
Os prj ppt
Os prj pptOs prj ppt
Os prj ppt
 
Scheduling algorithms
Scheduling algorithmsScheduling algorithms
Scheduling algorithms
 
17 cpu scheduling and scheduling criteria
17 cpu scheduling and scheduling criteria 17 cpu scheduling and scheduling criteria
17 cpu scheduling and scheduling criteria
 
OSCh6
OSCh6OSCh6
OSCh6
 
Scheduling algorithms
Scheduling algorithmsScheduling algorithms
Scheduling algorithms
 
cpu scheduling OS
 cpu scheduling OS cpu scheduling OS
cpu scheduling OS
 

Viewers also liked

Viewers also liked (14)

Threads 2x[1]
Threads 2x[1]Threads 2x[1]
Threads 2x[1]
 
Template 1 ch3
Template 1 ch3Template 1 ch3
Template 1 ch3
 
Ch1-Operating System Concepts
Ch1-Operating System ConceptsCh1-Operating System Concepts
Ch1-Operating System Concepts
 
Ch8 of OS
Ch8 of OSCh8 of OS
Ch8 of OS
 
Main memory-2 (ch8,os)
Main memory-2 (ch8,os)Main memory-2 (ch8,os)
Main memory-2 (ch8,os)
 
Ch1
Ch1Ch1
Ch1
 
Ch2
Ch2Ch2
Ch2
 
Virtual memory
Virtual memoryVirtual memory
Virtual memory
 
Main Memory
Main MemoryMain Memory
Main Memory
 
Chapter 3: Processes
Chapter 3: ProcessesChapter 3: Processes
Chapter 3: Processes
 
Basic Blocks and Flow Graphs
Basic Blocks and Flow GraphsBasic Blocks and Flow Graphs
Basic Blocks and Flow Graphs
 
Chapter 2: Operating System Structures
Chapter 2: Operating System StructuresChapter 2: Operating System Structures
Chapter 2: Operating System Structures
 
Executive support system
Executive support systemExecutive support system
Executive support system
 
SOLUTION MANUAL OF OPERATING SYSTEM CONCEPTS BY ABRAHAM SILBERSCHATZ, PETER B...
SOLUTION MANUAL OF OPERATING SYSTEM CONCEPTS BY ABRAHAM SILBERSCHATZ, PETER B...SOLUTION MANUAL OF OPERATING SYSTEM CONCEPTS BY ABRAHAM SILBERSCHATZ, PETER B...
SOLUTION MANUAL OF OPERATING SYSTEM CONCEPTS BY ABRAHAM SILBERSCHATZ, PETER B...
 

Similar to Template 1 ch5

Ch5 cpu-scheduling
Ch5 cpu-schedulingCh5 cpu-scheduling
Ch5 cpu-schedulingAnkit Dubey
 
Operating System - CPU Scheduling Introduction
Operating System - CPU Scheduling IntroductionOperating System - CPU Scheduling Introduction
Operating System - CPU Scheduling IntroductionJimmyWilson26
 
cpu sheduling.pdf
cpu sheduling.pdfcpu sheduling.pdf
cpu sheduling.pdfogpaeog
 
scheduling.ppt
scheduling.pptscheduling.ppt
scheduling.pptJohn100878
 
Various CPU Scheduling Algorithms in OS.ppt
Various CPU Scheduling Algorithms in OS.pptVarious CPU Scheduling Algorithms in OS.ppt
Various CPU Scheduling Algorithms in OS.ppttaricvilla
 
ch6 (2).ppt operating system by williamm
ch6 (2).ppt operating system by williammch6 (2).ppt operating system by williamm
ch6 (2).ppt operating system by williammsidrayounas2004
 
cloud computing chapter one in computer science
cloud computing chapter one in computer sciencecloud computing chapter one in computer science
cloud computing chapter one in computer scienceTSha7
 
CPU scheduling are using in operating systems.ppt
CPU scheduling are using in operating systems.pptCPU scheduling are using in operating systems.ppt
CPU scheduling are using in operating systems.pptMAmir53
 
Cpu scheduling (1)
Cpu scheduling (1)Cpu scheduling (1)
Cpu scheduling (1)Ayush Oberai
 
Process scheduling : operating system ( Btech cse )
Process scheduling : operating system ( Btech cse )Process scheduling : operating system ( Btech cse )
Process scheduling : operating system ( Btech cse )HimanshuSharma1389
 
6 cpu scheduling
6 cpu scheduling6 cpu scheduling
6 cpu schedulingBaliThorat1
 
OS-CPU-Scheduling-chap5.pptx
OS-CPU-Scheduling-chap5.pptxOS-CPU-Scheduling-chap5.pptx
OS-CPU-Scheduling-chap5.pptxDrAmarNathDhebla
 
Operating systems chapter 5 silberschatz
Operating systems chapter 5 silberschatzOperating systems chapter 5 silberschatz
Operating systems chapter 5 silberschatzGiulianoRanauro
 
ch6_CPU Scheduling.ppt
ch6_CPU Scheduling.pptch6_CPU Scheduling.ppt
ch6_CPU Scheduling.pptridham29
 

Similar to Template 1 ch5 (20)

Ch5 cpu-scheduling
Ch5 cpu-schedulingCh5 cpu-scheduling
Ch5 cpu-scheduling
 
Operating System - CPU Scheduling Introduction
Operating System - CPU Scheduling IntroductionOperating System - CPU Scheduling Introduction
Operating System - CPU Scheduling Introduction
 
cpu sheduling.pdf
cpu sheduling.pdfcpu sheduling.pdf
cpu sheduling.pdf
 
ch6.ppt
ch6.pptch6.ppt
ch6.ppt
 
ch6.ppt
ch6.pptch6.ppt
ch6.ppt
 
scheduling.ppt
scheduling.pptscheduling.ppt
scheduling.ppt
 
Various CPU Scheduling Algorithms in OS.ppt
Various CPU Scheduling Algorithms in OS.pptVarious CPU Scheduling Algorithms in OS.ppt
Various CPU Scheduling Algorithms in OS.ppt
 
ch6.ppt
ch6.pptch6.ppt
ch6.ppt
 
ch6 (2).ppt operating system by williamm
ch6 (2).ppt operating system by williammch6 (2).ppt operating system by williamm
ch6 (2).ppt operating system by williamm
 
ch6.ppt
ch6.pptch6.ppt
ch6.ppt
 
cloud computing chapter one in computer science
cloud computing chapter one in computer sciencecloud computing chapter one in computer science
cloud computing chapter one in computer science
 
CPU scheduling are using in operating systems.ppt
CPU scheduling are using in operating systems.pptCPU scheduling are using in operating systems.ppt
CPU scheduling are using in operating systems.ppt
 
Cpu scheduling (1)
Cpu scheduling (1)Cpu scheduling (1)
Cpu scheduling (1)
 
Process scheduling : operating system ( Btech cse )
Process scheduling : operating system ( Btech cse )Process scheduling : operating system ( Btech cse )
Process scheduling : operating system ( Btech cse )
 
CPU Scheduling
CPU SchedulingCPU Scheduling
CPU Scheduling
 
6 cpu scheduling
6 cpu scheduling6 cpu scheduling
6 cpu scheduling
 
cpu scheduling.ppt
cpu scheduling.pptcpu scheduling.ppt
cpu scheduling.ppt
 
OS-CPU-Scheduling-chap5.pptx
OS-CPU-Scheduling-chap5.pptxOS-CPU-Scheduling-chap5.pptx
OS-CPU-Scheduling-chap5.pptx
 
Operating systems chapter 5 silberschatz
Operating systems chapter 5 silberschatzOperating systems chapter 5 silberschatz
Operating systems chapter 5 silberschatz
 
ch6_CPU Scheduling.ppt
ch6_CPU Scheduling.pptch6_CPU Scheduling.ppt
ch6_CPU Scheduling.ppt
 

Recently uploaded

ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...JhezDiaz1
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4MiaBumagat1
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxCarlos105
 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parentsnavabharathschool99
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Celine George
 
Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management SystemChristalin Nelson
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...Nguyen Thanh Tu Collection
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSJoshuaGantuangco2
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPCeline George
 
Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxAshokKarra1
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designMIPLM
 
Concurrency Control in Database Management system
Concurrency Control in Database Management systemConcurrency Control in Database Management system
Concurrency Control in Database Management systemChristalin Nelson
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfJemuel Francisco
 
Music 9 - 4th quarter - Vocal Music of the Romantic Period.pptx
Music 9 - 4th quarter - Vocal Music of the Romantic Period.pptxMusic 9 - 4th quarter - Vocal Music of the Romantic Period.pptx
Music 9 - 4th quarter - Vocal Music of the Romantic Period.pptxleah joy valeriano
 
Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4JOYLYNSAMANIEGO
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPCeline George
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)lakshayb543
 

Recently uploaded (20)

ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parents
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17
 
Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management System
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERP
 
Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptx
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
 
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptxYOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-design
 
Concurrency Control in Database Management system
Concurrency Control in Database Management systemConcurrency Control in Database Management system
Concurrency Control in Database Management system
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
 
Music 9 - 4th quarter - Vocal Music of the Romantic Period.pptx
Music 9 - 4th quarter - Vocal Music of the Romantic Period.pptxMusic 9 - 4th quarter - Vocal Music of the Romantic Period.pptx
Music 9 - 4th quarter - Vocal Music of the Romantic Period.pptx
 
Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERP
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
 

Template 1 ch5

  • 1. Chapter 5: CPU Scheduling Operating System Concepts – 8th Edition, SLU SCIS Silberschatz, Galvin and Gagne ©2009
  • 2. Chapter 5: CPU Scheduling • Basic Concepts • Scheduling Criteria • Scheduling Algorithms • Thread Scheduling • Multiple-Processor Scheduling • Operating Systems Examples • Algorithm Evaluation Operating System Concepts – 8th Edition, SLU SCIS 5.2 Silberschatz, Galvin and Gagne ©2009
  • 3. Objectives • To introduce CPU scheduling, which is the basis for multiprogrammed operating systems • To describe various CPU-scheduling algorithms • To discuss evaluation criteria for selecting a CPU-scheduling algorithm for a particular system Operating System Concepts – 8th Edition, SLU SCIS 5.3 Silberschatz, Galvin and Gagne ©2009
  • 4. Basic Concepts • Maximum CPU utilization obtained with multiprogramming • CPU–I/O Burst Cycle – Process execution consists of a cycle of CPU execution and I/O wait • CPU burst distribution Operating System Concepts – 8th Edition, SLU SCIS 5.4 Silberschatz, Galvin and Gagne ©2009
  • 5. Histogram of CPU-burst Times Operating System Concepts – 8th Edition, SLU SCIS 5.5 Silberschatz, Galvin and Gagne ©2009
  • 6. Alternating Sequence of CPU And I/O Bursts Operating System Concepts – 8th Edition, SLU SCIS 5.6 Silberschatz, Galvin and Gagne ©2009
  • 7. CPU Scheduler • Selects from among the processes in memory that are ready to execute, and allocates the CPU to one of them • CPU scheduling decisions may take place when a process: 1. Switches from running to waiting state 2. Switches from running to ready state 3. Switches from waiting to ready 4. Terminates • Scheduling under 1 and 4 is nonpreemptive • All other scheduling is preemptive Operating System Concepts – 8th Edition, SLU SCIS 5.7 Silberschatz, Galvin and Gagne ©2009
  • 8. Dispatcher • Dispatcher module gives control of the CPU to the process selected by the short-term scheduler; this involves:  switching context  switching to user mode  jumping to the proper location in the user program to restart that program • Dispatch latency – time it takes for the dispatcher to stop one process and start another running Operating System Concepts – 8th Edition, SLU SCIS 5.8 Silberschatz, Galvin and Gagne ©2009
  • 9. Scheduling Criteria • CPU utilization – keep the CPU as busy as possible • Throughput – # of processes that complete their execution per time unit • Turnaround time – amount of time to execute a particular process • Waiting time – amount of time a process has been waiting in the ready queue • Response time – amount of time it takes from when a request was submitted until the first response is produced, not output (for timesharing environment) Operating System Concepts – 8th Edition, SLU SCIS 5.9 Silberschatz, Galvin and Gagne ©2009
  • 10. Scheduling Algorithm Optimization Criteria • Max CPU utilization • Max throughput • Min turnaround time • Min waiting time • Min response time Operating System Concepts – 8th Edition, SLU SCIS 5.10 Silberschatz, Galvin and Gagne ©2009
  • 11. First-Come, First-Served (FCFS) Scheduling • Suppose that the processes arrive in the order: P1 , P2 , P3 The Gantt Chart for the schedule is: • Waiting time for P1 = 0; P2 = 24; P3 = 27 • Average waiting time: (0 + 24 + 27)/3 = 17 Operating System Concepts – 8th Edition, SLU SCIS 5.11 Silberschatz, Galvin and Gagne ©2009
  • 12. First-Come, First-Served (FCFS) Scheduling Suppose that the processes arrive in the order P2 , P3 , P1 • The Gantt chart for the schedule is: • Waiting time for P1 = 6; P2 = 0; P3 = 3 • Average waiting time: (6 + 0 + 3)/3 = 3 •Much better than previous case • Convoy effect short process behind long process Operating System Concepts – 8th Edition, SLU SCIS 5.12 Silberschatz, Galvin and Gagne ©2009
  • 13. Shortest-Job-First (SJF) Scheduling • Associate with each process the length of its next CPU burst. Use these lengths to schedule the process with the shortest time • SJF is optimal – gives minimum average waiting time for a given set of processes  The difficulty is knowing the length of the next CPU request Operating System Concepts – 8th Edition, SLU SCIS 5.13 Silberschatz, Galvin and Gagne ©2009
  • 14. Example of SJF Operating System Concepts – 8th Edition, SLU SCIS 5.14 Silberschatz, Galvin and Gagne ©2009
  • 15. Determining Length of Next CPU Burst • Can only estimate the length • Can be done by using the length of previous CPU bursts, using exponential averaging Operating System Concepts – 8th Edition, SLU SCIS 5.15 Silberschatz, Galvin and Gagne ©2009
  • 16. Prediction of the Length of the Next CPU Burst Operating System Concepts – 8th Edition, SLU SCIS 5.16 Silberschatz, Galvin and Gagne ©2009
  • 17. Examples of Exponential Averaging • α =0  τ τ n+1 = n  Recent history does not count • α =1  τn+1 = α tn  Only the actual last CPU burst counts • If we expand the formula, we get: τn+1 = α tn+(1 - α)α tn -1 + … +(1 - α )j α tn -j + … +(1 - α )n +1 τ0 • Since both α and (1 - α) are less than or equal to 1, each successive term has less weight than its predecessor Operating System Concepts – 8th Edition, SLU SCIS 5.17 Silberschatz, Galvin and Gagne ©2009
  • 18. Priority Scheduling • A priority number (integer) is associated with each process • The CPU is allocated to the process with the highest priority (smallest integer ≡ highest priority)  Preemptive  nonpreemptive • SJF is a priority scheduling where priority is the predicted next CPU burst time • Problem ≡ Starvation – low priority processes may never execute • Solution ≡ Aging – as time progresses increase the priority of the process Operating System Concepts – 8th Edition, SLU SCIS 5.18 Silberschatz, Galvin and Gagne ©2009
  • 19. Round Robin (RR) • Each process gets a small unit of CPU time (time quantum), usually 10-100 milliseconds. After this time has elapsed, the process is preempted and added to the end of the ready queue. • If there are n processes in the ready queue and the time quantum is q, then each process gets 1/n of the CPU time in chunks of at most q time units at once. No process waits more than (n-1)q time units. • Performance  q large ⇒ FIFO  q small ⇒ q must be large with respect to context switch, otherwise overhead is too high Operating System Concepts – 8th Edition, SLU SCIS 5.19 Silberschatz, Galvin and Gagne ©2009
  • 20. Example of RR with Time Quantum = 4 Operating System Concepts – 8th Edition, SLU SCIS 5.20 Silberschatz, Galvin and Gagne ©2009
  • 21. Time Quantum and Context Switch Operating System Concepts – 8th Edition, SLU SCIS 5.21 Silberschatz, Galvin and Gagne ©2009
  • 22. Turnaround Time Varies With The Time Quantum Operating System Concepts – 8th Edition, SLU SCIS 5.22 Silberschatz, Galvin and Gagne ©2009
  • 23. Multilevel Queue • Ready queue is partitioned into separate queues: foreground (interactive) background (batch) • Each queue has its own scheduling algorithm  foreground – RR  background – FCFS • Scheduling must be done between the queues  Fixed priority scheduling; (i.e., serve all from foreground then from background). Possibility of starvation.  Time slice – each queue gets a certain amount of CPU time which it can schedule amongst its processes; i.e., 80% to foreground in RR  20% to background in FCFS Operating System Concepts – 8th Edition, SLU SCIS 5.23 Silberschatz, Galvin and Gagne ©2009
  • 24. Multilevel Queue Scheduling Operating System Concepts – 8th Edition, SLU SCIS 5.24 Silberschatz, Galvin and Gagne ©2009
  • 25. Multilevel Feedback Queue • A process can move between the various queues; aging can be implemented this way • Multilevel-feedback-queue scheduler defined by the following parameters:  number of queues  scheduling algorithms for each queue  method used to determine when to upgrade a process  method used to determine when to demote a process  method used to determine which queue a process will enter  when that process needs service Operating System Concepts – 8th Edition, SLU SCIS 5.25 Silberschatz, Galvin and Gagne ©2009
  • 26. Example of Multilevel Feedback Queue • Three queues:  Q0 – RR with time quantum 8 milliseconds  Q1 – RR time quantum 16 milliseconds  Q2 – FCFS • Scheduling  A new job enters queue Q0 which is served FCFS. When it gains CPU, job receives 8 milliseconds. If it does not finish in 8 milliseconds, job is moved to queue Q1.  At Q1 job is again served FCFS and receives 16 additional milliseconds. If it still does not complete, it is preempted and moved to queue Q2. Operating System Concepts – 8th Edition, SLU SCIS 5.26 Silberschatz, Galvin and Gagne ©2009
  • 27. Multilevel Feedback Queues Operating System Concepts – 8th Edition, SLU SCIS 5.27 Silberschatz, Galvin and Gagne ©2009
  • 28. Thread Scheduling • Distinction between user-level and kernel-level threads • Many-to-one and many-to-many models, thread library schedules user-level threads to run on LWP  Known as process-contention scope (PCS) since scheduling competition is within the process • Kernel thread scheduled onto available CPU is system-contention scope (SCS) – competition among all threads in system Operating System Concepts – 8th Edition, SLU SCIS 5.28 Silberschatz, Galvin and Gagne ©2009
  • 29. Pthread Scheduling • API allows specifying either PCS or SCS during thread creation  PTHREAD SCOPE PROCESS schedules threads using PCS scheduling  PTHREAD SCOPE SYSTEM schedules threads using SCS scheduling. Operating System Concepts – 8th Edition, SLU SCIS 5.29 Silberschatz, Galvin and Gagne ©2009
  • 30. Pthread Scheduling API Operating System Concepts – 8th Edition, SLU SCIS 5.30 Silberschatz, Galvin and Gagne ©2009
  • 31. Pthread Scheduling API Operating System Concepts – 8th Edition, SLU SCIS 5.31 Silberschatz, Galvin and Gagne ©2009
  • 32. Multiple-Processor Scheduling • CPU scheduling more complex when multiple CPUs are available • Homogeneous processors within a multiprocessor • Asymmetric multiprocessing – only one processor accesses the system data structures, alleviating the need for data sharing • Symmetric multiprocessing (SMP) – each processor is self- scheduling, all processes in common ready queue, or each has its own private queue of ready processes • Processor affinity – process has affinity for processor on which it is currently running  soft affinity  hard affinity Operating System Concepts – 8th Edition, SLU SCIS 5.32 Silberschatz, Galvin and Gagne ©2009
  • 33. NUMA and CPU Scheduling Operating System Concepts – 8th Edition, SLU SCIS 5.33 Silberschatz, Galvin and Gagne ©2009
  • 34. Multicore Processors • Recent trend to place multiple processor cores on same physical chip • Faster and consume less power • Multiple threads per core also growing • Takes advantage of memory stall to make progress on another thread while memory retrieve happens Operating System Concepts – 8th Edition, SLU SCIS 5.34 Silberschatz, Galvin and Gagne ©2009
  • 35. Multithreaded Multicore System Operating System Concepts – 8th Edition, SLU SCIS 5.35 Silberschatz, Galvin and Gagne ©2009
  • 36. Operating System Examples • Solaris scheduling • Windows XP scheduling • Linux scheduling Operating System Concepts – 8th Edition, SLU SCIS 5.36 Silberschatz, Galvin and Gagne ©2009
  • 37. Solaris Dispatch Table Operating System Concepts – 8th Edition, SLU SCIS 5.37 Silberschatz, Galvin and Gagne ©2009
  • 38. Solaris Scheduling Operating System Concepts – 8th Edition, SLU SCIS 5.38 Silberschatz, Galvin and Gagne ©2009
  • 39. Windows XP Priorities Operating System Concepts – 8th Edition, SLU SCIS 5.39 Silberschatz, Galvin and Gagne ©2009
  • 40. Linux Scheduling • Constant order O(1) scheduling time • Two priority ranges: time-sharing and real-time • Real-time range from 0 to 99 and nice value from 100 to 140 • (figure 5.15) Operating System Concepts – 8th Edition, SLU SCIS 5.40 Silberschatz, Galvin and Gagne ©2009
  • 41. Priorities and Time-slice length Operating System Concepts – 8th Edition, SLU SCIS 5.41 Silberschatz, Galvin and Gagne ©2009
  • 42. List of Tasks Indexed According to Priorities Operating System Concepts – 8th Edition, SLU SCIS 5.42 Silberschatz, Galvin and Gagne ©2009
  • 43. Algorithm Evaluation • Deterministic modeling – takes a particular predetermined workload and defines the performance of each algorithm for that workload • Queueing models • Implementation Operating System Concepts – 8th Edition, SLU SCIS 5.42 Silberschatz, Galvin and Gagne ©2009
  • 44. Evaluation of CPU schedulers by Simulation Operating System Concepts – 8th Edition, SLU SCIS 5.44 Silberschatz, Galvin and Gagne ©2009
  • 45. End of Chapter 5 Operating System Concepts – 8th Edition, SLU SCIS Silberschatz, Galvin and Gagne ©2009