コンテンツにスキップ

ラウンドロビン・スケジューリング

出典: フリー百科事典『ウィキペディア(Wikipedia)』
ラウンドロビン方式から転送)
マルチタスク > スケジューリング > ラウンドロビン・スケジューリング

: round-robin scheduling



1使 Proportionally-Fair 

[]


; quantumCPU100 ︿msjob1250 ms job1  100 msCPU (100 ms) job1 100 msCPUCPU (100 ms) job1 
job1 = 完了までにかかる時間は 250 ms (クォンタムは 100 ms)
1回目の割り当て = 100 ms
2回目の割り当て = 100 ms
3回目の割り当て = 100 msただし job1 は50 ms実行した時点で終了
job1 の全CPU時間 = 250 ms

CPU-調CPU

[]


 (Weighted Round-robinWRR) Generalized Processor Sharing (GPS) GPS (infinitesimal) WRR = ︿ / 

WRRGPSWRR1

WRR:
//コネクション毎に1回のラウンドで処理すべきパケット数を計算する
for (each connection)
    connection[i].normalized_weight = connection[i].weight / connection[i].mean_packet_size;
 
min = findSmallestNormalizedWeight();
 
for (each connection)
    connection[i].packets_to_be_served = connection[i].normalized_weight / min;
 
// メインループ
while (true) {
    for (each non-empty connection) {
        for (j = 0; j < min(connection[i].packets_to_be_served, connection[i].packets_waiting); j++) {
            servePacket(connection[i].getPacket());
        }
    }
}

不足ラウンドロビン[編集]


 (Deficit Round-robin DRR) DRR 1995 M. Shreedhar  G. Varghese 

1 (F) 1 × F (Deficit Counter)  × F

関連項目[編集]

外部リンク[編集]