G53OPS - Operating Systems

This course is run at the The University of Nottingham within the School of Computer Science & IT. The course is run by Graham Kendall (EMAIL : gxk@cs.nott.ac.uk)


Two Level Scheduling

In our discussions of scheduling algorithms we have assumed that the process are all available in memory so that the context switching is fast. However, if the computer is low on memory then some processes may be swapped out to disc. If a process on disc is scheduled next the context switch will take a long time compared to a context switch to a process in memory.

Therefore, it is sensible to schedule only those processes in memory. This is the responsibility of a top level scheduler.

A second scheduler is invoked periodically to remove processes from memory to disc and move some processes on disc to memory. This scheduler will use various parameters to decide which processes to move. Amongst these could be

· How long has it been since a process has been swapped in or out?
· How much CPU time has the process recently had?
· How big is the process (on the basis that small ones do not get in the way)?
· What is the priority of the process?

Last Page Back to Main Index Next Page

 

 


 Last Updated : 23/01/2002