Project objective: To learn more about OS scheduling through a hands-on simulation programming experience
Implement the following 3 CPU scheduling algorithms
Simulate and evaluate each with the set of eight processes below.
Use any programming language. The program listing should be submitted with the report
1. FCFS non-preemptive (partial results provided)
2. SJF non-preemptive
All processes enter first queue 1. If time quantum (Tq) expires before CPU burst is complete, the
process is downgraded to next lower priority queue. Processes are not downgraded when preempted by a
higher queue level process. Once a process has been downgraded, it will not be upgraded.
1. All processes are activated at time 0
2. Assume that no process waits on I/O devices.
3. After completing an I/O event, a process is transferred to the ready queue.
4. Waiting time is accumulated while a process waits in the ready queue.
5. Turnaround time is a total of (Waiting time) + (CPU burst time) + (I/O time)
6. Response time is the first measure of waiting time from arrival at time 0 until the first time on the CPU.