拡張 EXEC 名を使用した EXEC のロード
APAR OW28404 用 PTF を適用することにより、 置き換え可能 EXEC LOAD ルーチン・インターフェースは、 拡張 EXEC 名 (8 文字より長い EXEC 名または、大文字小文字を区別する EXEC 名) を 使用できるように拡張されます。 新しいフィールドである、 EXECBLK 内の EXECBLK_EXTNAME_PTR と EXECBLK_EXTNAME_LEN、 および INSTBLK 内の INSTBLK_EXTNAME_PTR と INSTBLK_EXTNAME_LEN は、 OW28404 用 PTF が適用された場合のみ使用できることに注意してください。 次に、OW28404 を適用した場合の LOAD インターフェースの拡張を説明します。
LOAD 要求の場合、呼び出し元が 8 文字より長い名前を持つ、 または大文字小文字の区別をする名前を持つ、EXEC を呼び出す場合があります。 その場合は、その拡張名を、 EXECBLK の EXEC_EXTNAME_PTR が指すフィールドに指定できます。 MEMBER フィールド内の名前も指定できます。 LOAD ルーチンが拡張名を取り扱うかどうかはオプションです。 LOAD ルーチンは、EXEC_EXTNAME_PTR (存在する場合) が指す拡張名を使用してもよいし、 またはこの名前を無視し、 ロードする EXEC の名前として EXEC_MEMBER フィールドを使用し続けることもできます。
EXEC_EXTNAME_PTR フィールドは、UNIX ファイル・システム・パス名または 大文字小文字を区別する EXEC ID を 置き換え可能 LOAD ルーチン (このような LOAD を取り扱うために特別に書かれた ルーチン) に渡す手段として使用できます。ただし、TSO/E のデフォルト LOAD ルーチン (IRXLOAD) は、 拡張名で指定された EXEC をロードしないことに注意してください。 これは、EXEC_DDNAME で指定された順次データ・セットまたは 区分データ・セット (PDS) (EXEC_MEMBER で PDS メンバーが指定されている) からのみロードします。
置き換え可能 LOAD ルーチンは、 拡張名を無視し、代わりに MEMBER 名を使用するという選択をすることもでき、 拡張名が存在すれば拡張名を使用してロードするという選択もできます。
LOAD ルーチンが拡張 EXEC 名で指定された EXEC をロードする場合、 LOAD ルーチンは拡張名のコピーを保持するためのストレージを取得し、 INSTBLK_EXTNAME_PTR が拡張名のコピーを指すようにし、 INSTBLK_EXTNAME_LEN にその長さをセットした INSTBLK を戻す必要があります。 拡張名を戻さない場合は (TSO/E デフォルト LOAD ルーチンのように)、 INSTBLK_EXTNAME_PTR と INSTBLK_EXTNAME_LEN は 0 にセットする必要があります。
ロード・ルーチンが FREE 要求のために呼び出された場合は、 INSTBLK および LOAD 要求中に取得した拡張名のストレージを解放する必要があります。