CPU Process Scheduling Solver
1.0.0
このコンソールアプリケーションは、ファーストコーム、ファーストサービス(FCFS)、最短のジョブファースト(SJF)、およびSRTF(最初の最短)スケジューリングアルゴリズムに基づいています。現在、より多くのアルゴリズムを含めるために開発中であり、ガントチャート機能はまだ実装されていません。
FCFSアルゴリズムのコアロジックは簡単です。最初のプロセスには常に0の待ち時間があります。プロセスの待ち時間は、前のプロセスのバースト時間と前のプロセスの待機時間に基づいて計算されます。実行命令は到着順序に続きます。
SJFアルゴリズムは条件ベースに依存している間、ループに依存して、他のプロセスがまだ実行されている間、着信プロセスをソートします。次のプロセスに進む前に、プロセスのバースト時間がゼロになり、その完了を示します。アルゴリズムは、より短いバースト時間を優先し、待ち時間を最小限に抑えることを目指しています。
SRTFアルゴリズムは、SJFアルゴリズムの先制バージョンです。実行の残り時間が最も短いプロセスを選択します。現在実行中のプロセスよりも短いバースト時間で新しいプロセスが到着すると、SRTFアルゴリズムは現在のプロセスを先取りし、新しい短いプロセスに切り替えます。
このプログラムは、再利用性とシンプルさを強化するために、オブジェクト指向のアプローチを使用して設計されています。重要なクラスには次のものがあります。
Processクラス:
AvgWTTATメソッドが含まれています。スケジューリングアルゴリズムクラス:
Schedule方法を備えた独自のクラスがあります。Processオブジェクトの配列を使用し、それぞれのスケジューリングアルゴリズムを適用し、各プロセスの待機時間とターンアラウンド時間を更新します。プロセススケジューリングプログラムを使用するには:
要件に従って、コードを自由に調査し、変更し、追加のスケジューリングアルゴリズムまたは機能を実装してください。