Operating System Design/Processes/Scheduling
From Wikibooks, the open-content textbooks collection
Because only one process per CPU can run at any one time, multitasking operating systems use a concept called multiprogramming to schedule time for each process to run on a CPU. A scheduler is responsible for giving each process time on the CPU. When the current time slice expires, the scheduler puts the current process to sleep and the next process is given CPU time. Some scheduling systems include:
- First Come First Served
- Shortest Process Next
- Shortest Remaining Time
- Round Robin Scheduling
- Pre-Emption
- Priority Scheduling