Process scheduling is the method of assigning resources to various processes in a way that optimizes efficiency and timeliness. Its primary objectives include maximizing resource utilization, ensuring the CPU is consistently engaged, optimizing CPU usage, and reducing both the response and wait times for the scheduled processes.
This project simulates the operation of a process scheduler by reading a file. This file contains various details such as the number of each processor, the number of processes, the arrival time of each process, their I/O requests, the CPU time of each process, kill signals, and the probability of forking.
The simulation generates a file that includes relevant statistics such as the average waiting time, response time, and the percentage of process migration, work stealing, forking, and killing. This data provides valuable insights into the performance and efficiency of the process scheduling system.
- Work Stealing
- I/O Requests
- Process Migration
- Process Forking
- Killing a Process
- 3 Modes
- Silent Mode
- Interactive Mode
- Step By Step Mode