IBM Z Japan - Group home

#100【z/OS V2R5】 SDSFのISFPARMSモジュール(アセンブラー・マクロ形式)をサポートする最終リリース

  

従来、SDSF製品におけるパラメータ設定(カスタマイズ)は、下記どちらかの方法で行うことが可能です。

ISFPARMSモジュール(アセンブラー・マクロ形式)

SDSF製品の当初から提供(互換性のために継続して使用可能)

ISFPRMxx PARMLIBメンバー(推奨)

※モジュールの再作成が不要で、SDSF稼働中の動的変更をサポート

ISFPARMSモジュールの位置付け】

■製品提供のISFPARMSモジュールは、ISF.SISFLOADデータセットに存在し、対応するソース(アセンブラー・マクロ)が、ISF.SISFSRC(ISFPARMS)メンバーとして提供されています。

※アセンブラー・マクロによる独自カスタマイズを行う際は、SMP/E USERMODを適用してISFPARMSモジュールを置換

ISRUDSM DSLIST    ISF.SISFSRC                           Row 0000001 of 0000002

Command ===>                                                  Scroll ===> CSR

           Name     Prompt       Size   Created          Changed          ID 

_________ ISFPARMS                                                           

ISRUDSM DSLIST    ISF.SISFLOAD                          Row 0000065 of 0000094

Command ===>                                                  Scroll ===> CSR

           Name     Prompt        Alias-of     Size      TTR     AC   AM   RM

_________ ISFPARMS                           000013F8   00E90E   00    31  ANY

ISFPARMSモジュールは、z/OSのバージョン・リリース更新時に再作成が必要となり、さもないと、ISFPARMSモジュールとSDSFのレベルが不一致となるため、SDSFの起動が失敗します。(USER ABEND0083

■このような手間やSMP/E USERMODの管理を排除し、動的変更のメリットなどを享受するため、PARMLIB(ISFPRMxx)メンバーへの切り替えが以前から推奨されています。

z/OS V2R4V2R5の「アップグレード・アクション」には、PARMLIB(ISFPRMxx)メンバーが将来リリースでは必須となる計画の記載あり

SDSFサーバーが非稼働(z/OS V2R5では稼働必須)、あるいは、PARMLIB(ISFPRMxx)メンバーの読み込みが失敗した場合、ユーザーがSDSFにアクセスした時点でISFPARMSモジュールへのフォールバックが発生します。

#

RACF

SDSFクラス

SERVER.NOPARM

プロファイル

プロファイルへの

アクセス許可

フォールバックの

発生有無

1

非活動化

N/A

N/A

2

活動化

定義なし

N/A

3

活動化

定義あり

READ」なし

4

活動化

定義あり

READ」あり

※「#3」の場合はフォールバックが発生せず、SDSFへのアクセス不可(z/OS V2R5の事例)

ISF024I USER BEANS    NOT AUTHORIZED TO SDSF, NOPARM DENIED    

ICH408I USER(BEANS   ) GROUP(SYS1    ) NAME(XXXXXXX XXXXXX      )

  SERVER.NOPARM CL(SDSF    )                                   

  INSUFFICIENT ACCESS AUTHORITY                                

  ACCESS INTENT(READ   )  ACCESS ALLOWED(NONE   )              

***                                                            

ISFPARMSモジュールのサポート終了計画】

z/OS V2R3V2R4では、将来リリースにてPARMLIB(ISFPRMxx)メンバーの使用が必須となり、ISFPARMSモジュールへのフォールバックがサポートされなくなる旨の記載があります。

■一方、z/OS V2R5 SDSFマニュアル(SDSF Operation and Customization)では、ISFPARMSモジュールの扱いに関して、次のような「注意書き」が大きく掲載されました。

2022/06/21付けで発表された「開発意向表明」(Statement of direction)には、次の内容が含まれています。

z/OS V2R5は、SDSFISFPARMSモジュールを使用したアセンブラー・マクロ形式によるカスタマイズをサポートする最終リリースになる予定

https://www.ibm.com/common/ssi/ShowDoc.wss?docURL=/common/ssi/rep_ca/5/760/ENUSJP22-0255/index.html#sodx

https://www.ibm.com/common/ssi/ShowDoc.wss?docURL=/common/ssi/rep_ca/5/760/JAJPJP22-0255/index.html#sodx

IBMの計画・目標・意向に関する全ての発表は、将来予告なく変更あるいは取り消される場合があり得ます

SDSFパラメータ方式の確認】

PARMLIB(ISFPRMxx)メンバーを使用している場合、①SDSF初期設定時(IEE252I/ISF739Iメッセージ)、②「F SDSF,D」コマンド実行結果(ISF312Iメッセージ)には、次のような情報が含まれます。

z/OS V2R3

z/OS V2R5z/OS V2R4も同様)

