Relationship between the data space and its owner

Your program can create a data space, but it cannot own the data space. If the unit of work that represents the program is a TCB, that TCB is the owner of the data space, unless the program assigns ownership to another TCB. If the unit of work is an SRB, the program must assign ownership to a TCB. Because of this assignment of ownership, the owner of the data space and the creator of the data space are not always the same TCB.

The data space virtual area is available to programs that run under the TCB that owns the data space and is available, in some cases, to other programs.

When a TCB terminates, the system deletes any data spaces that the TCB owns. The system swaps a data space in and out as it swaps in and out the address space that dispatched the owning TCB. Thus, data spaces shared by programs that run in other address spaces must be owned by TCBs in non-swappable address spaces.

A data space can remain active even after the creating TCB terminates. When the program creates a data space, it can assign ownership of the data space to a TCB that will outlast the creating TCB. In this case, the termination of the creating TCB does not affect the data space.

Because access lists and data spaces belong to units of work, keep in mind the relationship between the program and the unit of work under which it runs. For simplicity, however, this chapter describes access lists and data spaces as if they belong to programs. For example, "a program's DU-AL" means "the DU-AL that belongs to the TCB under which a program is running".

  • 0 Users Found This Useful
Was this answer helpful?

Related Articles

Rules for creating, deleting, and managing data spaces

The SCOPE parameter determines what kind of data space a program creates. The three kinds of data...

Using data spaces efficiently

Although a task can own many data spaces, it is important that it reference these data spaces...

Releasing data space storage

Your program needs to release storage when it used a data space for one purpose and wants to...

Deleting a data space

When a program does not need the data space any more, it should free the virtual storage and...

Dumping storage in a data space

On the SNAPX macro, use the DSPSTOR parameter to dump storage from any addressable data space...