A REFR program's page can be stolen (without having to save it first) by
the RSM if it has a higher UIC than other pages. If it then hits a page
fault, the ASM reloads the missing page from the paging dataset so the
program can continue executing. AFAIK It reloads only stolen pages, not
the whole module, while it is in the middle of being executed.

Chris Poncelet (retired sysprog)



On 12/06/2017 07:44, Binyamin Dissen wrote:
> On Mon, 12 Jun 2017 00:31:28 -0400 Randy Hudson <[email protected]> wrote:
> 
> :>In article <[email protected]> you 
> write:
> :>
> :>> Point taken.  But it's not clear why the designers chose to allow a 
> program
> :>> to be both modifyable and reloadable.  This leads to dreadful 
> unpredictability:
> :>> Behavior may differ depending on whether the program has been reloaded.
> :>> OK.  Initialization code may set a flag (in each page?) that will be 
> cleared by
> :>> a reload.  Critical code paths may check (before and after) that the flag 
> remains
> :>> set and re-initialize if it's found cleared.  And the documentation should
> :>> conscientiously mention the need to do this.  Ugh!
> 
> :>The REFR attribute has existed since MVT version 19 or so.  Core storage
> :>then was really core storage... toroidal ferrite cores threaded on wires, at
> :>a cost of a dollar a bit, or more.
> 
> :>Saving a few bytes is sneered at as false economy, now.  It wasn't, then.
> 
> :>A refreshable load module might have inititalization code that needs to be
> :>run only once per time it's loaded, with that init code overwritten for
> :>scratch storage afterward.  If the module's space is needed, the whole thing
> :>gets overwritten.  Later it can be refreshed, and the initialization re-run.
> 
> :>Or, a module might contain a dynamically reorganized search table, such as a
> :>move-to-front table.  That's storage modification, and it's hard to make it
> :>re-entrant on a 360/65 with only TS as a locking mechanism.  But it can be
> :>refreshable, reloading the initial configuration each time.
> 
> That would only allow the refreshable module to be reloaded if it is started
> at the entry point. It cannot be refreshed while it is in the middle of being
> executed. 
> 
> --
> Binyamin Dissen <[email protected]>
> http://www.dissensoftware.com
> 
> Director, Dissen Software, Bar & Grill - Israel
> 
> 
> Should you use the mailblocks package and expect a response from me,
> you should preauthorize the dissensoftware.com domain.
> 
> I very rarely bother responding to challenge/response systems,
> especially those from irresponsible companies.
> 
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to [email protected] with the message: INFO IBM-MAIN
> .
> 

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to