I'm ignorant of this. But did a search in IBMLink.

It appears that there are "shared libraries" in z/OS UNIX which are
loaded somewhere? (not documented where). The size of this area is
specified in the SHRLIBRGNSIZE parameter. The load modules loaded into
this area are .so UNIX "dynamic subroutines" which are marked as
shareable in the filesystem via the "+l" extattr attribute. This area is
them mapped into every UNIX address space into "high private". I would
guess this would eventually involve IARVSERV.
http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/IEA2A9B0/5.0
and
http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/IEA2A6A1/20.0?SHELF=IEA2BKB2&DT=20101208204043

The larger the area, the more high private is lost in every UNIX address
space which attempts to load a shared library. And the more ECSA is used
for mapping tables.

It appears that if it is too small, it is not used at all and each
shared library is loaded into the user's address space as if it were not
shared. This increases I/O. 

So I guess "shared library" region size is like an LLA for UNIX shared
libraries. But I don't read of any way for "obsolete" modules to be
purged and their storage reclaimed. And there doesn't appear to be any
way to actually determine what is loaded. I would guess into some
address space or data space controlled by the UNIX kernel.

You could find all the possibilities by searching all of your mounted
filesystems for files with the extended attribute of "l" specified.

find / -ext l >~/list.of.shared.library.files

The above will likely run a fair amount of time. I'd do it in batch.

In:
https://www-304.ibm.com/ibmlink/sis/viewAparDoc.wss?context=aparAndUsage&documentIds=OA18803&searchWords=SHRLIBRGNSIZE&libraryType=D&lc=en&cc=US
<quote>
For a BPX1LOD (loadhfs) syscall request, when the module
  cannot be loaded as a user-shared library program, it should be
  loaded into user private storage as non-shared.  This is not
  happening, and the loadhfs() syscall is failing with
  rsn091E03B7 JRShrStgShortage due to MAXSHAREPAGES being
  exceeded.
</quote>

https://www-304.ibm.com/ibmlink/sis/viewAparDoc.wss?context=aparAndUsage&documentIds=OA04183&searchWords=SHRLIBRGNSIZE&libraryType=D&lc=en&cc=US

<quote>
Change current statement as follows:
    The storage used in the user address space to establish the
    mapping to the shared library region is from the high end of
    private storage;
  | in most cases,
    it does not interfere with the virtual storage
    used by the application program.
 
  Add the following paragraph:
 
  The amount of storage that is carved out of the high end of
  private storage of each address space that loads a system
  shared library object is based on the SHRLIBRGNSIZE parmlib
  parameter value.  If this value is set too high, the storage
  set aside for the shared library region mapping could
  interfere with the private storage requirements of each of
  these address spaces.  For this reason, the value specified
  for SHRLIBRGNSIZE should be the minimum size required to
  contain all of the system shared library programs that are
  to be used on the system.
</quote>

https://www-304.ibm.com/ibmlink/sis/viewEskbDoc.wss?context=aparAndUsage&documentIds=swg21178068&searchWords=SHRLIBRGNSIZE&libraryType=E&lc=en&cc=US
<quote>
Problem(Abstract)
What are the consequences (for example, are there abends) of specifying
a SHRLIBRGNSIZE that is not large enough for all the
shared-library-eligible (that is, have the "l" extended attribute set)
programs that are accessed? 
 
Resolving the problem
If the shared library cache is not big enough, then z/OS will revert to
normal storage use and the load module will be loaded into the broker
address space.
</quote>



On Sat, 2011-10-29 at 23:46 -0400, Lizette Koehler wrote:
> SHRLIBRGNSIZE
-- 
John McKown
Maranatha! <><

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to