GEMORE - request additional peripherals or memory.

Usage:

mme     gemore
zero    CODE,ARG
tra     FAIL_RTN

Where:

CODE
indicates whether you want additional memory or peripherals. Possible values of CODE are:
0
request for additional memory.
1
request for additional 7-track tape.
2
request for additional file space.
3
request for additional 9-track tape.
4
request catalogued file; access mode is same as that in which file was created.
5
request catalogued file; access mode is random.
6
request cataloged file; access mode is sequential.
7
chain to next "" file.
ARG
is an argument. The nature of the argument depends on CODE.
FAIL_RTN
is a routine that should be invoked when the MME GEMORE request is denied. If the MME GEMORE is successful, it will return to the instruction following "tra FAIL_RTN".

Description:

MME GEMORE is used to request additional resources of one kind or another. It may not be used in a courtesy call.

Arguments for the call are specified in the Q register and in the ARG value. Different CODEs require different kinds of arguments.

Below we list the conditions under which MME GEMORE requests are denied. In all these cases, MME GEMORE will return to the "tra FAIL_RTN" instruction. The values of the A and Q registers will indicate the nature of the failure.

  1. The process has a dead request (.RDEAD of .SRQST), an Abort request (.RBRT of .SRQST), a critical fault processing (.TSOVF of .STATE), is in SSA Module I/O (.TLOAD of .STATE), Swapout is in Control (.TSWP of .STATE), is in courtesy call (.TINCC of .STATE), is relinquished (.TRELC of .STATE), or roadblocked (.TRDBK of .STATE).

    In all these cases, .SRQST is returned in the A register and .STATE in the Q register.

  2. The process is referenced by another process (.RFDSC of .SRQST), has SYSOUT writing (.TSYOT of .STATE), or CODE is 0 (more memory) and the process has swap request set (.RSWP of .SRQST). For all these problems, PMME will retry the operation 20 times before actually issuing the denial.

    In such cases, .SRQST is returned in the A register and .STATE in the Q register.

  3. The process is waiting for dispatch (PS.DWT of SD.PST). The A register will be zero, and the upper half of the Q register will be 1.
  4. CODE is 0 (more memory) and the requested size plus the ISR bound is greater than the slave program maximum memory size. The A register will be zero, and the upper half of the Q register will be 2.
  5. CODE is 0 (more memory) and a denial is returned from MISC,7 specifying that the POQ queue is full. PMME will retry the operation 20 times before actually issuing the denial. The A register will be zero, and the upper half of the Q register will be 3.
  6. CODE is 0 (more memory) and a denial is returned from memory allocation (POP3, POP4, or POP6). This happens if PMME will retry the operation 20 times before actually issuing the denial. The A register will be zero, and the upper half of the Q register will be 4.
MORE denies MME GEMORE without providing an FMS status, for the following reasons.
  1. No PAT space available in PAT segment. The A register will be zero, and the lower half of the Q register will be 1.
  2. Request not allowed, file is SYSOUT or REMOTE (.FSYSD of PAT pointer), last descriptor for file is not in memory, file space is permanently assigned, unpermitted access to file attempted or seek attempted to defective space (.FMLDP, .FMPMF, or .FMILP of word 2 of the PAT body).

    The A register will be zero, and the lower half of the Q register will be 4.

MOR1 will deny a MME GEMORE for additional tape devices without providing an FMS status if no tape devices are available. The A register will be zero, and the lower half of the Q register will be 2.

Copyright © 2000, Thinkage Ltd.