Content deleted Content added
No edit summary |
disambig |
||
Line 9:
Thus, the higher-level scheduler selects among those processes in memory that have run for a long time and swaps them out. They are replaced with processes on disk that have not run for a long time. Exactly how it selects processes is up to the implementation of the higher-level scheduler. A compromise has to be made involving the following variables:
* [[Response time (technology)|Response time]]: A process should not be swapped out for too long. Then some other process (or the user) will have to wait needlessly long. If this variable is not considered [[resource starvation]] may occur and a process may not complete at all.
* Size of the process: Larger processes must be subject to fewer swaps than smaller ones because they take longer time to swap. Because they are larger, fewer processes can share the memory with the process.
* Priority: The higher the priority of the process, the longer it should stay in memory so that it completes faster.
==References==
* [[Andrew S. Tanenbaum|Tanenbaum]], [[Albert Woodhull]], ''Operating Systems: Design and Implementation'', p.92
[[Category:Scheduling algorithms]]
|