This project compares two scheduling algorithms: First-Come-First-Serve (FCFS) and Round-Robin (RR). Scheduling algorithms are crucial in computing for determining the order in which processes are executed by the CPU to optimize various performance metrics.
Both algorithms are tested using the same dataset: a set of 50 processes, each with differing arrival and burst times. The performance of the two algorithms is then evaluated based on four distinct metrics, which help determine the more efficient algorithm:
-
Total Time Spent Executing All Processes: This measures the cumulative time taken to execute all processes in the queue.
-
Average Turnaround Time: This is the average time taken for a process to be completed after its arrival. It includes both the waiting time and the time spent executing on the CPU.
-
Average Waiting Time: This metric calculates the average duration a process spends waiting in the queue before its execution begins.
-
CPU Efficiency: CPU Efficiency is a measure of how effectively the CPU is utilized during the processing. A higher efficiency indicates that the CPU spends more time executing tasks and less time idle.
This project requires the C++ programming language. Additionally, an Integrated Development Environment (IDE) capable of compiling and running C++ code is needed.