D PARMLIB                             

IEE251I 19.22.28 PARMLIB DISPLAY 973  

 PARMLIB DATA SETS SPECIFIED          

 AT IPL                               

 ENTRY  FLAGS  VOLUME  DATA SET       

   1      S    ZMASYS  SYS0.PARMLIB   

   2      S    G523C1  SYS1.PARMLIB   

   3      S    G523C1  CPAC.PARMLIB   

   4      S    G523T1  SYS1.IBM.PARMLIB

D PARMLIB                                  

IEE251I 05.26.00 PARMLIB DISPLAY 437       

 PARMLIB DATA SETS SPECIFIED               

 AT IPL                                     

 ENTRY  FLAGS  VOLUME  DATA SET            

   1      S    ZMASYS  SYS0.PARMLIB        

   2      S    G725C1  SYS1.PARMLIB        

   3      S    G725C1  CPAC.PARMLIB        

   4      S    G725T1  SYS1.IBM.PARMLIB    

S SDSF                                                            

ISF724I SDSF level HQX77B0 initialization complete for server SDSF.

IEE252I MEMBER ISFPRM00 FOUND IN SYS0.PARMLIB                     

ISF739I SDSF parameters being read from member ISFPRM00 of data set

SYS1.PARMLIB+.                                                   

ISF728I SDSF parameters have been activated.                      

S SDSF                                                            

ISF724I SDSF level HQX77D0 initialization complete for server SDSF.

IEE252I MEMBER ISFPRM00 FOUND IN SYS0.PARMLIB                     

ISF739I SDSF parameters being read from member ISFPRM00 of data set

SYS0.PARMLIB.                                                     

ISF728I SDSF parameters have been activated.                      

F SDSF,D                                   

ISF304I Modify DISPLAY command accepted.   

ISF312I SDSF Display 976                   

   Server status:  Active       Default: Yes

   Communications: Active                  

   Parms: ISFPRM00                         

   XCF Communications: Configured          

   AuxName: SDSFAUX                        

F SDSF,D                                   

ISF304I Modify DISPLAY command accepted.   

ISF312I SDSF Display 440                   

   Server status:  Active       Default: Yes

   Communications: Active                  

   Parms: ISFPRM00 / SYS0.PARMLIB          

   XCF Communications: Configured          

   AuxName: SDSFAUX                        

ISFPARMSモジュールへのフォールバックが発生している場合、③SDSF初期設定時(ISF799Iメッセージ)、④「F SDSF,D」コマンド実行結果(ISF312Iメッセージ)には、次のような情報が含まれます。

SDSF初期設定時のメッセージ出力 ※z/OS V2R5の新機能(z/OS V2R4以下では出力なし)

 ISF739I SDSF parameters being read from member ISFPRM00 of data set XXXXXX.PARMLIB

 ISF732I Errors detected in SDSF parameters.

*ISF799I SDSF falling back to the ISFPARMS load module.

 ISF728I SDSF parameters have been activated.

 IEF764I SDSF SDSF SDSFPARM PARMLIB READ FAILED - MEMBER ISFPRM00 NOT

 FOUND.

 ISF103E Member ISFPRM00 not found, ddname SDSFPARM.

 ISF733E Unable to read SDSF parameters due to I/O error.

 ISF732I Errors detected in SDSF parameters.

*ISF799I SDSF falling back to the ISFPARMS load module.

 ISF728I SDSF parameters have been activated.

④「F SDSF,D」コマンドの実行結果(SDSF初期設定完了後)

z/OS V2R3

z/OS V2R4

F SDSF,D                                   

ISF304I Modify DISPLAY command accepted.   

ISF312I SDSF Display 171                   

   Server status:  Active       Default: Yes

   Communications: Inactive                

   Parms:                                   

   XCF Communications: Configured          

   AuxName: SDSFAUX                        

F SDSF,D                                   

ISF304I Modify DISPLAY command accepted.   

ISF312I SDSF Display 435                   

   Server status:  Active       Default: Yes

   Communications: Inactive                

   Parms: *NONE*                           

   XCF Communications: Configured          

   AuxName: SDSFAUX                        

z/OS V2R5では、APAR PH52848PTF UI90819適用後、「Parms: *NONE*」を表示

ISFPARMSモジュール使用状況の把握】

PARMLIB(ISFPRMxx)メンバーを使用せず、ISFPARMSモジュールへのフォールバックが発生している詳細な状況は、次のような方法にて確認することが可能です。

