ISPF パック・コンパイラー・リスト

ISPF には、PACK データ・セットを対象とする機能があります。このフォーマットでは ISPF は、反復文字を、文字の反復回数を示すシーケンスで置き換えます。この機能により、直接アクセス・ストレージ・デバイス (DASD) をさらに効率的に使用できます。コンパイラー・リストを開くと、Fault Analyzer によって、リストが PACKed フォーマットであるかどうかが検出され、使用前にアンパックされます。

ISPF 環境でコンパイラー・リストをパックするには、EDIT セッション内からリストに対して PACK 基本コマンドを実行し、リストを保管します。

また、パック・コンパイラー・リストの作成は、追加ステップをコンパイル・ジョブに挿入することによって自動化できます。ジョブの例を以下に示します。この例では、REXX exec から ISPF LMCOPY コマンドを使用し、PACK オプションを指定してデータ・セット間でリストをコピーします。
//PACKLIST EXEC  PGM=IKJEFT01
//SYSPROC   DD DSN=rexx-exec-library,DISP=SHR
//ISPPLIB   DD DISP=SHR,DSN=ISP.SISPPENU
//ISPSLIB   DD DISP=SHR,DSN=ISP.SISPSLIB
//ISPTLIB   DD DISP=SHR,DSN=ISP.SISPTENU
//ISPMLIB   DD DISP=SHR,DSN=ISP.SISPMENU
//ISPLOG    DD SYSOUT=*,DCB=(RECFM=FBA,LRECL=121,BLKSIZE=1210)
//ISPLIST   DD SYSOUT=*,DCB=(RECFM=FBA,LRECL=121,BLKSIZE=1210)
//SYSTSPRT  DD SYSOUT=*,DCB=(RECFM=FBA,LRECL=121,BLKSIZE=1210)
//SYSPRINT  DD SYSOUT=*
//LMIN      DD DISP=SHR,DSN=compile-step-listing-data-set
//LMOUT     DD DISP=SHR,DSN=packed-listing-data-set
//ISPPROF   DD SPACE=(TRK,(5,1,4)),UNIT=SYSALLDA,
//             DCB=(DSORG=PO,RECFM=FB,LRECL=80,BLKSIZE=6160)
//SYSTSIN   DD *
ISPSTART CMD(LMCOPY member-name)
/*
compile-step-listing-data-setpacked-listing-data-set の両方が PDS または PDSE データ・セットの名前です。メンバー指定はなく、member-name はコンパイラー・リストのメンバー名です (通常は、コンパイルされるプログラム名に一致します。コンパイラー・リストまたはサイド・ファイルの命名を参照してください)。
LMCOPY REXX exec は、メンバー LMCOPY として rexx-exec-library データ・セットに存在する必要があります。以下に例を示します。
/* LMCOPY Rexx */
Address ISPEXEC
Arg member
'LMINIT DATAID(INDD) DDNAME(LMIN) ENQ(SHRW)'
'LMINIT DATAID(OUTDD) DDNAME(LMOUT) ENQ(SHRW)'

'LMCOPY FROMID('INDD') TODATAID('OUTDD')
   FROMMEM('member') TOMEM('member') REPLACE PACK'

'LMFREE DATAID('INDD')'
'LMFREE DATAID('OUTDD')'

ISPF PACK はコンパイラー・リストで使用される DASD スペースを節約しますが、コンパイラー・リストを LANGX サイド・ファイルに変換してリストを破棄すると、より多くのスペースを節約できます。(詳細については、「IBM Application Delivery Foundation for z/OS Common Components: Customization Guide and User Guide」の「IPVLANGX コンパイラー・リストからサイド・ファイルへの変換ユーティリティー」の章の「IPVLANGX を使用したサイド・ファイルの作成」のセクションを参照してください。)

オリジナルのコンパイラー・リスト情報の大半を LANGX サイド・ファイルから再印刷できます。IBM Application Delivery Foundation for z/OS Common Components: Customization Guide and User Guide」の IPVLANGP ユーティリティーの説明を参照してください。