Programming Interface Information: This information is NOT intended to be
used as Programming Interfaces of VM/ESA. It is to be used for diagnosis only.

SUBBK

Prolog  

Control Block Contents  

SUBBK DSECT

Storage Layout  

Cross Reference (Contains links to field and bit definitions)  

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 0014 20 Address 4 * (0) /(((SUBFRETS+L'SUBFRETS))-(SUBBLO CK)))) IEV075 will resu lt if SUBBLOCK NE (SUBFRETS+L'SUBFRETS) @P3714FM 0014 20 Address 4 * (0) /(((SUBBLOCK+L'SUBBLOCK))-(SUBTOT RQ)))) IEV075 will resu lt if SUBTOTRQ NE (SUBBLOCK+L'SUBBLOCK) @P3714FM 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 0024 36 Address 4 * (0) Z)))) IEV075 will result if SUBESZ NE SUBSSZ @P3714FM

 

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

(contains links to field and bit definitions)
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 VM/ESA 2.4.0.
Last updated on 3 Aug 1999 at 12:37:07 EDT.
Copyright IBM Corporation, 1990, 1999