The favicon is a .txt file containing a copy of IBM's definitions of
REUS, RENT, REFR - and of what they mean and do, from the OS/390 V2R7 CD
collection. 
 
As we say in French (about REUS, RENT, REFR): "on a changé tout ça". ;-)
 
I reattach it. Click on it, if it is not displayed automatically.
 
Cheers, Chris poncelet (retired etc.)
 

 


On 27/08/2021 01:29, Paul Gilmartin wrote:
> On Fri, 27 Aug 2021 01:05:18 +0100, CM Poncelet wrote:
>
>> According to my OS/390 Collection March 1999 Version 2 Release 7.0:
>>
>> RENT: MVS *protects your module's virtual storage so that your module
>> cannot be modified* - and REFR implies RENT.
>>  
> Feels like a doc error.  Submit an RCF.
>
> Which book?  What does z/OS v2r4 say?
>
>> See attached.
>>  
> Damn, that favicon is small.  Can't even tell what it's supposed to be.
>
> -- gil
>
> ----------------------------------------------------------------------
> 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
From my OS/390 Collection March 1999 Version 2 Release 7.0 (CD 1 of 9) 
 
7.3.30 REUS:  Reusability Options
 
The REUS option allows you to specify how a program may be reused. (Reusability 
means that the same copy of a program module can be used by more than one task 
either concurrently or one after another.)
 
Note that the value of the REUS option always overrides the reusability of any 
included load modules or program objects.
 
The syntax of the REUS option is as follows:
 
+------------------------------------------------------------------------+
¦                                                                        ¦
¦ REUS={NONE|SERIAL|RENT|REFR}                                           ¦
¦                                                                        ¦
+------------------------------------------------------------------------+
 
The reusability values are:
 
NONE
    The module cannot be reused.  A new copy must be brought into virtual 
storage for each use.  NONE is the default value.
 
SERIAL
    The module is serially reusable.  It can only be executed by one task at a 
time;  when one task has finished executing it another task may begin.  A 
serially reusable module may modify its own code, but when it is re-executed it 
must initialize itself or restore any instructions or data that have been 
altered.
 
RENT
    The module is reenterable.  It can be executed by more than one task at a 
time.  A task may begin executing it before a previous task has completed 
execution.  A reenterable module cannot modify its own code. (MVS *protects 
your module's virtual storage so that your module cannot be modified*.)
 
    Reenterable modules are also serially reusable.
 
REFR
    The module is refreshable.  *It can be replaced by a new copy during 
execution without changing the sequence or results of processing.  A 
refreshable module cannot be modified during execution*.
 
    A module can only be refreshable if all the control sections within it are 
refreshable.  The refreshable attribute is negated if any input modules are not 
refreshable.  *Refreshable modules are also reenterable and serially reusable*.
 
    The refreshable attribute can be specified for any non-modifiable module.
 
 
Alternatively, you can code a REUS option as a single keyword without a value 
(REUS, NOREUS, RENT, NORENT, REFR, NOREFR).  For example:
 
--------------------------------------------------------------------------
 
//LKED  EXEC PGM=IEWBLINK,PARM='RENT,...'
 
--------------------------------------------------------------------------
 
This alternative form is supported only for backward compatibility.  The most 
restrictive positive specification is used to set the reusability attribute.  
For example, specifying REFR has the same effect as specifying REUS (REFR) and 
the module is marked as refreshable, reenterable, and (serially) reusable.
 
If the PARM string contains both formats, the REUS(value) instance will 
override any reusability options specified without values.
 
The binder only stores the attribute in the directory entry.  It does not check 
whether the module is actually reenterable or serially reusable.  If the module 
is incorrectly marked as reenterable or reusable, execution results are 
unpredictable; for example, a protection exception might occur or the program 
might use another task's data.

----------------------------------------------------------------------
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