ISPF パック・コンパイラー・リスト
ISPF には、PACK データ・セットを対象とする機能があります。このフォーマットでは ISPF は、反復文字を、文字の反復回数を示すシーケンスで置き換えます。この機能により、直接アクセス・ストレージ・デバイス (DASD) をさらに効率的に使用できます。コンパイラー・リストを開くと、Fault Analyzer によって、リストが PACKed フォーマットであるかどうかが検出され、使用前にアンパックされます。
ISPF 環境でコンパイラー・リストをパックするには、EDIT セッション内からリストに対して 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-set と packed-listing-data-set の両方が PDS または PDSE データ・セットの名前です。メンバー指定はなく、member-name はコンパイラー・リストのメンバー名です (通常は、コンパイルされるプログラム名に一致します。コンパイラー・リストまたはサイド・ファイルの命名を参照してください)。/* 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 ユーティリティーの説明を参照してください。