多級隊列調度 (Multilevel queue scheduling)
Every algorithm supports a different class of process but in a generalized system, some process wants to be scheduled using a priority algorithm. While some process wants to remain in the system (interactive process) while some are background process when execution can be delayed.
每種算法都支持不同類別的過程,但是在通用系統中,某些過程希望使用優先級算法進行調度。 有些進程希望保留在系統中(交互進程),而有些進程則是后臺進程,因此可以延遲執行。
In general round-robin algorithm with different time quantum is used for such maintenance. The Number of ready queue algorithm between the queue, algorithm inside a queue algo but the queues may change from system to system. There is a various class of scheduling algorithm which is created for situations like in which the processes are easily divided into the different groups. There is a common division between the foreground(interactive) process and background (batch process). There are two types processes have the different response time, the different requirement of resources so these processes need different scheduling algorithms. The foreground processes have priority(externally defined) over background processes.
通常,使用具有不同時間量的循環算法來進行這種維護。 隊列之間的就緒隊列算法的數量,隊列算法內部的算法,但隊列可能因系統而異。 針對各種情況創建了各種類別的調度算法,在這些情況下,流程很容易分為不同的組。 在前臺(交互)過程和后臺(批處理過程)之間存在共同的劃分。 有兩種類型的進程具有不同的響應時間,不同的資源需求,因此這些進程需要不同的調度算法。 前臺進程(在外部定義)的優先級高于后臺進程。
In the multilevel queue scheduling algorithm partition the ready queue has divided into seven separate queues. Based on some priority of the process; like memory size, process priority, or process type these processes are permanently assigned to one queue. Each queue has its own scheduling algorithm. For example, some queues are used for the foreground process and some for the background process.
在多級隊列調度算法分區中,就緒隊列已分為七個單獨的隊列。 基于流程的某些優先級; 例如內存大小,進程優先級或進程類型,這些進程將永久分配給一個隊列。 每個隊列都有自己的調度算法。 例如,某些隊列用于前臺進程,而某些隊列用于后臺進程。
The foreground queue can be scheduled by using a round-robin algorithm while the background queue is scheduled by a first come first serve algorithm.
可以通過使用循環算法來調度前景隊列,而通過先到先服務算法來調度背景隊列。
It is said that there will be scheduled between the queues which are easily implemented as a fixed- priority preemptive scheduling. Let us take an example of a multilevel queue scheduling algorithm with five queues:
據說將在隊列之間進行調度,這很容易實現為固定優先級的搶占式調度。 讓我們以具有五個隊列的多級隊列調度算法為例:
System process
系統流程
Interactive processes
互動過程
Interactive editing processes
互動編輯過程
Batch processes
批處理
Student processes
學生流程

多級反饋調度 (Multilevel feedback scheduling)
Generally, we see in a multilevel queue scheduling algorithm processes are permanently stored in one queue in the system and do not move between the queue. There is some separate queue for foreground or background processes but the processes do not move from one queue to another queue and these processes do not change their foreground or background nature, these type of arrangement has the advantage of low scheduling but it is inflexible in nature.
通常,我們看到在多級隊列調度算法中,進程永久存儲在系統中的一個隊列中,并且不在隊列之間移動。 對于前臺或后臺進程有一些單獨的隊列,但是進程不會從一個隊列移動到另一隊列,并且這些進程不會更改其前臺或后臺性質,這些類型的安排的優點是調度少,但本質上不靈活。
Multilevel feedback queue scheduling it allows a process to move between the queue. This the process are separate with different CPU burst time. If a process uses too much CPU time then it will be moved to the lowest priority queue. This idea leaves I/O bound and interactive processes in the higher priority queue. Similarly, the process which waits too long in a lower priority queue may be moved to a higher priority queue. This form of aging prevents starvation.
多級反饋隊列調度它允許進程在隊列之間移動。 此過程是分開的,具有不同的CPU突發時間。 如果一個進程使用過多的CPU時間,那么它將被移到優先級最低的隊列。 這個想法將I / O綁定和交互過程留在了更高優先級的隊列中。 類似地,在較低優先級隊列中等待太長時間的過程可能會移至較高優先級隊列。 這種衰老形式可以防止饑餓。
The multilevel feedback queue scheduler has the following parameters:
多級反饋隊列調度程序具有以下參數:
The number of queues in the system.
系統中的隊列數。
The scheduling algorithm for each queue in the system.
系統中每個隊列的調度算法。
The method used to determine when the process is upgraded to a higher-priority queue.
用于確定何時將進程升級到更高優先級隊列的方法。
The method used to determine when to demote a queue to a lower - priority queue.
用于確定何時將隊列降級為優先級較低的隊列的方法。
The method used to determine which process will enter in queue and when that process needs service.
用于確定哪個進程將進入隊列以及何時需要該進程的服務的方法。
翻譯自: https://www.includehelp.com/operating-systems/multilevel-queue-scheduling-in-operating-system.aspx