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. RELOCATION CONSIDERATIONS : None 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, 2011