nStill favors CPU-bound processes
uA I/O bound process uses the CPU for a time less than the time quantum and then is blocked waiting for I/O
uA CPU-bound process run for all its time slice and is put back into the ready queue (thus getting in front of blocked processes)
nA solution: virtual round robin
uWhen a I/O has completed, the blocked process is moved to an auxiliary queue which gets preference over the main ready queue
uA process dispatched from the auxiliary queue runs no longer than the basic time quantum minus the time spent running since it was selected from the ready queue