TSOの紹介
本章では、TSOの基本概念と機能について説明します。
1. TSOの機能
TSO(Time Sharing Option)は、ユーザーがTSOコマンドおよびコマンド・プロシージャを使用して、端末の入出力、データセットの管理、COBOLプログラムの実行など、さまざまな業務を処理することができる機能です。TSOコマンドはJCLを使用してバッチ・ジョブとして実行するか、画面入出力を介して対話型で実行することができます。
以下は、TSOが提供する機能です。
-
データセット管理
カタログ項目を表示するか、データセットを削除する機能です。
-
プログラムの実行
プログラム・ライブラリや実行ファイルを実行する機能です。
-
実行環境の設定
データセットの割り当てまたは削除およびジョブ・ライブラリを設定する機能です。
-
バッチ・ジョブの削除
バッチ・ジョブを実行またはキャンセルする機能です。
-
画面の入出力
ディスプレイ端末で画面の入出力を処理する機能です。
-
コマンド・プロシージャ
UNIXシェルの組み込みコマンド、制御文、環境変数に似た機能です。
2. TSO画面の入出力処理の構造
TSOは、画面の入出力を処理するTSOMGRと、実際にTSOコマンドを処理するプログラムのKEQEFT01で構成されています。KEQEFT01は、JCLに記述されているCLISTおよびTSOコマンドを読み込んで処理するユーティリティです。CLISTに画面呼び出しコマンド(EXCEFW、EXCEFI、PANEL)を記述するか、COBOLでIPFサブルーチンを介して画面を呼び出すと、TSOMGRのTmaxサービスを呼び出してデータとパラメータを渡します。
TSOMGRユーティリティは、事前にコンパイルされたマップ情報ファイルを読み込んで画面のフィールド情報を構成し、OpenFrame GWを介して画面に表示します。画面に値が入力されると、OpenFrame GWを介してその値がTSOMGRに渡され、必要なデータを抽出した後、KEQEFT01ユーティリティに返します。
以下の図は、TSO画面の入出力処理のプロセスを示しています。

-
OpenFrame GW
画面に入力されたデータをTSOMGRに渡し、KEQEFT01が処理したデータを再びTSOMGRを介して受信して画面に表示します。
-
TSOMGR
KEQEFT01からデータとパラメータを受け取り、事前にコンパイルされているマップ情報ファイルから必要なマップ情報を読み込んで画面のフィールド情報を構成した後、OpenFrame GWに渡します。画面に値が入力されると、OpenFrame GWを介してその値がTSOMGRに渡され、必要なデータを抽出した後、アプリケーション・プログラムに返します。
-
KEQEFT01
ユーザーがディスプレイ端末よりTSOにアクセスすれば、TSOMGRがそれぞれのTSOユーザーに対するジョブを実行させます。KEQEFT01ユーティリティは、それぞれのジョブに対するCLISTのスクリプト・ファイルを分析してTSOコマンドを実行させます。TSOコマンドを実行させると、画面を呼び出したり、COBOLのようなアプリケーション・プログラムを実行させることができます。
-
CLIST (Command Procedure)
TSOのコマンド・リストであり、KEQEFT01ユーティリティがCLISTに指定されているTSOコマンドを1行ずつ読み込んで実行させます。画面の呼び出し、アプリケーション・プログラムの実行、データセットの管理、バッチ・ジョブの制御などの業務を実行することができます。
-
MAP
画面でデータ入出力を処理するためのマップ・ファイルです。