Priority Scheduler Simulator

A priority scheduler always selects a ready process from the highest non-empty priority queue. Processes with the same priority follow FIFO order. This simulator uses three levels—High, Medium, and Low—and can optionally use aging to reduce starvation.

Selection orderHigh → Medium → Low
Same priorityFIFO
Preemption unitConfigurable quantum
Starvation controlOptional aging

Scheduler controls

700 ms

Priority Queues

High PriorityFRONT → REAR
Medium PriorityFRONT → REAR
Low PriorityFRONT → REAR

Current Process

Add a process or load the example workload.

Current time0
Ready processes0
Completed0
Promotions0

Process metrics

ProcessPriorityBurstRemainingArrivalCompletionTurnaroundWaiting

Execution log

    Priority scheduling concepts

    Strict priority

    A lower-priority queue is ignored whenever a higher-priority queue contains ready work.

    FIFO tie breaking

    Processes at the same priority level are served in arrival order. Unfinished work returns to the rear.

    Starvation

    A continuous stream of high-priority work can delay lower-priority processes for a very long time.

    Aging

    When aging is enabled, waiting processes can be promoted to a higher priority after reaching the threshold.

    Algorithm summary

    StepAction
    1Select the front process from the highest non-empty priority queue.
    2Run it for min(quantum, remaining time).
    3Complete it or return it to the rear of its current priority queue.
    4Promote waiting processes whose aging threshold has been reached.