That's what I've been wondering. If, as in 99.99% of the cases, a REFR module does *not* modify itself, then ASM/RSM will know that when it matters, and will *not* page it out (after the first time). Logically, it would seem REFR would imply that OK, I know I've diddled myself, but it's OK, no need to page me out. And that is nonsense.
z/OS (and ancestors) already decided RENT means a module can be loaded into non-modifiable storage, so what is the point of REFR anyway? They should have made the (or an) attribute NMOD, so there wouldn't be any need for endless discussion of what reentrant and refreshable really mean, practically and technically. And yes, technically, both can be implemented in a self-modifying program, given certain constraints. But practically, RENT or REFR modules at least some times are prevented from being modified. And technically, a non-self-modifying program can be made non-reentrant... I've seen it happen by accident. A "clever" programmer used a common global area for a few non-global variables, leading to the all-too-predictable unpredictable results when you screw up multi-tasking. sas On Mon, Feb 8, 2021 at 4:32 PM Binyamin Dissen <bdis...@dissensoftware.com> wrote: > ... > In other words, does REFR mean anything to the OS other than the > possibility > of loading the module into page protected storage? > > ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN