コンソール
本章では、OpenFrame Baseシステムの構成要素であるコンソールの構成および機能について説明します。
1. 概要
システム・コンソールまたはコンソールとは、システム・カーネルからシステム管理者へのメッセージを出力し、システム管理者がシステムを管理するためのコマンドを入力するための画面とキーボードのことです。
メインフレーム管理者は、提供されたコンソールを使用してシステムを管理および運用します。ただし、一部のメインフレームでは、システムの管理だけでなく、特定の業務アプリケーションの実行時に必要なデータをリアルタイムで直接入力するためにコンソールを使用しています。OpenFrameでは、このようなメインフレームのコンソール機能をサポートするために、仮想のシステム・コンソール・インターフェースを提供しています。
2. コンソールの構成および機能
OpenFrameコンソールは以下の要素で構成されており、DISPLAY機能とACCEPT機能をサポートします。
構成要素 | 説明 |
---|---|
プログラム |
PL/IまたはCOBOLで作成されたアプリケーション・プログラムまたはオンライン・サービスです。 |
tconmgr |
仮想のコンソール・デバイスです。 |
ofrcmsvr |
コンソール・メッセージを管理および表示するコンソール・サーバーです。 |
2.1. DISPLAY
PL/I言語のDISPLAY文またはCOBOL言語のDISPLAY UPON CONSOLE文を、コンソールのDISPLAY機能でサポートします。
以下の図は、DISPLAY機能が実行されるプロセスです。

-
プログラムでDISPLAYを実行するプロセス
-
プログラムはofrcmsvrにDISPLAYメッセージを送信します。
-
ofrcmsvrはDISPLAYメッセージをファイルに書き込みます。
-
ofrcmsvrは現在接続されているtconmgrにメッセージを送信します。
-
ofrcmsvrはプログラムに確認応答を返します。
-
-
tconmgrでDISPLAYを実行するプロセス
-
tconmgrはofrcmsvrに接続されたことを通知します。
-
ofrcmsvrは正常に応答を返します。以降、定期的にofrcmsvrからのメッセージを確認して出力します。
-
2.2. ACCEPT
PL/I言語のREPLY文またはCOBOL言語のACCEPT FROM CONSOLE文を、コンソールのACCEPT機能でサポートします。

