CPUplanning
CPUplanning, sometimes referred to as CPU scheduling, is the subsystem of an operating system that decides which process or thread receives the central processing unit at any moment. Its goal is to optimize the use of the CPU while balancing performance, responsiveness, and fairness across running tasks.
Decisions in CPUplanning can be preemptive or non-preemptive. In non-preemptive schemes, a running process continues until
Common CPU planning algorithms include first-come, first-served (FCFS); shortest job first (SJF) and its preemptive variant
In practice, CPUplanning must handle diverse workloads, including CPU-bound and I/O-bound processes, as well as context-switch