Definition
A CPU scheduling technique that moves processes between queues, to adjust their priority by how they run
Visual IT Encyclopedia › Operating Systems › Process Management
Definition
A CPU scheduling technique that moves processes between queues, to adjust their priority by how they run
Setup: one CPU, three ready queues (upper queues run first). The time quantum (the most time a process can use in one turn) is 1ms in queue 0, 2ms in queue 1 and 4ms in queue 2. P1–P4 have the same arrivals and run times as the other scheduling examples. The time it takes to switch processes is counted as 0. (ms: a thousandth of a second)
0 / 11
Multi-Level Feedback Queue (MLFQ) Scheduling
Multi-Level Feedback Queue (MLFQ) scheduling also splits the ready queue into several queues like MLQ, but processes move between them. A new process starts in the top queue, and if it can't finish within that queue's quantum, the OS stops it (preemption) and moves it down one queue. Lower queues run later but have larger quanta, and the bottom queue runs as RR. Even while a lower-queue process is running, the OS stops it when a new process arrives in an upper queue.
At a bank: there is one counter but three lines. Every customer first joins the 1-minute line; a customer who isn't done in 1 minute moves to the 2-minute line, and if still not done there, to the 4-minute line. A lower line is served only when the lines above it are empty.