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

BMSBK

Prolog  

Control Block Contents  
   BMSBK DSECT

Storage Layout  

Cross Reference (Contains links to field and bit definitions)  


BMSBK Prolog

 NAME       : HCPBMSBK
 DESCRIPTION: BUFFER MANAGEMENT SERVICE CONTROL BLOCK
 DSECT      : BMSBK
 FUNCTION   : CONTAINS THE CURRENT STATUS OF A BUFFER
              MANAGEMENT TASK
 LOCATED BY : USAGE DEPENDENT
 CREATED BY : HCPBMSIN
 DELETED BY : HCPBMSTM
 RELOCATION CONSIDERATIONS : None
 EMPLOYED BY- HCPBMSRA : WHEN RETURNING A LIST OF BUFFERS
              TO THE AVAILABLE STACK
              HCPBMSOA : WHEN OBTAINING A LIST OF BUFFERS
              FROM THE AVAILABLE STACK
              HCPBMSGA : WHEN GETTING A BUFFER FROM THE
              AVAILABLE STACK
              HCPBMSAA : WHEN ADDING BUFFERS FROM FREE
              STORAGE TO THE AVAILABLE STACK
              HCPBMSSA : WHEN RETURNING BUFFERS FROM THE
              AVAILABLE STACK TO FREE STORAGE
              HCPBMSPP : WHEN PUTTING A BUFFER ON THE
              PENDING QUEUE
              HCPBMSOP : WHEN OBTAINING A LIST OF BUFFERS
              FROM THE PENDING QUEUE
              HCPBMSQP : WHEN GETTING THE COUNT OF BUFFERS
              ON THE PENDING QUEUE
 COMMENTS   : SERIALIZED BY THE BMSBK LOCK, BMSLOCK FOR
              ALL ENTRY POINTS EXCEPT HCPBMSIN.

 

BMSBK Control Block Content


BMSBK DSECT

Hex   Dec Type/Val   Lng Label (dup)    Comments
---- ---- --------- ---- -------------- --------
0000    0 Structure      BMSBK          BUFFER MANAGEMENT SERVICE CONTROL BLOCK
             BUFFER MANAGEMENT SERVICE INFORMATION
0000    0 Signed       4 * (0)          BLOCK STATUS
0000    0 Bitstring    1 BMSSTTYP       FREE STORAGE INDICATOR
          .... ...1      BMSPAG         X'01' BMSPAG BMSBK IS A REAL
                                        FRAME (PAGE)
          .... ..1.      BMSFRE         X'02' BMSFRE BMSBK IS FROM FREE
                                        STORAGE
          .... .1..      BMSFIXED       X'04' BMSFIXED BMSBK DESCRIBES A
                                        BUFFER POOL THAT IS A FIXED SIZE
                                        (USED BY TRSAVE FOR CP ON)
          .... 1...      BMSDFRIO       X'08' BMSDFRIO Wrap buffers in
                                        real storage
0001    1 Bitstring    1 *              RESERVED FOR FUTURE USE
0002    2 Signed       2 BMSDWSZ        DOUBLE WORD SIZE OF BLOCK THIS
                                        FIELD IS ONLY USED WHEN THIS
                                        BLOCK IS CREATED FORM FREE
                                        STORAGE
0004    4 Signed       4 BMSBUFCT       COUNT OF TOTAL BUFFERS Within a
                                        chain of BMSBKs, this field is
                                        only meaningful in the first
                                        BMSBK of the chain
0008    8 Signed       4 BMSAVBCT       COUNT OF AVAILABLE BUFFERS Within
                                        a chain of BMSBKs, this field is
                                        only meaningful in the first
                                        BMSBK of the chain
000C   12 Signed       4 BMSPDBCT       COUNT OF PENDING BUFFERS Within a
                                        chain of BMSBKs, this field is
                                        only meaningful in the first
                                        BMSBK of the chain
0010   16 Signed       4 BMSRTBCT       COUNT OF BUFFERS RETURNED TO THE
                                        AVAILABLE STACK
