CPU Scheduling is a process of determining which process will own CPU for execution while another process is on hold. The main task of CPU scheduling is to make sure that whenever the CPU remains idle, the OS at least select one of the processes available in the ready queue for execution.
There are basically six types of process scheduling algorithms. In this project, there are only 3 algorithms. These algorithms are:
- First Come First Serve
- Shortest-Job-First (Preemptive)
- Shortest-Job-First (Non-Preemptive)
Here are the reasons for using a scheduling algorithm:
- The CPU uses scheduling to improve its efficiency.
- It helps you to allocate resources among competing processes.
- The maximum utilization of CPU can be obtained with multi-programming.
- The processes which are to be executed are in ready queue.