BMSBK Back to Index page
 
Prolog 
Control Block Contents 
   BMSBK DSECT
Storage Layout 
Cross Reference (Contains links to field and bit definitions)
Programming Interface Information:
This information is NOT intended to be
used as Programming Interfaces of z/VM.


  BMSBK Prolog Top of page
 
 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 Top of page
 

 BMSBK DSECT Top of page
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 Top of page
 
          
*** 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 Top of page
 
 
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 7.2.0 Last updated on 24 Jun 2020 at 09:27:10 EDT.
Copyright IBM Corporation, 1990, 2020