Creating address spaces
This section is for the programmer who wants to create an address
space. Perhaps the address space is for a subsystem that has outgrown
the
address space it shared with other programs; perhaps it will be for
a set of programs that provide a service for programs in other address
spaces. Perhaps the subsystem or the programs need to have more control
over their environment.
One way for a program to create an address space, without involving an MVS™ operator, is by issuing a START command through the MGCR macro. The program must have a procedure in SYS1.PROCLIB, representing the first program that will execute in the created address space. The program can assign the dispatching priority for the programs that will run in the created address space. The initialization can include cross memory macros that establish a cross memory environment for the created address space.
An
easier way to accomplish the same objectives is to issue the ASCRE
macro. The ASCRE macro creates a address space that can start
after the system is initialized and receive the services of all MVS components. It can set up cross
memory linkages so that programs in the created address space can
call programs in the creating program's address space. It can set
a dispatching priority for the programs that run in the created address
space and can specify that the address space exist after the task
that represents the creating program terminates. (For simplicity,
in this section the term creating program
refers to the address
space of the program that is issuing the ASCRE macro. The term new
address space
refers to the address space that the ASCRE macro
creates.)
The system considers the new address space to be a system address space, and it will show up as such when the operator issues a DISPLAY A command, unless ATTR=JOBSPACE is specified on the ASCRES macro. Program properties table (PPT) values determine the attributes of the programs that execute in the new address space.
- The ASDES macro terminates an address space that was created through the ASCRE macro.
- The ASEXT macro retrieves parameters that the creating program passes to a program in the new address space.