-
プログラムでACCEPTを実行するプロセス
-
プログラムはofrcmsvrにACCEPTメッセージを送信します。
-
ofrcmsvrはACCEPTメッセージをファイルに書き込みます。
-
ofrcmsvrは現在接続されているtconmgrにメッセージを送信し、tconmgrからのACCEPT応答を受信するまでプログラムへの応答を保留します。プログラムは、ofrcmsvrからACCEPTメッセージを受信するまで待機状態になります。(図の③)
-
-
tconmgrでDISPLAYを実行するプロセス
-
tconmgrはofrcmsvrに接続されたことを通知します。
-
ofrcmsvrは正常に応答を返します。以降、定期的にofrcmsvrからのメッセージを確認して出力します。
-
3. tconmgr
tconmgrは、メインフレームでのコンソールに対応する仮想のOpenFrameコンソール・ツールです。ユーザーが指定したIDのコンソール・メッセージを確認できます。
使用方法
以下は、tconmgrツールの実行方法です。
$ tconmgr [CONSOLE_ID]
-
入力項目
項目 説明 CONSOLE_ID
0から99まで指定できます。現在OpenFrameでは、0(ゼロ)のみ使用されており、CONSOLE_IDが指定されていない場合は、0として処理されます。出力項目のすべてのメッセージも0で出力されます。
-
出力項目
EXTENDED_JOB_INFOの設定がNOの場合 [{Msg Source};{Date Time};{Length};{Console ID};{User};{Step ID};{PID}]{JOBCODE} {Msg} EXTENDED_JOB_INFOの設定がYESの場合 [{Msg Source};{Date Time};{Length};{Console ID};{User};{Job ID};{Job Name};{Step ID};{PID}]{JOBCODE} {Msg}
以下は、コンソール・メッセージの先頭に出力される情報です。各項目はセミコロン( ; )で区切られ、全体は角括弧([ ])で囲まれます。
項目 説明 Msg Source
メッセージ・ソース(発信元)です。COBOL、TCONMGRなどがあります。
Date Time
メッセージが作成された日時(YYYYMMDD_HHMMSS形式)です。
Length
メッセージの長さです。
Console ID
メッセージ・ソースのコンソールIDです。現在は0のみ出力されます。
User
一般的にメッセージ・ソースのジョブIDが出力されます。ジョブIDが存在しない場合は、ユーザー名が出力されることもあります。メッセージ・ソースがTCONMGRの場合は、応答対象のジョブIDが出力されます。
Job ID
メッセージ・ソースのジョブIDが出力されます。OpenFrame環境設定のconsoleサブジェクト、CONSOLEセクションのEXTENDED_JOB_INFOキーのVALUEがYESに設定されている場合です。
Job Name
メッセージ・ソースのジョブ名が出力されます。OpenFrame環境設定のconsoleサブジェクト、CONSOLEセクションのEXTENDED_JOB_INFOキーのVALUEがYESに設定されている場合です。
Step ID
メッセージ・ソースのステップIDが出力されます。ステップIDがない場合は、ステップ番号が表示されます。
PID
メッセージ・ソースのUNIXのプロセスIDが出力されます。メッセージ・ソースがTCONMGRの場合は、応答対象のUNIXのプロセスIDが出力されます。
JOBCODE
メッセージ・ソースのジョブコードが先頭の3桁に表示されます。
Msg
コンソール・メッセージが出力されます。
以下は、EXTENDED_JOB_INFOの設定がNOの場合、コンソール・メッセージの出力例です。
[COBOL;20241210_085226;24;0;JOB00674;STEP1;852487]598 CONSOLE DISPLAY TEST
以下は、EXTENDED_JOB_INFOの設定がYESの場合、コンソール・メッセージの出力例です。
[COBOL;20241210_051149;24;0;NOUSER;JOB00668;JOB1;STEP1;698539]592 CONSOLE DISPLAY TEST
使用例
以下は、コンソールの一般的な使用フローの例です。アプリケーションがコンソールにメッセージを送信するか、応答を要求する方法を示しています。
IDENTIFICATION DIVISION … ENVIRONMENT DIVISION … DATA DIVISION … WORKING-STORAGE SECTION. 03 BUFFER PIC X(10). PROCEDURE DIVISION. A SECTION. DISPLAY “CONSOLE DISPLAY TEST” UPON CONSOLE. ACCEPT BUFFER FROM CONSOLE. EXIT. STOP RUN
以下は、DISPLAYとACCEPTドの実行手順です。
-
以下のコマンドでDISPLAYを実行します。
DISPLAY “CONSOLE_DISPLAY_TEST” UPON CONSOLE.
コンソールに「CONSOLE_DISPLAY_TEST」というメッセージが表示されます。
-
以下のコマンドでACCEPTを実行します。
ACCEPT BUFFER FROM CONSOLE.
コンソールに「Accept request received!!!」というメッセージが表示されます。
-
ユーザーは、REPLYコマンドの「R」を使用して要求メッセージに応答することができます。REPLYコマンドを実行すると、コンソールに新しい画面が表示され、応答を要求したメッセージの一覧が表示されます。一覧から希望する番号を選択して応答メッセージを送信できます。
REPLYコマンドを実行すると、以下のような画面が表示されます。
-
以下は、表示されたメッセージの一覧から0を選択し、「OK」というメッセージを応答した画面です。
-
「OK」メッセージを入力して送信すると、以下のようにtconmgrが応答したメッセージが表示されます。
tconmgrを閉じると、表示された内容は画面から削除されます。以前の内容を検索する場合は、HISTORYコマンドの「H」を使用します。
以下は、HISTORYコマンドを使用して以前の内容を検索する画面です。

HISTORYコマンドを実行すると、新しい画面が表示されます。以下の条件項目に従って以前の内容を検索します。
項目 | 説明 |
---|---|
Process ID |
UNIXのPIDです |
User |
一般的にはジョブIDですが、ジョブIDがないメッセージの場合は、別の名前になることがあります。 |
Msg Source |
メッセージのソースです。COBOL、TCONMGRなどがあります。 |
Date |
メッセージが作成された日付です。入力値がない場合は、当日に作成されたメッセージを検索します。 |
Time |
メッセージが作成された時間です。指定した時間以降に作成されたメッセージのみ検索します。 |
以下は、Process IDに「708593」を入力して検索した例です。