0014   20 Signed       4 *              RESERVED FOR FUTURE USE
             BUFFER LOCKS
0018   24 Dbl-Word     8 BMSLOCK (6)    Spin lock for the BMS block
                                        Within a chain of BMSBKs, this
                                        field is only meaningful in the
                                        first BMSBK of the chain
             AVAILABLE BUFFERS
0048   72 Address      4 BMSAVPTR       POINTER TO AVAILABLE BUFFERS
                                        Within a chain of BMSBKs, this
                                        field is only meaningful in the
                                        first BMSBK of the chain
             PENDING BUFFERS
004C   76 Address      4 BMSNEXT        Pointer to next BMSBK in chain of
                                        BMSBKs
0050   80 Address      4 BMSBMOFF       Pointer to BMSBK which contains
                                        oldest pending buffer. Within a
                                        chain of BMSBKs, this field is
                                        only meaningful in the first
                                        BMSBK of the chain
0054   84 Address      4 BMSBMON        Pointer to BMSBK which contains
                                        next available slot. Within a
                                        chain of BMSBKs, this field is
                                        only meaningful in the first
                                        BMSBK of the chain
0058   88 Address      4 BMSPDOFF       POINTER TO FIRST BUFFER ON THE
                                        QUEUE
005C   92 Address      4 BMSPDON        POINTER TO NEXT AVAILABLE SLOT ON
                                        THE QUEUE
0060   96 Address      4 BMSPDLST       ADDRESS OF THE LAST SLOT IN THE
                                        ARRAY
          0000000D       BMSHSIZE       (*-BMSBK+7)/8 SIZE OF THE BMS
                                        HEADER
0064  100 Address      4 BMSPDST (0)    START OF VARIABLE LENGTH DATA
                                        ARRAY OF POINTERS TO PENDING
                                        BUFFERS See PERBMS in HCPEQUAT
                                        for maximum number of buffers per
                                        BMSBK.
       Verify that size of BMSBK doesn't exceed 1 page.

 

BMSBK Storage Layout

          
*** BMSBK - BUFFER MANAGEMENT SERVICE CONTROL BLOCK
*
*     +------+------+-------------+---------------------------+
*   0 |:STTYP|//////|  BMSDWSZ    |         BMSBUFCT          |
*     +------+------+-------------+---------------------------+
*   8 |         BMSAVBCT          |         BMSPDBCT          |
*     +---------------------------+---------------------------+
*  10 |         BMSRTBCT          |///////////////////////////|
*     +---------------------------+---------------------------+
*  18 |                                                       |
*     =                       BMSLOCK                         =
*     |                                                       |
*     +---------------------------+---------------------------+
*  48 |         BMSAVPTR          |         BMSNEXT           |
*     +---------------------------+---------------------------+
*  50 |         BMSBMOFF          |         BMSBMON           |
*     +---------------------------+---------------------------+
*  58 |         BMSPDOFF          |         BMSPDON           |
*     +---------------------------+---------------------------+
*  60 |         BMSPDLST          |
*     +---------------------------+
*
*** BMSBK - BUFFER MANAGEMENT SERVICE CONTROL BLOCK

 

BMSBK Cross Reference

Symbol         Dspl Value
-------------- ---- -----
BMSAVBCT       0008
BMSAVPTR       0048
BMSBMOFF       0050
BMSBMON        0054
BMSBUFCT       0004
BMSDFRIO       0000 08
BMSDWSZ        0002
BMSFIXED       0000 04
BMSFRE         0000 02
BMSHSIZE       0060 0000000D
BMSLOCK        0018
BMSNEXT        004C
BMSPAG         0000 01
BMSPDBCT       000C
BMSPDLST       0060
BMSPDOFF       0058
BMSPDON        005C
BMSPDST        0064
BMSRTBCT       0010
BMSSTTYP       0000

This information is based on z/VM V6R2.0. Last updated on 21 Nov 2011 at 10:54:13 EDT.
Copyright IBM Corporation, 1990, 2011