Using hiperspace operations

Restriction: Hiperspace™ memory files are not supported in AMODE 64 applications. Attempts to open a memory file with type=memory(hiperspace) will be converted to a regular memory file.

On z/OS systems, large memory files can be placed in hiperspaces to reduce memory requirements within your address space.

If your installation supports hiperspaces, and you are not using CICS, you can use hiperspace memory files (see the appropriate information as listed in z/OS Information Roadmap for more information on hiperspaces). Whereas a regular memory file stores all the file data in your address space, a hiperspace memory file uses one buffer in your address space, and keeps the rest of the data in the hiperspace. Therefore, a hiperspace memory file requires only a certain amount of storage in your address space, regardless of how large the file is. If you use setvbuf(), z/OS® XL C/C++ may or may not accept your buffer for its internal use. For a hiperspace memory file, if the size of the buffer specified to setvbuf() is greater than 4K, then only the first 4K of the user buffer will be used.

Hiperspace memory files may not be shared by multiple threads. A hiperspace memory file that is created on one thread can only be read/written/closed by the same thread.