JP1/Advanced Shell
JP1/AJS,Windowsのコマンドプロンプト,またはUNIXのシェルなどからジョブコントローラを起動する要求は,ジョブとして受け付けられます。ジョブを利用する一般ユーザーは,指示をまとめて記述したジョブ定義スクリプトをジョブコントローラに渡します。
ジョブを利用する一般ユーザーが指定した指示は,ジョブコントローラによって何が要求されているかが分析され,システム資源が効率良く利用されるようにジョブを実行します。
- <この項の構成>
- (1) ジョブ
- (2) ジョブステップ
- (3) ジョブとジョブステップの概念
- (4) 一時ファイルと通常ファイル
ジョブとは一般に,一般ユーザーが用意する1つのまとまった仕事をシステムに要求する単位です。要求する仕事は互いに独立したものと考えられます。
ジョブは一連の処理プログラムから構成されています。これらの処理プログラムを実行するには,その実行の順序,実行の条件,および処理プログラムの実行に必要なファイルを定義する必要があります。
ジョブには,ルートジョブと子孫ジョブがあります。
- ルートジョブ
JP1/AJSやログインシェルなどから実行するジョブのうち,子孫ジョブ以外のジョブのことです。
- 子孫ジョブ
ルートジョブの子孫プロセスとして実行されるジョブ定義スクリプトのうち,CHILDJOB_SHEBANGパラメーター(Windows,Linux限定)によって実行されたジョブのことです。
ルートジョブと子孫ジョブの起動の流れの例を次の図に示します。
ジョブステップとは,ジョブを構成する実行の単位で,ジョブ定義スクリプトの一部分を,ひとまとまりのコマンド群としてグループ化したものです。ジョブステップは資源を割り当てる単位になります。
幾つかのジョブステップは互いに関連を持っていて,前のジョブステップが正しく処理されないと次のジョブステップの実行が意味を持たない場合があります。この場合,ジョブステップの実行条件を指定して,処理のスキップもできます。
ジョブとジョブとは互いに独立しています。したがって,同時に処理するジョブ同士,または先に実行したジョブがあとに実行するジョブに影響を及ぼすことはありません。さらに,ファイル上の情報を除けば,ジョブからジョブに情報を引き継がれることもありません。
ただし,次の場合にジョブ同士が関連を持つことがあります。
- JP1/AJSによるスケジュールによっては,ジョブ相互に実行順序関係ができます。
- 複数のジョブで同時に同一の通常ファイルを使用する場合は,それらのジョブ同士が関連を持ちます。ジョブが適切な順序で実行されるようJP1/AJSのスケジュールを設計する必要があります。
(4) 一時ファイルと通常ファイル
バッチジョブでは,オープン基盤製品からの情報などを一時ファイルまたは通常ファイルとして参照し,処理を実行します。
一時ファイルとは,ジョブ実行時に一時的に使用するファイルです。ジョブまたはジョブステップによって自動的に作成され,ジョブ終了時には自動的に削除されます。一時ファイルは環境ファイルで定義したディレクトリに作成されます。
バッチジョブの一時ファイルとほかのアプリケーションの一時ファイルは,分けて管理することを推奨します。JP1/Advanced Shellで一時ファイルを格納するディレクトリパスは,TEMP_FILE_DIRパラメーターに指定します。通常,一時ファイルは削除されますが,障害が発生した場合は残ることもあるため,定期的に一時ファイルを削除する必要があります。
通常ファイルとはジョブ定義スクリプトの入力および出力に使用するファイルで,任意のディレクトリに配置できます。ジョブ終了後にジョブ結果として残すファイルですが,ジョブの実行中に削除することもできます。
All Rights Reserved. Copyright (C) 2011, 2012, Hitachi, Ltd.