ジョブスケジューリング
ジョブのスケジューリング問題はプロセッサのスケジューリングによく似た問題であり、大変難しい問題である。
スケジューリングには、時間をもとにスケジューリングを行うカレンダースケジューリング(calendar scheduling)とイベントの発生によってスケジューリングを行うイベントスケジューリング(event scheduling)がある。
スケジューリングに関する問題には様々なフェイズが存在する。
ジョブのスケジューリングは一般に、なんらかのプライオリティ(順番)に応じて行われる。
プライオリティは、キューへ投入された時間や、リソースの要求、ジョブの種類、ユーザーの権限などを考慮して決定される。
プライオリティの決定は、静的または動的に行われる。
それぞれ、つぎのような特徴を持つ
静的プライオリティ(static priority)
静的プライオリティを採用した場合は、あらかじめ定めたとおりにジョブを実行する。
キューに登録された順に、実行していく非常にシンプルな方法である。
動的プライオリティ(dynamic priority)
動的にプライオリティを決定する場合、ジョブの実行は、他のジョブの進行や、新しいジョブの登録状況などに応じて変化する。
また、昼間はインタラクティブジョブを優先し 、夜間はバッチジョブを優先するといったポリシーを適用することもできる。
動的プライオリティではタイリング( tiling )技術が重要であり、これによってシステムの性能は大きく左右される。
job scheduling
ジョブ(job) + スケジューリング(scheduling)