Data-in-virtual allows you to map a large amount of data into a
virtual storage area and then deal with the portion of the data that
you need. The virtual storage provides a "window" through which
you can "view" the object and make changes, if you want. The
DIV macro manages the data object, the window, and the movement of
data between the window and the object.
You can use standard hiperspaces with data-in-virtual in two ways:
- You can map a VSAM linear data set to hiperspace virtual storage.
- You can map a non-shared hiperspace to virtual storage in an address
space.
The task that issues the DIV IDENTIFY owns the pointers and structures
associated with the ID that DIV returns. Any program can use DIV IDENTIFY.
However, the system checks the authority of programs that try to use
the other DIV services for the same ID. For problem-state programs
with PSW key 8 - F, data-in-virtual allows only the issuer of the
DIV IDENTIFY to use subsequent DIV services for the same ID. That
means, for example, that if a problem-state program with PSW key 8
issues the DIV IDENTIFY, another problem-state program with PSW key
8 cannot issue DIV MAP for the same ID.
Problem-state programs with PSW key 8 - F can use DIV MAP to:
- Map a VSAM linear data set to a window in a hiperspace, providing
the program owns the hiperspace.
- Map a non-shared hiperspace object to an address space window,
providing:
- The program owns the hiperspace,
- The program or its attaching task obtained the storage for the
window, and
- No program has ever issued ALESERV ADD for the hiperspace
The rules for using data-in-virtual and HSPSERV with the HSPALET
parameter (for additional performance) are as follows:
- Your program can use HSPSERV with the HSPALET parameter with non-shared
hiperspaces when a data-in-virtual object is mapped to a hiperspace,
providing a DIV SAVE is not in effect.
- Once any program issues ALESERV ADD for a hiperspace, that hiperspace
cannot be a data-in-virtual object.
- If a program issues ALESERV ADD for a hiperspace that is currently
a data object, the system rejects the request.
For information on the use of ALETs with hiperspaces, see Obtaining additional HSPSERV performance.