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
            
            




















































































































































































































































































