GERELS - deallocate resources or change disposition code.

Usage:

mme     gerels
zero    N,CODE
bci     1,FCSTRING1
bci     1,FCSTRING2
      ...
bci     1,FCSTRINGN

Where:

N
is the number of file codes to which MME GERELS will be applied.
CODE
indicates the operation that should be performed. The following CODE values are used:
0
deallocates peripherals.
1
changes disposition codes. (Actually, any non-zero value will work for this CODE.)
FCSTRING1,...,FCSTRINGN
are one or more BCD strings. Each is one word long. The last two BCD characters of each string give a file code to which the MME GERELS will be applied. The other BCD characters can specify additional information for the operation (as described below).

Description:

MME GERELS deallocates all of the peripherals in a list, or else changes the disposition codes on all the file codes in a list. For general information on disposition codes, see "expl batch guide". Recognized disposition codes are:

R
release file at end of job activity. With tapes, the tape is rewound with Rewind, dismount instructions are NOT issued to the operator, and the tape is released for reassignment. If more than one file is assigned to a device or storage space, the resource is deallocated only when the last remaining file is released.
S
save file for later job activity. No action is taken; the file is not rewound or released.
P
purge and release file at end of activity.
D
dismount (tape and disk packs only). With tapes, the tape is rewound with Rewind and Standby, dismount instructions are issued to the operator, and the tape unit is released for reassignment. With non-structured disk packs, a Dismount message is ussed to the console and the unit is designated non-assignable; when the pack has been removed, an operator ASGN request is required to return the spindle to service. With all other devices, D is treated as R.
C
write-inhibit and save (tape and disk packs only). With tapes, a Set File Protect (SFP) command is issued for the file, or a protect message is output. With all other devices, C is treated as S.

When MME GERELS is used to deallocate peripherals and/or release cataloged files, the format of the call is

mme     gerels
zero    N,0
bci     1,0000F1
bci     1,0000F2
      ...
bci     1,0000FN
where F1, ..., FN are the appropriate file codes. Cataloged and non-cataloged files may be intermixed in the file code list, if desired.

A similar call lets you use MME GERELS to release the last N links of a temporary mass storage file. The format is

mme     gerels
zero    1,0
vfd     18/N,6/0,h12/FC
where N is the number of links to be released and FC is the appropriate file code. Note that if N is 0, the entire file will be released (since the call then has the format of the usual "release" call).

When MME GERELS is used to change a file's access mode, the format of the call is

mme     gerels
zero    1,1
bci     1,00XmFC
where FC is the appropriate file code and X is the letter "R" (to change the mode to random) or any other character (to change the mode to sequential). For example,
mme     gerels
zero    1,1
bci     1,00smxx
changes the mode of file code "xx" to "sequential". Before a file's access mode can be changed, the file must be rewound to its logical beginning to ensure that the first descriptor is in memory. If it is not rewound, the job may be aborted.

When MME GERELS is used to change disposition codes, the format of the call is

mme     gerels
zero    N,1
bci     1,A00BFC
     ...
where
A
indicates the new disposition code to be used if the program aborts. This can be R, S, C, D, P, or L (for Leave). The Leave disposition disables any purge on the file and leaves the data "as is" upon release. This character can also be 0 (zero), in which case the abort disposition code is not changed.
B
indicates the new disposition code to be used on normal termination. This can be R, S, C, D, P, or L. It can also be 0 (zero).
FC
is the file code whose disposition is to be changed.
As an example, the call
mme     gerels
zero    2,1
bci     1,r000xx
bci     1,000syy
gives file code "xx" the abort disposition code R, and gives file code "yy" the normal disposition code S.

Notes:

If a file disposition is changed to S or C, the system checks to see if the file code has an existing LUD. If it does not, the file code becomes the LUD. In this case, the second character of the original file code must be numeric or '*'; it cannot be alphabetic.

If either the normal or abort disposition of a file is set to P, the file will be purged when it is released even if the release occurs in a later job activity. Files can only be purged if the job has write permission. With cataloged files, the user must also be the creator of the file. If there is no activity on a file during a job, it will not be purged.

When possible, hardware write-protected files should be dismounted instead of purged.

Before issuing a MME GERELS to release any journal-protected file (i.e., with RDERR/JOURNAL/, ABORT/ROLLBACK/, ABORT/ARCHIVE/, ACCESS/MONITOR/), the job must establish a commitment via MME GECHEK or MME GEFSYE (function code 41). If this is not done, the job may be aborted.

If a file with S disposition is the object of a MME GERELS in the last activity of a job, the file is saved until the end of the activity, then released.

MME GERELS may not be used during a courtesy call.

When MME GERELS is used to delete files, .MRELS obtains space from the automatic data stack for use as FMS buffer space during file deallocation. If the pointer is valid, a queue is obtained and a type 6 call is made to the De-Access File System module. A roadblock is used and the dump bit is masked during FMS activity. The FMS return message may be located by a DCW in word 37 (octal) of the automatic data stack buffer obtained above. Bits 0-17 contain the location, and bits 18-35 contain the length.

Copyright © 2000, Thinkage Ltd.