I'm sure others know much more about this than I but I suspect that the length returned by DESERV is the total number of bytes that the program occupies on disk including entry point name tables and so forth, whereas the length returned by LOAD is only the bytes of memory actually occupied by the program as loaded into storage. I suspect the LOAD size could even be greater than the DESERV size because uninitialized, defined storage ("a big DS") takes up no room on disk (at least in a traditional PDS load module) but of course occupies memory when loaded.
Using LOAD to bring a non-executable table - or an executable program that is treated like data by the LOADing program - is an established MVS (etc.) technique. You should be able to accomplish what you are trying to do. I just saw some "fast access to program object data" API documented in the link editor (sorry, DFSMS program management) manual. I'm too pressed for time to look it up right now. Will it help? BTW, VSE uses or used a "core image" (quaint term) library for programs. What was on disk was exactly byte-for-byte what got loaded into memory. Charles -----Original Message----- From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf Of Miklos Szigetvari Sent: Wednesday, September 28, 2005 9:46 AM To: IBM-MAIN@BAMA.UA.EDU Subject: Loading a program Hi Try to load a program via LOAD macro to find some text constants in the load module (i.e. the compile time text for every object) For my surprise the load length from reg1 is not the same as module length for program objects. (With DESERV I can find out the module lengh) I don't know if I can use this method (LOAD and search) to find out this text constants. ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html