Block-usage States
Following is a description of the block-usage states that can be
assigned to a 4 KB block and their meanings:
- Stable state. A 4 KB block in the stable block-usage state can be referenced by the program. If z/VM® reclaims the real-storage page frame in which the block resides, z/VM preserves (pages out) the block contents.
- Unused state. A 4 KB block in the unused state should not be referenced by the program; otherwise, an addressing exception might be recognized or unpredictable results might occur. At any time the contents of a 4 KB block in the unused block-usage state can be discarded. When a block in the unused block-usage state is discarded, the block-content state of the block is set to the logically-zero state, the reference and change bits for the block are set to zeros, and the remainder of the storage key is set to unpredictable values. (For a description of the logically-zero state, see Block-content States.)
- Volatile state. A 4 KB block in the volatile
block-usage state can be referenced by the program. However, at any
time the contents of a 4 KB block in the volatile block-usage state
can be discarded. When a block in the volatile block-usage state
is discarded, the block-content state of the block is set to the logically-zero
state, the reference and change bits for the block are set to zeros,
and the remainder of the storage key is set to unpredictable values.
(For a description of the logically-zero state, see Block-content States.)
If the program references a 4 KB block that is in the volatile block-usage state and is discarded (i.e., the block is in the volatile block-usage state and the logically-zero block-content state), a block-volatility exception is recognized.
- Potentially-volatile state. A 4 KB
block in the potentially-volatile block-usage state can be referenced
by the program. Based on change indication, the block-usage state
might change to the volatile or stable state as follows:
- If the change bit for the 4 KB block is one, the block-usage state might be changed to the stable state.
- If the change bit for the 4 KB block is zero, the contents of the block might be discarded. When a block in the potentially-volatile block-usage state is discarded, the block-usage state of the block is set to the volatile state, the block-content state of the block is set to the logically-zero state, the reference and change bits for the block are set to zeros, and the remainder of the storage key is set to unpredictable values. (For a description of the logically-zero state, see Block-content States).