IBM Health Checker for z/OS IBMSDSF,SDSF_ISFPARMS_IN_USE

z/OS V2R4の場合

製品提供のISFPARMSモジュールを使用中

カスタマイズ済のISFPARMSモジュールを使用中

F HZSPROC,RUN,CHECK=(IBMSDSF,SDSF_ISFPARMS_IN_USE)

HZS0400I CHECK(IBMSDSF,SDSF_ISFPARMS_IN_USE): 441

RUN PROCESSING HAS BEEN COMPLETED

F HZSPROC,RUN,CHECK=(IBMSDSF,SDSF_ISFPARMS_IN_USE)

HZS0400I CHECK(IBMSDSF,SDSF_ISFPARMS_IN_USE): XXX

RUN PROCESSING HAS BEEN COMPLETED

ISFH1003I SDSF server SDSF is active but parmlib statements are not

being used.  A possible syntax error in the statements may exist.

ISFH1004I SDSF is not using parmlib statements for its configuration

parameters. However, no values have been customized.

ISFH1003I SDSF server SDSF is active but parmlib statements are not

being used.  A possible syntax error in the statements may exist.

ISFH1005E SDSF is using assembler macro ISFPARMS for its configuration

parameters.

z/OS V2R5では、ISFPARMSモジュールの使用状況を正しく報告するために、APAR PH52848PTF UI90819が必要

PTF未適用時は、PARMLIB(ISFPRMxx)メンバーを使用中という間違った結果を表示

F HZSPROC,RUN,CHECK=(IBMSDSF,SDSF_ISFPARMS_IN_USE)

HZS0400I CHECK(IBMSDSF,SDSF_ISFPARMS_IN_USE): 625

RUN PROCESSING HAS BEEN COMPLETED                

ISFH1001I SDSF server SDSF is using statements from member ISFPRM00 of

data set .

Generic Tracker

SDSFへのアクセス時に、フォールバック発生のイベント検知

z/OS V2R4z/OS V2R3も同様)

z/OS V2R5

SETGTZ CLEAR=TRACKDATA                                               

SETGTZ TRACKING=ON                                                   

GTZ1105I SETGTZ TRACKING PROCESSING IS COMPLETE                      

SETGTZ CLEAR=TRACKDATA                                               

SETGTZ TRACKING=ON                                                   

GTZ1105I SETGTZ TRACKING PROCESSING IS COMPLETE                      

D GTZ,TRACKDATA                                                      

GTZ1002I  20.05.10 GTZ TRACKDATA 575                                 

FOUND 1 MATCHING TRACKED INSTANCE(S)                                 

----------------------------------------------------------------------

 INSTANCE:      1                   COUNT:         1                 

 EVENTDESC:     'SDSF NOPARM FALLBACK: ISFPRMXX NOT ACTIVE'          

 OWNER:         IBMSDSF             SOURCE:        ISFINITC          

 EVENTDATA:     x0000000000000000   x0000000000000000                

 PROGRAM:       ISFVTBL             PROGRAMOFFSET: x00000000002732B4 

 HOMEJOB:       BEANS               HOMEASID:      x0029             

 EVENTJOB:      BEANS               EVENTASID:     x0029             

 AUTHORIZED:    YES                 FIRST TIME:    2023-06-03 20:04:59

D GTZ,TRACKDATA                                                      

GTZ1002I  01.19.39 GTZ TRACKDATA 392                                  

FOUND 1 MATCHING TRACKED INSTANCE(S)                                 

----------------------------------------------------------------------

 INSTANCE:      1                   COUNT:         1                 

 EVENTDESC:     'SDSF NOPARM FALLBACK: ISFPRMXX NOT ACTIVE'          

 OWNER:         IBMSDSF             SOURCE:        ISFXCON           

 EVENTDATA:     x0000000000000000   x0000000000000000                

 PROGRAM:       ISFZVTBL            PROGRAMOFFSET: x000000000017C7B8 

 HOMEJOB:       BEANS               HOMEASID:      x005D             

 EVENTJOB:      BEANS               EVENTASID:     x005D             

 AUTHORIZED:    YES                 FIRST TIME:    2023-05-25 01:19:12

PARMLIB(ISFPRMxx)メンバーへの移行】

ISFPARMS(アセンブラー・マクロ形式)から、PARMLIB(ISFPRMxx)メンバーへの変換を行う際、その支援ツール(ISFPARMS Conversion Utility)として、ISF.SISFEXECデータセットに含まれる「ISFACP REXX execが使用可能です。

