QSABLOK – Defining a Storage Request
Purpose
The QSABLOK macro defines the characteristics of the storage that your exit routine requires.
Parameters
- label
- is any valid assembler statement label.
- LENGTH=n
- specifies the length of the required piece of storage. If the LENGTH value is greater than the INIT value, the amount of storage specified by the INIT value is initialized as requested. The remaining LENGTH value is then initialized to zeros.
- ,INIT=value
- specifies the number of bytes of storage to be initialized. The value can be specified as a number or as an equate symbol of a data area from which you want to initialize storage. If specifying an equate, the associated data area must follow the QSABLOK invocation. If you specify 0, the storage area is initialized to zeros.
- ,OPT4K=
- specifies whether RSCS should acquire a page of storage.
- NO
- RSCS acquires only the amount of storage specified on the LENGTH parameter. This is the default.
- YES
- RSCS acquires a page of storage and subdivides it as needed.
- ,EYECAT=eyecatcher
- specifies a value that identifies the macro invocation within storage.
- ,PERSIST=
- specifies the type of GCS subpool from which the storage should be acquired.
- YES
- The storage is acquired from a persistent subpool. This is the default.
- NO
- The storage is acquired from a nonpersistent subpool. This storage will be acquired from subpool 0. It will automatically be released when the task that initially acquired the storage terminates.
- ,GETMAIN=
- specifies the type of GETMAIN macro to be issued to acquire the storage.
- RCTYPE
- The storage is acquired by a conditional GETMAIN request. If the storage cannot be acquired, the exit routine will receive a return code. This is the default.
- RTYPE
- The storage is acquired by an unconditional GETMAIN request. If the request fails, the calling task will abend.
- ,LOC=
- specifies the location of the requested block of storage.
- ANY
- The requested storage can be located anywhere. This is the default.
- BELow
- The requested storage is to be allocated entirely below 16 MB.
- RES
- The location of the virtual storage requested is to be allocated based on the location of the requesting routine. If the requesting routine resides below 16 MB, the virtual storage will be allocated below 16 MB. If the requesting routine resides above 16 MB, virtual storage may be located anywhere.
