CPU scheduling algorithms for operating systems
So, what is a scheduling algorithm? Scheduling algorithms are algorithms(of course) by which the CPU decides what task is to be completed in what order.
"The aim of CPU scheduling is to make the system efficient, fast and fair..."
CPU scheduling allows a process to wait till the another is executed. This is important to avoid problems like deadlock, where resources are simply inadequate for all processes under execution even though they are fairly so for each individual process.
Now, I have learnt 4 scheduling algorithms. Namely,
- FCFS or First Come First Serve
- Round-Robin Scheduling
- Shortest Task First
- Priority Scheduling
Notes:
This is largely a part of my university course CSE2003: Operating Systems. So, other than Scheduling Algorithms, I have also tried to cover deadlock concepts.