前回説明した IBM iのジョブ状態の遷移 を具体例を使って説明します。
シーン1:ジョブ5を新規投入する
最大活動数が5のサブシステムがあるとします。現在4つのジョブが活動状態です。
ここに、新しくジョブ5を投入します。
→ジョブ5を投入時、まず不適格待ち行列にジョブが無いか確認されます。
→不適格待ち行列にジョブはありません。
→サブシステムの活動レベルに空きが一つあります。よってジョブ5は活動状態になります。
シーン2:ジョブ6を投入
続けてジョブ6を投入します。
この時点で活動レベルに空きがないので、ジョブ6は不適格待ち行列に入ります。
シーン3:ジョブ4がタイム・スライス・エンドに到達
ジョブ4がタイムスライス・エンドに到達したとします。
→不適格待ち行列で最も高い優先順位とジョブ4のそれを比較します。ジョブ6は30なので、ジョブ4 20の方が優先順位高い事が分かります。
→ジョブ4はタイム・スライス値をリセットして実行を継続します
シーン4:ジョブ7を投入
続けてジョブ7を投入します。
このとき活動レベルに空きがないのでジョブ7は不適格待ち行列に入ります。
シーン5:ジョブ2がタイム・スライス・エンドに到達
ジョブ2がタイム・スライス・エンドに到達したとします。
→不適格待ち行列で最も高い優先順位とジョブ2を比較します。ジョブ7は15なのでジョブ2 20より優先順位が高いことが分かります。
→ジョブ2は活動レベルを放棄し不適格待ち行列に入ります。
→代わりにジョブ7が活動状態に入ります
シーン6:ジョブ5が画面入力待ちになる
ジョブ5が画面入力待ちになったとします。
→5250端末の画面入力待ちはロング・ウェイトに該当するのでジョブ5はウェイト待ち行列に移動します。
→活動レベルに空きができるので、不適格待ち行列で一番実行優先順位RUNPTYが高いジョブ2が活動レベルに入ります。
シーン7:ジョブ5(ウェイト待ち行列内)で画面入力が実行される
シーン6でジョブ5がウェイト待ち行列に入った後に、ユーザーが5250端末から実行キーかPFキーを押すと、ウェイト待ちが解除されます。
→このとき活動レベルの空きを確認します。
→活動レベルに空きがないのでジョブ5は不適格待ち行列へ移動します。
シーン8:最終形(ジョブ5が不適格待ち行列へ移動)
シーン7の結果、ジョブ5が不適格待ち行列へ移動します。