Abstract: An operating system provides numerous functions, such as I/O management, memory management, process management, and file management. Since the operating system is a set of the programs that interacts with computer hardware during executing time, process management is the most important function provided by an operating system. CPU scheduling is extremely necessary, as it makes a multi-tasking environment that keeps the CPU and I/O devices busy at all times which results in increased CPU utilization [1]. However, numerous scheduling algorithms have already been designed to regulate the access of threads and processes to the CPU, such as FCFS-SJF-SRT-RR. We simulated these scheduling algorithms and evaluated their performance (throughput, latency, utilization, turnaround time, and waiting time) in a multi-processor environment.


Keywords: OS, CPU scheduling, Multitasking, FCFS, RR, SRT, SJF.