2. The STRINIT macro instruction releases
any previousGETMAIN requests.
all storage allocated by
3.Almost all coamands issue a STRINIT macro instruction. Thus,
executing almost anyCMS command will cause all GETMAIN storage to
be released.
Storage allocated by theDMSPREE macro instruction may be released in.
any of the following ways:
1. A specific block of such storaqemay be released by means of thp. DMSPRET macro instruction. - 2. Whenever any user routine or CMS command abnormally terminates (so
that the routineDMSABN is entered) and the abend recovery
facility of the system is invoked, allDMSPREE storage with TYPE=USER is released automatically. LAcepl the case of abena recovery, storage allocated by the DMSPREE macro is never released automatically by the system. ·Thus, storage allocated by means of this macro instruction should always be
released explicitlyby means of the DMSPRET macro instruction. DMSPREE SERVICE ROUTINES The DMSPRES macro instruction is used by the system to request certain
free storagemanagement services.
Theformat of the DKSPRES macro is:
r-------------------------------------------------------------------------------,
[label]DMSPRES INlT1
INIT2
CHECKCKON CKOFP UREC CALOC r r" I I IBALRII -t. t. I I I I I I I _____________________________________________________________________________ J
labelIIIT1 is any valid Assembler language label.
invokes the first free storage initialization routine, so
that free storage requests can be made to access thesystem disk. Before INIT1 is invoked, no free storage
requestsmay be made. After lNlT1 has been invoked, free
storage requestsmay be made, but these are subject to
the following restraints until the second free storage
management initialization routine has been invoked:• All requests for USER type storage are changed to
requests forNUCLEUS type storage. • Error checking is limited before initialization is
complete. In particular, it is sometimes possible to
release a block that vas never allocated.
2-22IBM VM/370 System Logic and program Determination--Volume 2
any previous
all storage allocated by
3.
executing almost any
be released.
Storage allocated by the
any of the following ways:
1. A specific block of such storaqe
that the routine
facility of the system is invoked, all
released explicitly
free storage
The
r-------------------------------------------------------------------------------,
[label]
INIT2
CHECK
label
invokes the first free storage initialization routine, so
that free storage requests can be made to access the
requests
storage requests
the following restraints until the second free storage
management initialization routine has been invoked:
requests for
complete. In particular, it is sometimes possible to
release a block that vas never allocated.
2-22