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

SUBBK

Prolog
Control Block Contents
SUBBK DSECT
Storage Layout
Cross Reference

SUBBK Prolog

 Name       : HCPSUBBK
 Description: Subpool Data Area Block
 DSECT      : SUBBK
 Function   :
              Maps each of the free storage subpool data area
              elements.
 Created by : Never allocated
 Deleted by : Never deallocated
 Notes      : This DSECT is used to map the free storage subpool
              data area groups located in HCPRSM. Specifically,
              HCPRSMSS (regular free storage subpools) and
              HCPRSMVT (V=R free storage subpools).
              Each data area group consists of multiple data
              area elements.

 

SUBBK Control Block Content

SUBBK DSECT

Hex   Dec Type/Val   Lng Label (dup)    Comments
---- ---- --------- ---- -------------- --------
0000    0 Structure      SUBBK          Subpool Data Area Block
     Format 0 ("old style") SUBBK format used for subpools for the following
     types of subpooled free storage:
     - V=R free storage (HCPFRFV* entry points, HCPVRS) - Virtual Free
     Storage (HCPVFM) - Aligned Free Storage (HCPAFS) - Verifiable Free
     Storage (HCPVCB)
0000    0 Signed       4 SUBLOCK        Subpool lock word
0004    4 Signed       4 SUBSIZE        Integral size (in DWDS) of
                                        subpool block including FRERECL
0008    8 Address      4 SUBANCH        Pointer to first FRMTE for
                                        subpooled free storage, or 1st
                                        available block for V=R
000C   12 Signed       4 SUBRCNT        Count of requests this size
0010   16 Signed       4 SUBODWD        Count of DWD currently in use
                                        (multiple of SUBSIZE)
0014   20 Signed       4 SUBCDWD        Count of DWDS now on chain
0018   24 Signed       4 SUBUDWD        Count of actual DWD usage (does
                                        not include internal
                                        fragmentation)
001C   28 Signed       4 *              Reserved for IBM use
0020   32 Signed       4 *              Reserved for IBM use
          00000024       SUBESZ         *-SUBBK Size of one subpool entry
     Format 1 ("new/fast style") SUBBK format used for standard short term
     free storage, including "fast allocated" free storage control blocks.
0000    0 Bitstring    1 SUBTSLK        Subpool lock byte
0001    1 Bitstring    1 *              Reserved for IBM use
0002    2 Signed       2 SUBBSIZE       Size in bytes (including
                                        header/trailer) of each block on
                                        this subpool
0004    4 Signed       2 SUBMAXBS       Maximum number of blocks that fit
                                        in one frame
0006    6 Signed       2 SUBMTFCT       Count of frames on SUBMTFTE empty
                                        frame queue for this subpool
                                        Notes : The following three
                                        fields (SUBFRETS, SUBBLOCK, and
                                        SUBTOTRQ) must remain contiguous
                                        and in order, as there is
                                        performance sensitive code in the
                                        free storage allocation and
                                        deallocation paths which
                                        references two adjacent fields
                                        (SUBBLOCK and SUBTOTRQ for
                                        allocation, SUBFRETS and SUBBLOCK
                                        for deallocation) with a single
                                        STM instruction
0008    8 Signed       4 SUBFRETS       Total count of returns to this
                                        free storage subpool
000C   12 Signed       4 SUBBLOCK       Anchor for blocks on this subpool
0010   16 Signed       4 SUBTOTRQ       Total count of requests against
                                        this subpool
     SUBFRETS and SUBBLOCK remain contiguous
     SUBBLOCK and SUBTOTRQ remain contiguous
0014   20 Signed       4 SUBMTFTE       FRMTE address of 1st empty frame
                                        on queue. FFS mark end of chain.
0018   24 Signed       4 SUBCLCTP       Collection pile
001C   28 Signed       4 SUBXTNCT       Count of extends
0020   32 Signed       2 SUBFRMCT       Count of frames on pool
0022   34 Signed       2 SUBINUSE       Count of blocks in use on this
                                        subpool
          00000024       SUBNEXT        * Address of next SUBBK
          00000024       SUBSSZ         *-SUBBK Size of one standard
                                        short term free storage SUBBK
                                        entry
          00000002       SUBOFFSH       2 Number of bits to shift a
                                        subpool number to get the index
                                        into the HCPFRESO SUBBK offsets
                                        table for the subpool's SUBBK
     Format 1 SUBBKs are the same length

 

SUBBK Storage Layout

          
*** SUBBK - Subpool Data Area Block
*
*     +---------------------------+---------------------------+
*   0 |         SUBLOCK           |         SUBSIZE           |
*     +---------------------------+---------------------------+
*   8 |         SUBANCH           |         SUBRCNT           |
*     +---------------------------+---------------------------+
*  10 |         SUBODWD           |         SUBCDWD           |
*     +---------------------------+---------------------------+
*  18 |         SUBUDWD           |///////////////////////////|
*     +---------------------------+---------------------------+
*  20 |///////////////////////////| 24
*     +---------------------------+
*
*** SUBBK - Subpool Data Area Block
          
*** Overlay for SUBLOCK in SUBBK
*
*     +------+------+-------------+-------------+-------------+
*   0 |:TSLK |//////|  SUBBSIZE   |  SUBMAXBS   |  SUBMTFCT   |
*     +------+------+-------------+-------------+-------------+
*   8 |         SUBFRETS          |         SUBBLOCK          |
*     +---------------------------+---------------------------+
*  10 |         SUBTOTRQ          |         SUBMTFTE          |
*     +---------------------------+---------------------------+
*  18 |         SUBCLCTP          |         SUBXTNCT          |
*     +-------------+-------------+---------------------------+
*  20 |  SUBFRMCT   |  SUBINUSE   | 24
*     +-------------+-------------+
*
*** Overlay for SUBLOCK in SUBBK

 

SUBBK Cross Reference

Symbol         Dspl Value
-------------- ---- -----
SUBANCH        0008
SUBBLOCK       000C
SUBBSIZE       0002
SUBCDWD        0014
SUBCLCTP       0018
SUBESZ         0020 00000024
SUBFRETS       0008
SUBFRMCT       0020
SUBINUSE       0022
SUBLOCK        0000
SUBMAXBS       0004
SUBMTFCT       0006
SUBMTFTE       0014
SUBNEXT        0022 00000024
SUBODWD        0010
SUBOFFSH       0022 00000002
SUBRCNT        000C
SUBSIZE        0004
SUBSSZ         0022 00000024
SUBTOTRQ       0010
SUBTSLK        0000
SUBUDWD        0018
SUBXTNCT       001C

This information is based on z/VM V3R1.0.
Last updated on 4 Apr 2001 at 09:39:31 EDT.
Copyright IBM Corporation, 1990, 2001