It is possible to write a module that is refreshable but not read only. 
However, it will fail once you turn on REFRPROT, and is bad form even if you 
don't.


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3

________________________________________
From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
Michael Stein [m...@zlvfc.com]
Sent: Saturday, February 6, 2021 1:09 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: load module search order and attributes

On Fri, Feb 05, 2021 at 03:53:17PM -0500, Joseph Reichman wrote:
> I opened a dcb load library with the same load mod name as the first
> Did an attach DCB= TASKLIB=
>
> Didn’t pick it up from there as the module from the first load lib
> with same name was linked REUS

It helps to know where to look things up:

 ** module reusability

 z/OS Version 2 Release 3
 MVS Program Management: User's Guide and Reference
 SA23-1393-30
 ieab100_v2r3.pdf

see pdf page 48, page 28

 nonreusable:
    single use only, need a new copy if used (or in use)

 serially reusable:
    only a single use at a time, later requestors need to wait for use
    to complete {ATTACH/LINK/XCTL/SVC 3-exit keep track of module
    in use status, note that when using LOAD/CALL/DELETE the system
    doesn't t known when you call or return from the  module}

    {In the case of the system keeping track of the module use, it
     may delay start of an execution until the current use is complete}

 reenterable (reentrant):
    concurent execution by multiple tasks.  If modifies it's own
    data areas it must do it's own serialization.

 refreshable:
    all or part of the module can be replaced at any time without notice
    by the operating system.  *therefore* must not modify itself in
    any way.

  {** beware **
    some module attributes and authority levels force modules to
    beloaded into different key storage and/or protected storage.
    This may affect fetch access too}

 Linkage editor processing of attributes:
    refer rent reus are all treated as separate attributes

 Binder
    only a single attribute and implies/overrides lower attributes
    refer > rent > reus > none  {guess, doesn't explicitly say}

** module search order

 z/OS Version 2 Release 3
 MVS Programming: Assembler Services Guide
 SA23-1368-30
 ieaa600_v2r3.pdf

see pdf page 69, page 43

The search for a load module:

  - requesting tasks' load list
  - job pack area
  - requesting task's task library (and up parent tree of tasklibs)
  - steplib
  - link pack area
  - link library

  {I think of joblib/steplib as a tasklib set by the attacher of the
  job step task...}

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