A multilevel queue scheduling algorithm partitions the ready queue in several separate queues, for instance
Fig 5.6 - pp. 138 in Sinha
In a multilevel queue scheduling processes are permanently assigned to one queues.
The processes are permanently assigned to one another, based on some property of the process, such as
Algorithm choose the process from the occupied queue that has the highest priority, and run that process either
Each queue has its own scheduling algorithm or policy.
For example, in the above figure no process in the batch queue could run unless the queues for system processes, interactive processes, and interactive editing processes will all empty.
Since processes do not move between queue so, this policy has the advantage of low scheduling overhead, but it is inflexible.