マルチレベルフィードバックでは、基本レベルキューでスケジューリングが完了し、システムから離れるまでラウンドロビン方式で循環します。基本レベルキューのプロセスは、先着順にスケジュールすることもできます。 アルゴリズムの平均性能を向上させるように見えるFirst Come First Serve(FCFS)アルゴリズムの代わりに、SJF(Shortest Job First)アルゴリズムでスケジューリングできないのはなぜですか?マルチレベルフィードバックスケジューリングの最終レベルでFCFSの代わりに最短ジョブファースト(SJF)アルゴリズムが使用されない理由
1
A
答えて
0
一つの簡単な理由:彼らはより高いレベルのキューにそれらにallotedタイムクォンタムで終了に失敗した後
プロセスは、基本レベルのキューに落ちます。基本レベルのキューにSJFアルゴリズムを実装すると、処理が遅くなることがあります。これは、より長い実行プロセスでCPUが取得される前にジョブが短時間継続する可能性があるためです。
0
SJFアルゴリズムは、プロセスがそのバースト時間に多くの異なった場合にのみ、より多くのスループットを提供します。しかし、必ずしもそうであるとは限りません。FCFSよりも優れています。 this answerで略奪してください。アルゴリズムのスケジュールマルチレベルフィードバック、最初の2つのキューの定義された時間量子以内に実行を完了することができないすべてのプロセス、FCFSを持つ最後のキューに入れられ、それらはすべてが大きな持っていることをその非常に可能性が高いので、
CPUはバーストするので、バースト時間がので大きく異なります。したがって、その最後のキューのスケジューリングをFCFSにすることをお勧めします。
関連する問題
- 1. 最短経路アルゴリズム
- 2. Site Catalystでイベントの代わりにページビューを使用できない理由
- 3. dijkstraの最短経路アルゴリズム
- 4. Djikstraの最短経路アルゴリズム
- 5. 最新のカフカバージョン0.10.1.1でKafkaUtilsの代わりに使用されるもの
- 6. ReadTheDocsに「最終更新日時」が表示されない理由
- 7. Date []の代わりにlong []を使用する理由
- 8. guava:コンストラクタの代わりにメソッドcreate()を使用する理由
- 9. QAの代わりにmochaを使用する理由
- 10. queue.First()/ Last()の代わりにqueue.Peek()を使用する理由
- 11. Stringの代わりにchar []を使用する理由は?
- 12. SpriteKitの代わりにCoreGraphicsを使用する理由は?
- 13. アサートの代わりにQ_ASSERTを使用する理由
- 14. シェルスクリプト - エコーの代わりにbin/echoを使用する理由?
- 15. 最短経路、最低回転アルゴリズム
- 16. C++ k最短経路アルゴリズム
- 17. parseIntの代わりにビット演算子を使用しないのが良い理由はありますか?
- 18. ジョブがプリエンプティブでない場合の最短ジョブの最初のアルゴリズムの複雑さ
- 19. コンストラクタの代わりにJavaでsetterを使う理由は?
- 20. リストタイトル終わり最後の単語で終わり
- 21. フッターが最下部にない理由
- 22. Androidの短いデータセットに最適な暗号化アルゴリズム
- 23. 最短経路アルゴリズム:複数のソース、最も近い宛先
- 24. LocalDate、LocalTime、Streamオブジェクトがコンストラクタの代わりに()のファクトリメソッドを使用する理由
- 25. ConcurrentHashMap $ HashEntryの "next"フィールドが最終的な理由
- 26. Dijkstraの最短経路アルゴリズムの変更
- 27. Dijkstraの最短経路アルゴリズムの問題
- 28. 最終的な出力がゼロである理由:OOPSサンプル
- 29. 「最終的に」コードブロックがスキップされる理由は何ですか?
- 30. ファイルが.htaccessルールの代わりに最初に照合されています
SJFは一般に、実行時に各ジョブがどれぐらいの時間を取るかを示すためのオラクルを必要とするため、実際のOSでは実用的ではありません。 –
質問は無料です。 –