Programming Interface Information:
This information is NOT intended to be
used as Programming Interfaces of z/VM.

SPMBK

Prolog  

Control Block Contents  
   SPMBK DSECT

Storage Layout  

Cross Reference (Contains links to field and bit definitions)  


SPMBK Prolog

 NAME       : HCPSPMBK
 DESCRIPTION: SPOOL FILE MAP PAGE BLOCK
 DSECT      : SPMBK
 FUNCTION   : TO CONTAIN ASA'S FOR EVERY SPOOL FILE DATA
              PAGE (SPDBK) IN A SPOOL FILE.  THE SPMBK ALSO
              CONTAINS A COPY OF THE SPFBK, SO THAT IT CAN
              BE RECREATED WHEN THE SYSTEM IS WARM STARTED.
              SPMBK'S ARE FILLED WITH ASA'S WHILE IN SYSTEM
              VIRTUAL STORAGE, AND ARE PERIODICALLY CHECK-
              POINTED TO DASD.
 LOCATED BY :
              (1) LOCATED IN SYSTEM VIRTUAL STORAGE BY:
              SPAVSPM  - SPABK ANCHOR FOR THE CURRENT SPMBK
              IN A SYSTEM VIRTUAL PAGE.
              (2) LOCATED ON DASD BY:
              SPADSPM  - SPABK ASA FOR THE SPMBK CURRENTLY
              IN SYSTEM VIRTUAL STORAGE.
              SPFSTART - SPFBK ASA FOR THE FIRST SPMBK OF A
              SPOOL FILE.  SPMNEXT CHAINS THE
              ASA'S OF SUBSEQUENT SPMBK'S, IF
              NECESSARY.
              SFNASA   - SFNASA IS A TABLE OF ASA'S.  EACH
              ASA IS FOR THE FIRST SPMBK OF A
              SPOOL FILE.  THE TABLE IS USED BY
              HCPWRMST TO RECREATE THE FILES
              WHEN THE SYSTEM IS WARM STARTED.
 CREATED BY :
              (1) CREATED IN SYSTEM VIRTUAL STORAGE BY:
              HCPSFSON - ALLOCATES A PAGE OF SYSTEM VIRTUAL
              STORAGE FOR THE SPMBK WHEN A
              SPOOL FILE IS OPENED FOR CREATION.
              HCPSFSOP - ALLOCATES A PAGE OF SYSTEM VIRTUAL
              STORAGE FOR THE SPMBK WHEN A
              SPOOL FILE IS PROCESSED ON A REAL
              OUTPUT DEVICE.
              HCPSFVOP - ALLOCATES A PAGE OF SYSTEM VIRTUAL
              STORAGE FOR THE SPMBK WHEN A
              SPOOL FILE IS PROCESSED ON A
              VIRTUAL CARD READER.
              (2) CREATED ON DASD BY:
              HCPVSPPW - CHECKPOINTS THE SPMBK BY REWRITING
              IT TO DASD EACH TIME A NEW DATA
              PAGE (SPDBK) IS WRITTEN FOR CON-
              SOLE FILES.  FOR ALL OTHER SPOOL
              FILES, THE SPMBK IS REWRITTEN
              EACH TIME THE SPABK IS FULL.
              WHEN THE SPMBK IS FULL, HCPVSPPW
              WILL WRITE THE SPMBK TO DASD, AND
              ALLOCATE A DASD SLOT FOR ANOTHER
              SPMBK.
              HCPSFRCL - WRITES OUT THE LAST SPMBK WHEN A
              FILE CREATED BY A REAL READER IS
              CLOSED.  IT ALSO REWRITES THE
              FIRST SPMBK WITH THE SPFBK.
              HCPSFVCL - WRITES OUT THE LAST SPMBK WHEN
              VIRTUAL OUTPUT FILES ARE CLOSED.
              IT ALSO REWRITES THE FIRST SPMBK
              WITH THE SPFBK AS IT IS WHEN THE
              FILE IS CLOSED.
 DELETED BY :
              (1) DELETED IN SYSTEM VIRTUAL STORAGE BY:
              HCPSFRCL - RELEASES THE SYSTEM VIRTUAL PAGE
              ALLOCATED FOR THE SPMBK WHEN A
              SPOOL FILE CREATED ON A REAL
              READER IS CLOSED.
              HCPSFVCL - RELEASES THE SYSTEM VIRTUAL PAGE
              ALLOCATED FOR THE SPMBK WHEN A
              VIRTUAL OUTPUT FILE IS CLOSED.
              HCPSFROP - IF A PAGING ERROR OCCURS WHILE
              PROCESSING AN SPDBK, THE SYSTEM
              VIRTUAL PAGE FOR THE SPMBK IS
              RELEASED.
              HCPSFVOP - FOR THE SAME REASON AS HCPSFROP.
              HCPSFSON - FOR THE SAME REASON AS HCPSFROP.
              (2) DELETED ON DASD BY:
              HCPSFRDL - WHENEVER A SPOOL FILE IS DELETED
              FROM THE SYSTEM.
              HCPWRSST - WHENEVER THERE IS A PROBLEM
              RE-CREATING A SPOOL FILE DURING A
              "FORCE" START.  ALSO, IT WILL
              DELETE THE SPMBK IF IT DETECTS
              THAT THE FIRST ASA IS ZERO, WHICH
              MEANS THERE ARE NO DATA PAGES
              MAPPED BY THIS SPMBK.

 

