In this post, we are going to discuss what is Multilevel queue scheduling in os
Having one Queue and scheduling all the process is very difficult. In Multilevel queue scheduling, we set the priority of each process with top-level(system process) higher priority and student process gets the lowest priority. if there is no system process then interactive process become the highest priority.
Multi-level queue scheduling algorithm is used where the processes are divided into groups based on property like process type, CPU time, IO access, memory size, etc. In a multi-level queue scheduling algorithm, there will be ‘n’ number of queues, where ‘n’ is the number of groups the processes are classified into. Each queue will be assigned a priority and will have its own scheduling algorithm like FCFS, RR, SJF, PRIORITY.
Multilevel queue scheduling in os
there is various kind of process in the operating system. The operating system itself has own process to run called system process
the interactive process is online game or listing music( there should be the same kind of interaction)
we submit the job to the processor and take the result later.
normal student processes(Application) comes inside student process
the system process will get the highest priority and the student process gets the lowest priority.there are many types of the process we can’t put them in one queue and get the result. this problem is resolved by the multilevel queue scheduling.
in Multilevel queue scheduling, the main disadvantage is the Starvation problem for lowest level process
lower priority process never executes. or wait for the long amount of time because of lower priority or highest priority process taking a large amount of time.
we can apply separate scheduling for various kind of process
system process-FCFS scheduling algorithm
Interactive process- SJF scheduling
Batch process- Round Robin
Student Process- Priority scheduling