|
Programming Interface Information:
This information is NOT intended to be used as Programming Interfaces of z/VM. |
BMSBK
Control Block Contents
BMSBK DSECT
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
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
Copyright IBM Corporation, 1990, 2007