SPMBK Control Block Content


SPMBK DSECT

Hex   Dec Type/Val   Lng Label (dup)    Comments
---- ---- --------- ---- -------------- --------
0000    0 Structure      SPMBK          SPOOL FILE MAP PAGE BLOCK
0000    0 Dbl-Word     8 SPMOPNTM       TOD (FULL) WHEN FILE WAS OPENED
0008    8 Signed       4 SPMSPID        System spool id for this file
000C   12 Signed       4 SPMNEXT        ASA OF NEXT SPMBK FOR THIS FILE
0010   16 Dbl-Word     8 SPMSPFBK (24)  Copy of the SPFBK
00D0  208 Character    8 SPMSRCND       Diagnose X'F8' original node
00D8  216 Character    8 SPMSRCUS       Diagnose X'F8' original userid
00E0  224 Signed       4 SPMXABS (8)    Slots for XAB ASA's (up to 32K-1)
          00000020       SPMXABLN       *-SPMXABS Length of XAB ASA area
          00000004       SPMXABEL       4 Length of an entry
          00000008       SPMXABCT       8 Number of entries
0100  256 Signed       4 SPMASA (960)   ROOM FOR 60 SETS OF 16 ASA GROUPS
          00000F00       SPMASALN       *-SPMASA To locate end of SPMASA
     SPMCCNT MUST ALWAYS BE AN INTEGER MULTIPLE OF 16
          000003C0       SPMCCNT        (((*-SPMASA)/4)/16)*16
     THE EMBEDDED SPFBK MAY NOT EXCEED 24 DOUBLE-WORDS.
          00000200       SPMSIZE        (*-SPMBK+7)/8 BLOCK SIZE IN
                                        DOUBLEWORDS
     SPXTAPE field for chaining SPM in system virtual storage
0010   16 Address      4 SPMNXTVA       Virtual address of next SPM in
                                        SYSTEM address space. Uses
                                        SPFFPNT as chain field (which
                                        isn't used while on DASD).

 

SPMBK Storage Layout

          
*** SPMBK - SPOOL FILE MAP PAGE BLOCK
*
*     +-------------------------------------------------------+
*   0 |                       SPMOPNTM                        |
*     +---------------------------+---------------------------+
*   8 |         SPMSPID           |         SPMNEXT           |
*     +---------------------------+---------------------------+
*  10 |                                                       |
*     =                       SPMSPFBK                        =
*     |                                                       |
*     +-------------------------------------------------------+
*  D0 |                       SPMSRCND                        |
*     +-------------------------------------------------------+
*  D8 |                       SPMSRCUS                        |
*     +-------------------------------------------------------+
*  E0 |                                                       |
*     =                       SPMXABS                         =
*     |                                                       |
*     +-------------------------------------------------------+
* 100 |                                                       |
*     =                        SPMASA                         =
*     |                                                       |
*     +-------------------------------------------------------+
*1000
*
*** SPMBK - SPOOL FILE MAP PAGE BLOCK
          
*** Overlay for SPMSPFBK+SPFFPNT-SPFBK in SPMBK
*
*     +---------------------------+
*  10 |         SPMNXTVA          | 14
*     +---------------------------+
*
*** Overlay for SPMSPFBK+SPFFPNT-SPFBK in SPMBK

 

SPMBK Cross Reference

Symbol         Dspl Value
-------------- ---- -----
SPMASA         0100
SPMASALN       0100 00000F00
SPMCCNT        0100 000003C0
SPMNEXT        000C
SPMNXTVA       0010
SPMOPNTM       0000
SPMSIZE        0100 00000200
SPMSPFBK       0010
SPMSPID        0008
SPMSRCND       00D0
SPMSRCUS       00D8
SPMXABCT       00E0 00000008
SPMXABEL       00E0 00000004
SPMXABLN       00E0 00000020
SPMXABS        00E0

This information is based on z/VM V4R2.0. Last updated on 17 Oct 2001 at 16:34:22 EDT.
Copyright IBM Corporation, 1990, 2001