ジョブ スケジューリングは、「バックアップ」状態のジョブをキューから選択し、実行します。コンピュータ システムに引き渡されてから、実行後にシステムを終了するまで、ジョブは通常、送信、バックアップ、実行、完了という 4 つの状態を経ます。バックアップ状態とは、ジョブのすべての情報が外部メモリに入力された後、システムに入力されるジョブに対してジョブ制御ブロックが確立され、ジョブ スケジューラによるスケジュールを待つためにバックアップ ジョブ キューに追加されることを意味します。ジョブがジョブ スケジューラによって選択されると、必要なリソースが割り当てられ、対応する一連のプロセスが確立された後、ジョブは実行状態になります。
このチュートリアルの動作環境: Windows 7 システム、Dell G3 コンピューター。
ジョブ スケジューリングの主な機能は、ジョブ制御ブロック内の情報に基づいてシステムがユーザー ジョブのリソース要件を満たせるかどうかを確認し、ジョブ制御ブロックの情報に従って外部ストレージのバックアップ キューから特定のジョブを選択することです。特定のアルゴリズム、メモリ、プロセスを作成し、それらに必要なリソースを割り当てます。次に、新しく作成したプロセスを準備完了キューに挿入し、実行の準備をします。したがって、ジョブのスケジューリングは、受付スケジューリングと呼ばれることもあります。
ジョブ ステータス
ジョブは通常、システムへの入力から実行、完了まで、入力、封じ込め、操作、完了という 4 つの段階を経ます。これに対応して、ジョブは通常、コンピュータ システムに引き渡されてから実行後にシステムを終了するまで、送信、バックアップ、実行、完了の 4 つの状態を経ます。
エントリ状態: つまり、送信状態、ジョブが入力デバイスから外部メモリ (入力ウェルとも呼ばれます) に入るプロセス、つまりジョブの情報提出状態がシステムに入ります。
バックアップ状態: ジョブのすべての情報が外部メモリに入力されると、システムはジョブのジョブ制御ブロック (JCB) を作成します。
オペレーターは、直接アクセス・バックアップ・アクセサーにジョブを入力した後、システムに入るジョブのジョブ制御ブロックを作成し、それをバックアップ・ジョブ・キューに追加して、ジョブ・スケジューラーによるスケジュールを待ちます。このプロセスはジョブ登録とも呼ばれます。
実行ステータス: ジョブはジョブ スケジューラによって選択され、必要なリソースが割り当てられ、対応する一連のプロセスが確立された後、ジョブは実行ステータスになります。これは、準備完了状態、実行状態、およびブロッキング状態の 3 つの状態に分けられます。
バックアップ ジョブはジョブ スケジューラによって選択され、必要なリソースを割り当ててメモリに投入され、ジョブ スケジューラによって対応するプロセスが確立された後、ジョブはバックアップ状態から実行状態に変わります。
完了ステータス: ジョブが正常終了またはエラー終了すると、ジョブは完了フェーズに入ります。一般に、ジョブスケジューラはスタンバイ状態のキューから適切なジョブを選択して実行する必要があります。
ジョブのスケジュール設定の手順は次のとおりです。
(1) JCB に基づいて JCB 制御テーブルを確立します。属性を設定し、各ジョブの動作状態を記録します。
#(2) 選択したスケジューリング アルゴリズムを使用して、バックアップ ジョブから 1 つ以上のジョブを選択し、それらを動作させます。
(3) プロセスの作成や対応するプロセスへのシステム リソースの割り当てなど、選択したジョブの実行前に準備をします。
(4) ジョブの実行後アフターケア作業を終了しました。例えば、ステータスの登録、リソースの再利用、出力処理、ジョブのキャンセルなどです。
一般的に使用されるジョブ スケジューリング アルゴリズム
一般的に使用されるジョブ スケジューリング アルゴリズムには、先着順、最短ジョブ優先方式、および応答率が最も高いものから順に決定し、優先順位を付けます。
(1) 先着順 (FCFS)。ジョブを到着順にスケジュールすると、ジョブが不足する可能性があります。
(2) 短いジョブを優先します (SJF)。ジョブは推定実行時間に従ってスケジュールされ、推定実行時間が短いジョブが最初にスケジュールされます。これは長時間のジョブには適しておらず、推定実行時間が長いジョブがサービスされないままになる可能性があります。
(3) 応答率の高いものが優先されます(HRN)。ジョブの推定実行時間とジョブの待機時間の両方を考慮して、上記 2 つを組み合わせると、応答率は次のようになります。 HRN = (推定実行時間待機時間) / 推定実行時間。
(4) 優先スケジューリング。ジョブの優先度に応じて、優先度の高いジョブが最初にスケジュールされます。
さらに、いくつかの重要な概念を理解する必要があります。
1.ジョブの所要時間 ジョブの所要時間は、ジョブの送信からジョブの完了までの時間です。ジョブ i の所要時間 Ti は、次のように表すことができます。 Ti=Tei - Tsi ここで、Tei はジョブ i の完了時刻、Tsi はジョブ i の投入時刻です。
2.平均所要時間 平均所要時間は、複数のジョブの所要時間の平均です。 n 個のジョブの平均所要時間は、次の式で表すことができます: T=(T1 T2...Tn)/n
3。加重ターンアラウンド タイム 加重ターンアラウンド タイムは、ジョブの実際の実行時間に対するジョブのターンアラウンド タイムの比率です。ジョブ i の加重所要時間 Wi は次のように表すことができます: Wi=Ti/Tri、ここで Ti はジョブ i の所要時間、Tri はジョブ i の実際の実行時間です。
4.平均加重所要時間 平均加重所要時間は、複数の操作の加重所要時間の平均です。
関連知識の詳細については、FAQ 列をご覧ください。
以上がジョブ スケジューラはキューからジョブを選択し、実行します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。