|
Programming Interface Information:
This information is NOT intended to be used as Programming Interfaces of z/VM. |
NSUBK
Control Block Contents
NSUBK DSECT
Cross Reference (Contains links to field and bit definitions)
NSUBK Prolog
NAME : HCPNSUBK
DESCRIPTION: Auxillary Storage Management utility data
DSECT : NSUBK
FUNCTION : This block will map the ASM data module HCPNSUDA.
LOCATED BY : This block is located in HCPNSUDA.
NOTES :
Data Queue Definitions
----------------------
Saved Segment SNTBK queue: The Saved Segment SNTBK queue is
a list of SNTBKs that represents each DCSS and Segment Space
that is currently loaded by at least one user. Its header
is NSUSGQAN.
Named Saved System SNTBK queue: The Named Saved System SNTBK
queue is a list of SNTBKs that represents each Named Saved
System that is IPL'd by at least one user. Its header is
NSUSYQAN.
*NSS SDF queue: The *NSS SDF queue is a list of all Saved
Segment and Named Saved System SDF files. Whenever a Saved
Segment or Named Saved System is defined a spool file is
created and put onto this queue. When the first DIAG X'64'
Load or CP IPL command is processed for the Saved Segment
or Named Saved System, the SDF file is opened, the SNTBK
description page is read into storage and put onto the
Saved Segment SNTBK or Named Saved System SNTBK queue
respectively. If the Saved Segment is a member segment then
the Segment Space SNTBK will be put onto the Saved Segment
SNTBK queue. The SDF file remains open for read as long as
at least one user has the Saved Segment loaded or the Named
Saved System IPLed. The header of the *NSS SDF queue is
located in the FILID table (reserved entry *NSS).
VMDBK/SHRBK queue: The VMDBK/SHRBK is a queue of SHRBKs
that represents a DIAG X'64' Load or CP IPL command for
the owner of the VMDBK. Each time a Saved Segment or Named
Saved System is loaded a SHRBK is added to this queue. It
is removed by a DIAG X'64' Purge request or a system reset.
The header of the VMDBK/SHRBK is VMDSHRPT.
SNTBK/SHRBK queue: The SNTBK/SHRBK is a queue of SHRBKs that
represents a DIAG X'64' Load or CP IPL command for this
Saved Segment or Named Saved System. Each time a Saved
Segment or Named Saved System is loaded a SHRBK is added to
this queue. It is removed by a DIAG X'64' Purge request or
a system reset. The header of the SNTBK/SHRBK is SNTSHRPT.
SAVESEG SNTBK queue: The SAVESEG SNTBK queue is a list of
SNTBKs that represents each Saved Segment that is currently
being saved. This queue should be referenced by any CP
function (such as Query or Purge NSS) that needs to obtain
information about a Saved Segment that is currently being
saved. The header of the SAVESEG queue is NSUSSGAN.
SAVESYS SNTBK queue: The SAVESYS SNTBK queue is a list of
SNTBKs that represents each Named Saved System that is
currently being saved. This queue should be referenced by
any CP function (such as Query or Purge NSS) that needs to
obtain information about a Named Saved System that is
currently being saved. The header of the SAVESYS queue is
NSUSSYAN.
Lock Hierarchy for Saved Segment or Named Saved System
------------------------------------------------------
Level 1 Locks: VMDBK/SHRBK queue lock (VMDSHRLK)
DEFSEG/SAVESEG exclusive command lock
(NSUDSGLK)
DEFSYS/SAVESYS symbolic command lock
(NSUDSYAN)
Level 2 Lock: *NSS SDF queue lock (NSUSDFLK)
Level 3 Lock: Named Saved System SNTBK queue lock
(NSUSYQLK)
Level 4 Lock: Saved Segment SNTBK queue lock (NSUSGQLK)
Level 5 Lock: SNTBK/SHRBK queue lock (SNTSHRLK) for one of
Member Saved Segment, DCSS, or Named Saved
System
Level 6 Lock: SNTBK/SHRBK queue lock (SNTSHRLK) for Segment
Space
Note: 1) The level 1 locks are the hightest level locks and
the level 6 locks are the lowest level locks.
2) If locks need to be obtained from different levels,
then the higher level lock needs to be obtained
first.
See the definition and description of each individual
lock for more detailed information.
Saved Segment or Named Saved System serialization matrix
--------------------------------------------------------
+-----------------+-----+-----+-----+-----+-----+
| LVL1 | LVL2| LVL3| LVL4| LVL5| LVL6|
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
| Func- | VMD | Def | Def | *NSS| NSS | Sseg| SNT | SNT |
| tion | SHR | Save| Save| SDF | Q | Q | SHR | SHR |
| | Q | seg | SYS | Q | lock| lock| Q | Q |
| | lock| cmd | cmd | lock| | | Lock| Lock|
| | | lock| lock| | | | |(SSP)|
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
|DEFSEG | | exc | | exc | | | | |
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
|SAVESEG| | exc | | exc | | | | |
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
|DIAG 64| | | | | | shr | | |
|Find-1 | | | | | | | | |
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
|DIAG 64| | | | exc | | | | |
|Find-2 | | | | | | | | |
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
|DIAG 64| exc | | | | | shr | exc | exc |
|Load-1 | | | | | | | | |
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
|DIAG 64| exc | | | exc | | exc | | |
|Load-2 | | | | | | | | |
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
|DIAG 64| exc | | | | | shr | exc | exc |
|Purge1 | | | | | | | | |
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
|DIAG 64| exc | | | exc | | exc | | |
|Purge2 | | | | | | | | |
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
|Q NSS | | | | exc | | | | |
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
|Q NSS | | | | | shr | shr | shr | shr |
|USERS | | | | | | | | |
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
|Inter | exc | | | | shr | shr | exc | exc |
|Purge-1| | | | | | | | |
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
|Inter | exc | | | exc | exc | exc | | |
|Purge-2| | | | | | | | |
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
|DEFSYS | | | exc | exc | | | | |
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
|SAVESYS| | | exc | exc | | | | |
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
| IPL | exc | | | shr | shr | | exc | |
| NSS-1 | | | | | | | | |
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
| IPL | exc | | | exc | exc | | | |
| NSS-2 | | | | | | | | |
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
|Monitor| | | | | shr | shr | | |
|Sample | | | | | | | | |
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
|Monitor| shr | | | | | | | |
| IUCV | | | | | | | | |
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
| Purge | | | | exc | exc | exc | | |
| Cmd | | | | | | | | |
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
| Indi- | | | | | shr | shr | | |
| cate | | | | | | | | |
| NSS | | | | | | | | |
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
|VMdump | exc | | | | | | | |
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
|Mig- | | | | | shr | shr | | |
|rator | | | | | | | | |
+-------+-----+-----+-----+-----+-----+-----+-----+-----+
Notes:
DIAG 64 Find-1 : Find a Saved Segment from the Saved Segment
SNTBK queue
DIAG 64 Find-2 : Find a Saved Segment from the *NSS SDF
queue
DIAG 64 Load-1 : Load a Saved Segment from the Saved Segment
SNTBK queue.
DIAG 64 Load-2 : Load a Saved Segment from the *NSS SDF
queue
DIAG 64 Purge1 : 'use-count' > 1, not the last user.
DIAG 64 Purge2 : 'use-count' = 1, last user of the Saved
Segment.
Inter Purge-1 : 'Internal' Purge, 'use-count' > 1, not the
last user.
Inter Purge-2 : 'Internal' Purge, 'use-count' = 1, last
user of the Saved Segment.
IPL NSS-1 : IPLing a Named Saved System from the Named
Saved System SNTBK queue
IPL NSS-2 : IPLing a Named Saved System from the *NSS
SDF queue
NSUBK Control Block Content
NSUBK DSECT
Hex Dec Type/Val Lng Label (dup) Comments
---- ---- --------- ---- -------------- --------
0000 0 Structure NSUBK Auxillary Storage Management
utility data
Saved Segment SNTBK Queue lock (NSUSGQLK)
Lock type: This is a formal shared or exclusive lock
Resource serialized: This lock will serialize the
Saved Segment SNTBK queue. The lock will be obtained
shared when scanning the Saved Segment SNTBK queue
and exclusive when adding to, or deleting from, the
queue.
Notes : If the *NSS SDF queue lock is held exclusively
then the Saved Segment SNTBK queue can be scanned
without holding the queue lock. This is because the
*NSS SDF queue lock must be held exclusively to add
or remove a SNTBK from the Saved Segment SNTBK queue.
0000 0 Dbl-Word 8 NSUSGQLK (3) Shared/exclusive defer lock to
serialize the queue of Saved
Segment SNTBKs anchored at
NSUNSGAN
Saved Segment SNTBK Queue anchors
0018 24 Dbl-Word 8 NSUNSGAN (0) Anchors to queue of Saved Segment
SNTBKs
0018 24 Address 4 NSUNSGFW Foward pointer of Saved Segment
SNTBKs
001C 28 Address 4 NSUNSGBK Backward pointer of Saved Segment
SNTBKs
Named Saved System SNTBK Queue lock (NSUSYQLK)
Lock type: This is a formal shared or exclusive lock
Resource serialized: This lock will serialize the
Named Saved System SNTBK queue. The lock will be
obtained shared when scanning the Named Saved System
SNTBK queue and exclusive when adding to, or deleting
from, the queue.
Notes : If the *NSS SDF queue lock is held exclusively
then the Named Saved System SNTBK queue can be scanned
without holding the queue lock. This is because the
*NSS SDF queue lock must be held exclusively to add
or remove a SNTBK from the Named Saved System SNTBK
queue.
0020 32 Dbl-Word 8 NSUSYQLK (3) Shared/exclusive defer lock to
serialize the queue of NSS SNTBKs
anchored at NSUNSYAN
NSS SNTBK Queue anchors
0038 56 Dbl-Word 8 NSUNSYAN (0) Anchors to queue of NSS SNTBKs.
0038 56 Address 4 NSUNSYFW Foward pointer of NSS SNTBKs.
003C 60 Address 4 NSUNSYBK Backward pointer of NSS SNTBKs.
IMG SNTBK Queue anchors and queue lock
0040 64 Dbl-Word 8 NSUIMGLK (6) Lockword for image SNTBK queue
lock.
0070 112 Dbl-Word 8 NSUIMGAN (0) Anchors to image HCPSNTBK queue.
0070 112 Address 4 NSUIMGFW Foward pointer of HCPSNTBK image
queue.
0074 116 Address 4 NSUIMGBK Backward pointer of HCPSNTBK
image queue.
NLS SNTBK Queue anchors and queue lock
0078 120 Dbl-Word 8 NSUNLSLK (6) Lockword for NLS SNTBK queue
lock.
00A8 168 Dbl-Word 8 NSUNLSAN (0) Anchors to queue of NLS SNTBKs.
00A8 168 Address 4 NSUNLSFW Foward pointer of NLS SNTBKs.
00AC 172 Address 4 NSUNLSBK Backward pointer of NLS SNTBKs.
Saveseg SNTBK Queue anchors
Notes : This queue is serialized by *NSS SDF queue lock
NSUSDFLK.
00B0 176 Dbl-Word 8 NSUSSGAN (0) Anchors to queue of SAVESEG
SNTBKs
00B0 176 Address 4 NSUSSGFW Foward pointer of SAVESEG SNTBKs
00B4 180 Address 4 NSUSSGBK Backward pointer of SAVESEG
SNTBKs
Savesys SNTBK Queue anchors
Notes : This queue is serialized by *NSS SDF queue lock
NSUSDFLK.
00B8 184 Dbl-Word 8 NSUSSYAN (0) Anchors to queue of SAVESYS
SNTBKs
00B8 184 Address 4 NSUSSYFW Foward pointer of SAVESYS SNTBKs
00BC 188 Address 4 NSUSSYBK Backward pointer of SAVESYS
SNTBKs
00C0 192 Signed 4 * (2) Reserved for future IBM use
DEFSEG/SAVESEG exclusive command lock (NSUDSGLK)
Lock type: This is a formal exclusive lock
Resource serialized: This lock serializes the DEFSEG
and SAVESEG commands. Only one DEFSEG or SAVESEG
command can be processed at one time.
00C8 200 Dbl-Word 8 NSUDSGLK (3) Exclusive defer lock to serialize
the DEFSEG/SAVESEG command
DEFSYS/SAVESYS symbolic command lock (NSUDSYAN)
Lock type: This is a formal exclusive symbolic name
lock.
Resource serialized: This lock serializes the DEFSYS
and SAVESYS commands for the Named Saved System that
is being defined or saved. Only one DEFSYS or SAVESYS
can be processed for a particular Named Saved System
at any given time.
00E0 224 Dbl-Word 8 NSUDSYAN Symbolic queue lock anchor to
serialize the DEFSYS/SAVESYS
command
*NSS SDF queue lock (NSUSDFLK)
Lock type: This is a formal shared or exclusive lock
Resource serialized: This lock will serialize the
*NSS SDF queue, the SAVESEG SNTBK queue, and the
SAVESYS SNTBK queue.
Functions serialized: This lock must be obtained
exclusive to open any "*NSS" spool file for read or
write. It is also used to add or remove SNTBKs from
the SAVESEG SNTBK queue and the SAVESYS SNTBK queue.
Notes : If the *NSS SDF queue lock is held exclusively
then the Named Saved System SNTBK queue or Saved
Segment SNTBK queue can be scanned without holding
the queue lock. This is because the *NSS SDF queue
lock must be held exclusively to add or remove a
SNTBK from the Named Saved System SNTBK queue or the
Saved Segment SNTBK queue.
00E8 232 Dbl-Word 8 NSUSDFLK (3) Exclusive defer lock to serialize
the queue of SDFs owned by user
*NSS
SDF multiple symbolic lock manager (NSUMSLKM)
Lock type: This is a formal exclusive lock
Functions serialized: This lock will be obtained by
any CP function (such as "Purge IMG/NLS ALL") that
needs to obtain multiple symbolic name locks for
NLS/IMG files.
0100 256 Dbl-Word 8 NSUMSLKM (3) Exclusive defer lock to serialize
entry points that obtain multiple
symbolic locks
IMG/NLS SDF symbolic queue lock anchor
0118 280 Dbl-Word 8 NSUSYMAN Symbolic queue lock anchor for
IMG and NLS system data files.
NSUBK Storage Layout
*** NSUBK - Auxillary Storage Management utility data
*
* +-------------------------------------------------------+
* 0 | |
* = NSUSGQLK =
* | |
* +---------------------------+---------------------------+
* 18 | NSUNSGFW | NSUNSGBK |
* +---------------------------+---------------------------+
* 20 | |
* = NSUSYQLK =
* | |
* +---------------------------+---------------------------+
* 38 | NSUNSYFW | NSUNSYBK |
* +---------------------------+---------------------------+
* 40 | |
* = NSUIMGLK =
* | |
* +---------------------------+---------------------------+
* 70 | NSUIMGFW | NSUIMGBK |
* +---------------------------+---------------------------+
* 78 | |
* = NSUNLSLK =
* | |
* +---------------------------+---------------------------+
* A8 | NSUNLSFW | NSUNLSBK |
* +---------------------------+---------------------------+
* B0 | NSUSSGFW | NSUSSGBK |
* +---------------------------+---------------------------+
* B8 | NSUSSYFW | NSUSSYBK |
* +---------------------------+---------------------------+
* C0 |///////////////////////////////////////////////////////|
* +-------------------------------------------------------+
* C8 | |
* = NSUDSGLK =
* | |
* +-------------------------------------------------------+
* E0 | NSUDSYAN |
* +-------------------------------------------------------+
* E8 | |
* = NSUSDFLK =
* | |
* +-------------------------------------------------------+
* 100 | |
* = NSUMSLKM =
* | |
* +-------------------------------------------------------+
* 118 | NSUSYMAN |
* +-------------------------------------------------------+
* 120
*
*** NSUBK - Auxillary Storage Management utility data
NSUBK Cross Reference
Symbol Dspl Value -------------- ---- ----- NSUDSGLK 00C8 NSUDSYAN 00E0 NSUIMGAN 0070 NSUIMGBK 0074 NSUIMGFW 0070 NSUIMGLK 0040 NSUMSLKM 0100 NSUNLSAN 00A8 NSUNLSBK 00AC NSUNLSFW 00A8 NSUNLSLK 0078 NSUNSGAN 0018 NSUNSGBK 001C NSUNSGFW 0018 NSUNSYAN 0038 NSUNSYBK 003C NSUNSYFW 0038 NSUSDFLK 00E8 NSUSGQLK 0000 NSUSSGAN 00B0 NSUSSGBK 00B4 NSUSSGFW 00B0 NSUSSYAN 00B8 NSUSSYBK 00BC NSUSSYFW 00B8 NSUSYMAN 0118 NSUSYQLK 0020
Copyright IBM Corporation, 1990, 2007