MVSFORUMS.com Forum Index MVSFORUMS.com
A Community of and for MVS Professionals
 
 FAQFAQ   SearchSearch   Quick Manuals   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Load modul, check

 
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> Application Programming
View previous topic :: View next topic  
Author Message
bauer
Intermediate


Joined: 10 Oct 2003
Posts: 315
Topics: 49
Location: Germany

PostPosted: Fri Nov 26, 2004 4:05 am    Post subject: Load modul, check Reply with quote

Hi,

I like to create the "function tree" of an load modul. This means: Create an tree with all subroutines and the depended subroutines.

At the moment I use ABMLIST to list all csects and a idividual program to read the output of AMBLIST and build the tree.

A new requirement is now, to find out the DB2 Package Version timestamp for each CSECT (only CSECTs with DB2 Precompile of course). This timestamp is of course not listed by AMBLIST. The DB2 Precompile Timestamp can be found in the CSECT.

The idea now is, to do analyse the load without AMBLIST, this mean reading the load block by block using PL1 program, getting the DB2 precompilestamp and the CSECT names.

But to do this job, a documenation is necessary for the internal format of an load modul.

Questions:

1) Any better ideas how to print out the complete function tree of an load with DB2 Package Precompile timestamp ?
2) Documenation for internal load modul format ?


regards,
bauer
Back to top
View user's profile Send private message
sriramla
Beginner


Joined: 22 Feb 2003
Posts: 74
Topics: 1

PostPosted: Fri Nov 26, 2004 2:42 pm    Post subject: Reply with quote

As you build your "tree" using load modules, have you considered the impact of dymanic calls where called program will not reside in calling modules's load? This means, your tree might not be complete.

As for matching timestamps, I recently did something like this:
1. Read the load module using FILE-AID
2. Get the timestamp from DB2 system tables (SYSIBM.SYSPACKDEP)
3. Compare the results using SORT and write out mismatches in a separate file for manual actions.

Following is the JCL step that reads the load module and produces a report that includes all load module information including time stamp.

//* Get load module information including timestamp
//FILEAID1 EXEC PGM=FILEAID
//SYSPRINT DD SYSOUT=A
//SYSLIST DD DSN=&DSN1,
// DISP=(NEW,CATLG,CATLG),SPACE=(TRK,(600,600),RLSE),RETPD=10
//DD01 DD DSN=&LOADLIB1,DISP=SHR
//SYSIN DD *
$$DD01 LMODMAPN MEMBERS=*
Back to top
View user's profile Send private message
bauer
Intermediate


Joined: 10 Oct 2003
Posts: 315
Topics: 49
Location: Germany

PostPosted: Sat Nov 27, 2004 11:53 am    Post subject: Reply with quote

Hi sriramla,

thank you for your answer.

Dynamic calls are no problem, not used very often in our environment.

regards,
bauer
Back to top
View user's profile Send private message
Neostar
Beginner


Joined: 29 Nov 2004
Posts: 4
Topics: 1

PostPosted: Mon Nov 29, 2004 3:30 pm    Post subject: Reply with quote

Sriramla

By submitting the JCL provided by you - Am I suppose to get tree structure for both calls - Dynamic and Static.

Not sure - Looks like I am not getting for Dynamic calls.

Pl let me know.

Best Regards
NeoStar
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> Application Programming All times are GMT - 5 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


MVSFORUMS
Powered by phpBB © 2001, 2005 phpBB Group