Control disjunctive distribution of subsystems in class 5 memory
Function
This statement is used to control the disjunctive distribution of subsystems in class 5 memory. Using this statement, it is possible to prevent unwanted overlaps in the address spaces of subsystems which could be caused by the SET-SUBSYSTEM-ATTRIBUTES statements.
Use of this statement is irrelevant for subsystems in class 3 or class 4 memory (operand MEMORY-CLASS=*SYSTEM-GLOBAL in the SET-SUBSYSTEM-ATTRIBUTES statement), and for subsystems in class 6 memory (MEMORY-CLASS=*LOCAL-UNPRIVILEGED).
Subsystems in class 6 memory are never used in parallel, and may therefore overlap in the address space; subsystems in class 3 or 4 memory never overlap.
SET-SUBSYSTEM-ATTRIBUTES will be rejected if none of the following statements has been executed beforehand:
START-SSD-CREATION
START-CATALOG-CREATION
START-CATALOG-MODIFICATION
Format
SEPARATE-ADDRESS-SPACE |
SUBSYSTEM-NAME = <structured-name 1..8> ,FROM-SUBSYSTEMS = list-poss(15): <structured-name 1..8> |
Operands
SUBSYSTEM-NAME = <structured-name 1..8>
Name of the subsystem which must not overlap with other subsystems.
The subsystem must be known to SSCM and must already be defined.
FROM-SUBSYSTEMS = list-poss(15): <structured-name 1..8>
List of a maximum of 15 subsystems, none of which may overlap with the subsystem named in the SUBSYSTEM-NAME operand.
Notes
The SEPARATE-ADDRESS-SPACE statement always creates at least two disjunctive relations, as can be seen from the following example:
//SEPARATE-ADDRESS-SPACE SUBSYSTEM-NAME=ONE,FROM-SUBSYSTEMS=(TWO,THREE)
Execution of this statement creates the following relations:
the address space of subsystem ONE is non-overlapping with the address space of subsystem TWO
the address space of subsystem ONE is non-overlapping with the address space of subsystem THREE
the address space of subsystem TWO is non-overlapping with the address space of subsystem ONE
the address space of subsystem THREE is non-overlapping with the address space of subsystem ONE