Rational Developer for System z
Enterprise PL/I for z/OS, Version 3.8, プログラミング・ガイド

SYSADATA ファイルについて

SYSADATA ファイルは順次バイナリー・ファイルです。 z/OS バッチ環境では、コンパイラーは SYSADATA DD ステートメントで指定されたファイルに SYSADATA レコードを書き込みます。このファイルは PDS のメンバーであってはなりません。 その他のすべてのシステムでは、コンパイラーは拡張子「adt」を持つファイルに書き込みます。

ファイル内のそれぞれのレコードには、ヘッダーが入っています。 この 8 バイトのヘッダーには、以下のフィールドがあり、これはそのファイル内のすべてのレコード で同じです。

コンパイラー
データを生成したコンパイラーを表す番号。 PL/I の場合、この番号は 40 です。
エディション番号
データを生成したコンパイラーのエディション番号。 この製品の場合、この番号は 2 です。
SYSADATA レベル
このファイル・フォーマットが示す SYSADATA のレベルを表す番号。 この製品の場合、この番号は 4 です。

ヘッダーには、レコードごとに変わる、以下のフィールドもあります。

可能なレコード・タイプは、図 105 に示すような、序数値 としてエンコードされています。

図 105. 序数値としてエンコードされたレコード・タイプ
 Define ordinal xin_Rect
  (Xin_Rect_Msg       value(50),   /*  Message record                */
   Xin_Rect_Fil       value(57),   /*  File record                   */
   Xin_Rect_Sum       value(61),   /*  Summary record                */
   Xin_Rect_Src       value(63),   /*  Source record                 */
   Xin_Rect_Tok       value(64),   /*  Token record                  */
   Xin_Rect_Sym       value(66),   /*  Symbol record                 */
   Xin_Rect_Lit       value(67),   /*  Literal record                */
   Xin_Rect_Syn       value(69),   /*  Syntax record                 */
   Xin_Rect_Ord_Type  value(80),   /*  ordinal type record           */
   Xin_Rect_Ord_Elem  value(81),   /*  ordinal element record        */
   Xin_Rect_Ctr       value(82) )  /*  counter record                */
                      prec(15);

レコードのヘッダー部分の宣言は、図 106 に示されています。

図 106. レコードのヘッダー部分の宣言
 Dcl
   1 Xin_Hdr Based( null() ),       /*  Header portion               */
                                    /*                               */
     2 Xin_Hdr_Prod                 /*  Language code                */
             fixed bin(8) unsigned, /*                               */
                                    /*                               */
     2 Xin_Hdr_Rect                 /*  Record type                  */
         unal ordinal xin_Rect,     /*                               */
                                    /*                               */
     2 Xin_Hdr_Level                /*  SYSADATA level               */
             fixed bin(8) unsigned, /*                               */
                                    /*                               */
     2 * union,                     /*                               */
       3 xin_Hdr_Flags     bit(8),  /*  flags                        */
       3 *,                         /*                               */
         4 *               bit(6),  /*  Reserved                     */
         4 Xin_Hdr_Little_Endian    /*  ints are little endian       */
                           bit(1),  /*                               */
         4 Xin_Hdr_Cont    bit(1),  /*  Record continued in next rec */
                                    /*                               */
     2 Xin_Hdr_Edition              /*  compiler "edition"           */
             fixed bin(8) unsigned, /*                               */
                                    /*                               */
     2 Xin_Hdr_Fill        bit(32), /*  reserved                     */
                                    /*                               */
     2 Xin_Hdr_Data_Len             /*  length of data part          */
            fixed bin(16) unsigned, /*                               */
                                    /*                               */
     2 Xin_Hdr_End         char(0); /*                               */

Terms of use | Feedback

This information center is powered by Eclipse technology. (http://www.eclipse.org)