IBM メインフレーム ユーティリティプログラム

IBM Mainframe Utility Programs（IBMメインフレーム ユーティリティ・プログラム）は、IBMのメインフレーム用のユーティリティ・プログラム。ここではオペレーティングシステムのうちOS/360およびその後継であるMVSやz/OS用について記述する。

IBMはこれらのプログラムをユーティリティやサービスエイド(service aids)と呼ぶが、その相違は曖昧で、多くはユーティリティ・ソフトウェアと言える。

以下のプログラムは全てOS/360系であり、DOS/360系やTPF系やVM系は含んでいない。

 ICKDSF 
ICKDSF はDASDをインストールしたり、初期化したり、保守するのに用いられる。オペレーティングシステムに繋いでいても、切り離されていても使用できる。

 サンプル (VTOCをデフォルトサイズで作成)
 //ICKDSF1 JOB (ICKDSF,,TEST),'DISK INIT',CLASS=A,MSGCLASS=A,
 //         MSGLEVEL=(1,1)
 //ICKDSF01 EXEC PGM=ICKDSF
 //SYSPRINT DD  SYSOUT=*
 //SYSIN    DD  *
   INIT UNIT(unitaddr) NOVERIFY VOLID(volume) VTOC(END)
 /*

 IDCAMS 
IDCAMS は VSAM データセットを生成したり、変更を加えたりするのに用いる。

 サンプル(DB2の一時表領域の作成をしている)
 //WRKFILE EXEC PGM=IDCAMS
 //SYSPRINT DD SYSOUT=*   
 //SYSIN DD *             
  DEFINE  CLUSTER -
        ( NAME(DSNCAT.DSNDBC.WRKFILE.DSN4K01.I0001.A001) -
          LINEAR -
          REUSE -
          VOLUMES(volume)  -
          CYLINDERS(1000 50) -
          SHAREOPTIONS(3 3) ) -
     DATA -
        ( NAME(DSNCAT.DSNDBD.WRKFILE.DSN4K01.I0001.A001) ) - 
     CATALOG -
        ( DSNCAT )

 IEBCOMPR 
IEBCOMPR は順次データセットまたは区分データセットを比較（コンペア）するのに用いる。

 サンプル(順編成ファイルの比較している)
  //STEP001  EXEC PGM=IEBCOMPR
  //SYSPRINT DD  SYSOUT=*
  //SYSUT1   DD  DISP=SHR,DSN=COMPARE.DATA
  //          UNIT=3390,VOL=SER=WRKVOL
  //SYSUT2   DD  DISP=SHR,DSN=TARGET.DATA
  //          UNIT=3390,VOL=SER=GYOVOL
  //SYSIN    DD  *
     COMPARE   TYPORG=PS
  /*

 IEBCOPY 
IEBCOPY は区分データセットをコピー、圧縮（コンプレス）、合併（マージ）するのに用いられる。コピーする際、メンバーの選択 (select, exclude)、メンバー名の変更 (rename)、メンバーの置換 (replace) ができる。

 サンプル(メンバーコピー)
  //STEP01   EXEC PGM=IEBCOPY,REGION=4M
  //SYSPRINT DD SYSOUT=*
  //SYSUT3   DD SPACE=(CYL,400),UNIT=SYSDA
  //SYSUT4   DD SPACE=(CYL,400),UNIT=SYSDA
  //I1       DD DISP=SHR,DSN=USER.LIBRARY1
  //O1       DD DISP=SHR,DSN=USER.LIBRARY2
  //SYSIN    DD *
    COPY I=I1,O=O1
      S M=(PGM001)
  /*

 IEBDG 
IEBDG ('Data Generator') は、パターン化されたデータから成るテストデータセットを作成する。

 IEBEDIT 
IEBEDIT は、JCL の一部分をコピーする。

 IEBGENER 
IEBGENER は、順次データセットのレコードをコピーする。あるいは、区分データセットに格納する。

 サンプル(順次データのコピー)
  //STEP01   EXEC PGM=IEBGENER,REGION=4M
  //SYSPRINT DD SYSOUT=*
  //SYSUT1   DD DISP=SHR,DSN=USER.SEQDETA1
  //SYSUT2   DD DSN=USER.SEQDATA2,
  //          DISP=(NEW,KEEP,DELETE),UNIT=3390,VOL=SER=volume,
  //          SPACE=(TRK,(850,100),RLSE)
  //SYSIN    DD DUMMY

 IEBIMAGE 
IEBIMAGE は IBM 3800 プリントサブシステムのロードモジュールを扱う。

 IEBISAM 
IEBISAM は ISAM データセットの印刷やデータのロード、アンロードを行う。

 IEBPTPCH 
IEBPTPCH は順次データセットまたは区分データセットを印刷、またはパンチする。

 IEFBR14 
IEFBR14 はダミープログラムで、通常はデータセットのアロケーション（作成）やデリート（削除）に使用する。IEFBR14 は最初、機械語の命令の1つ "Branch to Register" 14 のみで出来ていた。IBMのアセンブリ言語では記憶するのに BR 命令を使用した。そこから、IEF BR 14 の名が付いた。この命令が1つだけのプログラムは、エラーを内包する。それはリターンコードをセットしない、というものだ。そこで、リターンコードをクリアするために2つめの命令が付け加えられた。現在では、正しいステータスとともに終了する。

 IEBUPDTE 
IEBUPDTE は順次データセットと区分データセットの変換を実施する。

 IEHINITT 
IEHINITT ('INIT Tape') は、ラベルを書き込むことによってテープを初期化する。

 IEHLIST 
IEHLIST はデータセットのリストを取る。

 IEHMOVE 
IEHMOVE は、データの集まりを移動したりコピーしたりするのに用いる。

 IEHPROGM 
IEHPROGM はシステム制御データを作成したり (build) 保守したりするのに用いる。また、データセットを消したり (scratch) 、名前を変更する (rename) のに用いられる。

 脚注 

 関連項目 
Job Control Language
Multiple Virtual Storage
データセット (IBMメインフレーム)

Category:IBMのソフトウェア
Category:メインフレーム
Category:ユーティリティソフトウェア