5

Priority Preemptive Scheduling を使用する場合、優先度が高いプロセスは、優先度が低いがバースト時間が短いプロセスに道を譲りますか?

たとえば、私が持っていた場合:

    Arrival Time   Burst Time   Priority
P1       0             5           3
P2       2             6           1
P3       3             3           2

ガント チャートは次のようになりますか?

| P1 | P2 | P3 | P1 |
0    2    8   11   16   
4

3 に答える 3

13

Priority Schedulingは常に、現在実行の準備ができている優先度が最も高いプロセスを選択します。現在最も優先度の高いプロセスが複数ある場合は、これらのプロセスから選択するための 2 番目のスケジューリング アルゴリズムが必要です。非プリエンプティブ プライオリティ スケジューリングは、実行中のプロセスがその作業を終了するか、スケジューラに (自発的に) 譲歩した場合にのみ、実行する新しいプロセスを選択します。

Preemptive Priority Schedulingは同じアルゴリズムですが、現在実行中のプロセスよりも優先度の高い新しいプロセスが到着すると、すぐに選択されます。新しいプロセスは、現在実行中のプロセスが終了するか放棄されるまで待機する必要はありません。

あなたのサンプルでは、​​Preemptive Priority Schedulingのガント チャートと、3 が最高の優先度、1 が最低の優先度のようになります。

| | P1 | P3 | P2 |
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
于 2012-02-11T20:04:16.410 に答える
2
| p1 | p2 | p3 | p1 |

0....2....8....11...14   

1を最優先します。

于 2012-09-07T17:36:49.970 に答える