If you do a STORAGE OBTAIN and build a data structure, or tables, arrays or whatever, is that storage effectively NOREUS, REUS or RENT?

Now, if you specify IDENTIFY (if I remember this correctly) you now make your area available to any program that can do a LOAD for the name you used. Now what is that storage area? It pretty much has to be RENT or REUS as there will be 1 physical copy in storage and the use count will be changed accordingly. But you and all users must know that you must do serialized access if any updates are being done in that storage after initialization and that IDENTIFY makes it available....

For that storage to otherwise be available, you have to put an anchor where it is at a known location for other users in your address space to get to it. And all users must know how to serialize if the storage is not static.

LOAD of a LOADABLE table with that "module" NOREUS means that this is a GETMAIN/Storage OBTAIN with the area predefined and handled by the linking loader. The next users that does a LOAD will get a new un-modified copy.

To cut to the chase, each caller of the ALC logic program (which is RENT) has to pass an area that is for scratch-pad purposes. So that the LOAD (in this case) becomes specific to that caller. The tables inside the LOAD module get modified... And it can't be serialized because of the design. So it must be NOREUS.

Why is this a table that is assembled and loaded? Because of all the ADcons in this module that are much better handled at assembly time and finished by the LOAD logic at load time as opposed to a STORAGE OBTAIN and then all the code to build all of that to then start processing the the tabled info...

To answer your next post, I use PUNCH statements to handle things like this, so that someone trying to enforce standards that can not apply to a loadable table do not screw this thing into the ground. What happens when you specify a LINKEDIT command that contains a syntax error?

Regards,
Steve Thompson


On 08/19/2016 10:09 AM, Charles Mills wrote:
Not the answer to the question you asked but why NOREUS? How does that help?

Charles
-----Original Message-----
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf 
Of Steve Thompson
Sent: Friday, August 19, 2016 9:41 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: How Does One Make a Module NOEXECute?

I am working on a problem where I have a loadable table. So far I have 
specified NOREUS, OL (Load Only).

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to