※「ISFACP REXX execの入力としては、アセンブラー・マクロ形式のISFPARMS(ソース)のみサポートされ、ASM/BIND後のISFPARMSモジュールは使用不可

■「ISFACP REXX exec実行時の出力パネル(変換処理の完了時)

  Menu  List  Mode  Functions  Utilities  Help                       

s EssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssN

  e ISFDCNV           ISFPARMS Conversion Utility                    e

E e                                                                  e

  e ISFPARMS input data set to be converted                          e

= e ===> 'ISF.SISFSRC(ISFPARMS)'                                     e

  e                                                                  e

  e SDSF and JES2 macro libraries                                    e

  e ===> 'ISF.SISFSRC'                                               e

P e ===> 'SYS1.SHASSRC'                                              e

  e ===> 'SYS1.MACLIB'                                               e

= e ===> 'ISF.SISFMAC'                                               e

= e                                                                  e

= e Output data set                                                  e

= e ===> 'BEANS.D0603.SDSF.PARMS'                                    e

= e                                                                  e

= e  F1=Help      F2=Split     F3=Exit      F4=EditIn    F5=BrwsList e

= e  F6=EditOut   F9=Swap     F10=Profile  F12=Exit                  e

= DssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssM

= EsssssssssssssssssssssN T) ID(BEANS) DELETE                        

= e Conversion complete e T)                                         

  DsssssssssssssssssssssM                                            

■変換前後の比較(一部のみ) ※z/OS V2R5

変換前のISFPARMSソース(アセンブラー・マクロ形式)

ISFACP REXX execによる変換後

<snipped>

***********************************************************************

*                                                                     *

*        SAMPLE ISFGRP MACRO FOR SYSTEM PROGRAMMERS.               @P6C

*                                                                     *

***********************************************************************

         SPACE 5                                                        

ISFSPROG ISFGRP TSOAUTH=(JCL,OPER,ACCT),                           @N2C-

               AUTH=(ALL),                                         @IAC-

               CMDAUTH=(ALL),                                          -

               CMDLEV=7,                                               -

               DSPAUTH=(ALL),                                          -

               DFIELD2=DAFLD2,                                         -

               GPLEN=2,                                                -

               OWNER=NONE,                                         @NJA-

               APPC=ON,                                            @D2A-

               ACTIONBAR=YES,                                      @NUA-

               ACTION=ALL,                                             -

               BROWSE=NONE,                                        @IIA-

               EMCSAUTH=MASTER,                                    @IKA-

               EMCSREQ=NO,                                         @IKA-

               ISYS=LOCAL,                                         @NUA-

               DATE=MMDDYYYY,                                      @NXA-

               DATESEP=/,                                          @NXA-

               LOG=OPERACT,                                        @OMA-

               CURSOR=ON,                                          @NZA-

               CONFIRM=ON,                                         @O4A-

               CTITLE=ASIS,                                        @H5A-

               RSYS=NONE,                                          @H8A-

               INPUT=OFF,                                          @ICA-

               CPUFMT=LONG,                                        @IDA-

               DADFLT=(IN,OUT,TRANS,STC,TSU,JOB),                  @L2C-

               VALTAB=TRTAB,UPCTAB=TRTAB2,DISPLAY=OFF              @KLC

         EJECT                                                          

<snipped>

<snipped>

/**********************************************/   

/*  GROUP ISFSPROG                            */   

/**********************************************/   

 GROUP NAME(ISFSPROG),AUPDT(2),                    

   TSOAUTH(JCL,OPER,ACCT),                         

   ACTION(ALL),                                    

   ACTIONBAR(YES),                                 

   APPC(ON),                                        

   AUTH(ALL),                                      

   BROWSE(NONE),                                   

   CMDAUTH(ALL),                                   

   CMDLEV(7),                                      

   CONFIRM(ON),                                     

   CTITLE(ASIS),                                   

   CURSOR(ON),                                     

   DADFLT(IN,OUT,TRANS,STC,TSU,JOB),               

   DATE(MMDDYYYY),                                 

   DATESEP('/'),                                    

   LOGOPT(OPERACT),                                

   DFIELD2(DAFLD2),                                

   DISPLAY(OFF),                                   

   DSPAUTH(ALL),                                   

   EMCSAUTH(MASTER),                                

   EMCSREQ(NO),                                    

   GPLEN(2),                                       

   ILOGCOL(1),                                     

   ISYS(LOCAL),                                    

   LANG(),                                         

   RSYS(NONE),                                     

   OWNER(NONE),                                    

   UPCTAB(TRTAB2),                                 

   VALTAB(TRTAB),                                   

   VIO(SYSALLDA)                                   

<snipped>

以上