MLFQ Gaming Prevention

A process games the MLFQ scheduler by issuing a spurious I/O call right before its time slice expires, keeping itself at high priority while still getting most of the CPU. What mechanism prevents this?

A

I/O-bound processes are placed in a separate queue that doesn't affect CPU scheduling

B

The scheduler detects I/O calls and ignores them for priority decisions

C

Accounting tracks total CPU time used at each level; once a process exceeds its allotment at a priority level, it is demoted regardless of whether it yielded voluntarily

D

The scheduler randomizes time slices so the process can't predict when to yield