ダンプリスト解析入門⑦

By 神居 - Posted: 2012/12/17 Last updated: 2012/12/17 - Leave a Comment

ダンプリスト解析入門⑦:ダンプ解析に関連するOSコントロール・ブロック&#9314

LLE

LLE(Load List Element)は、タスクがローディングしたロードモジュールを示すコントロール・ブロックです。タスクが最後にロードしたモジュールのLLEがTCBLLSフィールドからポイントされます。LLEには1つ前のLLEへのポインター、およびローディングしたモジュールを管理するCDEへのポインターがあり、LLEのチェインをたどることで、タスクがローディングしたモジュールとその順番がわかります。LLEはIHALLEマクロによってマッピングできます。


CDE

CDE(Contents Directory Entry)は、タスクで実行中のプログラム・モジュールおよびローディングされたロードモジュールを管理するコントロール・ブロックです。LLEはLOADマクロによってローディングされたモジュールに対して作成されますが、CDEはLOADマクロだけでなくLINKやXCTLあるいはATTACHマクロによってローディングされたモジュールに対しても作成されます。また、IDENTIFYマクロやリンケージエディターのALIASなどによる別名に対しても作成されます。
別名だけでモジュールがローディングされた場合は、別名だけでなく元の名前(本名あるいは主名)に対してのCDEも作成されます。別名に対応して作成されたCDEは副CDE(Minor CDE)、本名に対して作成されたCDEは主CDE(Major CDE)と呼ばれます。CDEにはモジュール名、入口点アドレス、モジュールの使用回数、属性情報(再入可能や再使用可能、アドレスモードや常駐モード、APFなどの属性)、ローディングされたサブプール番号、1つ前のCDEへのポインターなどが格納されています。

LLEはタスク単位に管理されますが、CDEはジョブステップで共通して管理されます。アドレス空間内でタスクが最後に呼び出したあるいはロードしたモジュールのCDEは、ジョブステップ・タスクのTCBのTCBJPQフィールドからポイントされます。ジョブステップ内のプログラムがローディングしたロードモジュールは、ジョブ・パック・エリア(JPA)と呼ばれるリージョン内のPVT域(サブプール251または252)に格納されます。JPA内のロードモジュールはCDEによって管理され、個々のCDEの次のCDEをポイントすることでJPQ(Job Pack Queue)と呼ばれる一連のCDEチェインを作ります。
なおCDEはJPQだけでなく、実行中プログラムを管理するRBやLLEからもポイントされています。ダンプリストにはタスク毎にCDEが編集されて表示されますが、これはJPQのCDEリストではなくRBやLLEからのチェインによってリストアップされたタスク内のプログラムによってローディングされたモジュールに関するCDEです。


XTLST

XTLST(Extent List)は、CDEが管理するロードモジュールの実体データを示すコントロール・ブロックです。つまりローディングされたロードモジュールのJPA内のアドレスと長さを示します。XTLSTはIHAXTLSTマクロによってマッピングできます。
※入口点アドレスはCDEだが、モジュールの先頭アドレスはXTLSTにある。

LLE
       009CE800  CHN...... 009CEC38  CDPT..... 009CEC18  COUNT.... 0001      SYSCT.... 0001
                 :
       009EC178  CHN...... 009EC1D8  CDPT..... 009EC198  COUNT.... 0001      SYSCT.... 0000
       009EC1D8  CHN...... 009EC218  CDPT..... 009EC1F8  COUNT.... 0001      SYSCT.... 0000
       009EC218  CHN...... 009FD168  CDPT..... 009EC228  COUNT.... 0001      SYSCT.... 0000
       009FD168  CHN...... 00000000  CDPT..... 009EC9B8  COUNT.... 0001      SYSCT.... 0000
CDE
009FFAB8  NAME..... TEMPNAM0  ENTPT.... 80007D68  CHAIN.... 009EC158  RRBP..... 009CEC68  XLMJP.... 009EC600
          USE...... 0002      SP....... FB
          USED. JOB PACK AREA.
          LOADING TASK NOT SECURE. CDE EXTENSION EXISTS.
                 :
                 :
009EC198  NAME..... MWTR      ENTPT.... 0000FC38  CHAIN.... 009EC1F8  RRBP..... 00000000  XLMJP.... 009EC1B8
          USE...... 0000      SP....... 00
          REENTERABLE. REUSABLE. MINOR ENTRY POINT.
          EXTENTS NOT KNOWN.
          LOADING TASK NOT SECURE. CDE EXTENSION EXISTS.
009EC1B8  NAME..... GCP       ENTPT.... 0000BFE8  CHAIN.... 009EC198  RRBP..... 00000000  XLMJP.... 009EC188
          USE...... 0001      SP....... FB
          REENTERABLE. REUSABLE. JOB PACK AREA.
          LOADING TASK NOT SECURE. CDE EXTENSION EXISTS.
009EC1F8  NAME..... SCR15000  ENTPT.... 000088B8  CHAIN.... 009EC228  RRBP..... 00000000  XLMJP.... 009EC1E8
          USE...... 0001      SP....... FB
          JOB PACK AREA.
          LOADING TASK NOT SECURE. CDE EXTENSION EXISTS.
009EC228  NAME..... DOLSPACE  ENTPT.... 00007540  CHAIN.... 009EC9B8  RRBP..... 00000000  XLMJP.... 009EC9A8
          USE...... 0001      SP....... FB
          JOB PACK AREA.
          LOADING TASK NOT SECURE. CDE EXTENSION EXISTS.
                 :
XTLST
       009EC600  LNTH..... 00000010  NRFAC.... 00000001  SEGLN.... 80000298  SEGAD.... 00007D68
       009CEC08  LNTH..... 00000010  NRFAC.... 00000001  SEGLN.... 80000088  SEGAD.... 07500F78
                 :
       009EC9A8  LNTH..... 00000010  NRFAC.... 00000001  SEGLN.... 800003F8  SEGAD.... 00007540
       009ECE80  LNTH..... 00000010  NRFAC.... 00000001  SEGLN.... 80000430  SEGAD.... 00007938
Posted in ダンプ解析入門 • • Top Of Page