Creating a hiperspace
To create a hiperspace, issue the DSPSERV CREATE macro with the TYPE=HIPERSPACE parameter. MVS™ gives you contiguous 31-bit virtual storage of the size you specify and initializes the storage to hexadecimal zeroes. The entire hiperspace has the storage key that you request, or, by default, the key that matches your own PSW key. Use the HSTYPE parameter to specify whether the hiperspace is to be standard or ESO. If standard, you can use the SHARE parameter to request either a non-shared standard (SHARE=NO, the default) or a shared standard (SHARE=YES) hiperspace. If you omit both HSTYPE and SHARE, you create a non-shared standard hiperspace.
On the DSPSERV macro, you are required to specify:
- The name of the hiperspace (NAME parameter). To ask DSPSERV to generate a hiperspace name unique to the address space, use the GENNAME parameter. DSPSERV will return the name it generates at the location you specify on the OUTNAME parameter. See Choosing the name of the hiperspace.
- A location where DSPSERV is to return the STOKEN of the hiperspace (STOKEN parameter). DSPSERV CREATE returns a STOKEN that you can use to identify the hiperspace to other DSPSERV services and to the HSPSERV and DIV macros.
Other information you might specify on the DSPSERV macro is:
- The maximum size of the hiperspace and its initial size (BLOCKS parameter). If you do not code BLOCKS, the hiperspace size is determined by defaults set by your installation. In this case, use the NUMBLKS parameter to tell the system where to return the size of the hiperspace. See Specifying the size of the hiperspace.
- A location where DSPSERV can return the address (either 0 or 4096) of the first available block of the hiperspace (ORIGIN parameter). See Identifying the origin of the hiperspace.
- A request that the hiperspace not be fetch-protected (FPROT parameter). See Protecting hiperspace storage.
- A request that the hiperspace be shared standard (SHARE parameter). See Creating a non-shared or shared standard Hiperspace.
- The storage key of the hiperspace (KEY parameter). Use CALLERKEY to specify that the storage key of the hiperspace is to match your PSW key (or take the default for the KEY parameter). See Protecting hiperspace storage.
- The TTOKEN of the TCB to which you assign ownership of the hiperspace (TTOKEN parameter). See How SRBs use hiperspaces.
- A request that the system persist in trying to keep the data in an ESO hiperspace (CASTOUT=NO). See Creating an expanded storage only Hiperspace.