OFBK Back to Index page
 
Prolog 
Control Block Contents 
   OFBK 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.


  OFBK Prolog Top of page
 
 NAME       : HCPOFBK
 DESCRIPTION: CP Open File Block
 DSECT      : OFBK
 FUNCTION   : The OFBK contains information about each
              open CMS file on CP accessed minidisks
 LOCATED BY : ACSBK.ACSOFB
              OFBK.OFBFWD
              DRBK.DRBOFB
 CREATED BY : HCPZIA
              HCPZIO
 DELETED BY : HCPZIC
              HCPZIR
 RELOCATION CONSIDERATIONS : None
 
 
  OFBK Control Block Content Top of page
 

 OFBK DSECT Top of page
Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure OFBK CP Open File Block 0000 0 Address 4 OFBFWD Host logical address of next OFB. 0004 4 Address 4 OFBDRB HL-address of chain of open DRBKs 0008 8 Address 4 OFBMLEBK HL-address of MLEBK chain. 000C 12 Signed 4 OFBIOBUF Host logical address of I/O buffer. May be backed anywhere since format 2 IDAW lists will be used. 0010 16 Address 4 OFBvFSB Virt Free Storage addr of FSBK 0014 20 Signed 4 * Reserved for future IBM use 0018 24 Signed 2 OFBSIZE Size of OFBK in bytes 001A 26 Bitstring 1 OFBFLAG1 Flags 1... .... OFBSEUDO X'80' OFBSEUDO This is a Pseudo-OPEN OFBK ...1 .... OFBUNIQE X'10' OFBUNIQE Only 1 OPEN against this OFBK 001B 27 Bitstring 1 OFBFLAG2 Flags 1... .... OFBOUTPT X'80' OFBOUTPT This is an output OFBK .1.. .... OFBBUFFR X'40' OFBBUFFR Delay write till buffer full .... ..1. OFBCPVF X'02' OFBCPVF Backed in "CP Virtual Free" 001C 28 Address 4 OFBIOR Host logical address of IORBK if any. 0020 32 Dbl-Word 8 OFBLOCK (3) Lock for file I/O 0038 56 Signed 4 OFBUSER1 Reserved for non-IBM use 003C 60 Signed 4 OFBUSER2 Reserved for non-IBM use 0040 64 Bitstring 64 OFBFSB Interesting FSBK pieces 0080 128 Signed 4 * Reserved for IBM use 0084 132 Signed 4 OFBVFsz CP V F size allocated. Used if OFBCPVF is on. 0088 136 Bitstring 8 OFBbBUFF 64 bits, 1 per block in CPVF. Used if OFBCPVF is on. 0090 144 Bitstring 8 OFBwBUFF 64 bits, 1 per block in CPVF. Used if OFBCPVF is on. On if block was written. 0098 152 Address 4 OFBgBUFF CP Virt Free Storage addr of blk Used if OFBCPVF is on. 009C 156 Address 4 OFBaBUFF CP Virt Free Storage page align. Used if OFBCPVF is on. When we read a block of the CMS file, we copy that block to CP Virt Free, such that the block's RBA is the offset from OFBaBUFF. The corresponding bit in OFBbBUFF is set on to indicate data exists in CP V F. OFBwBUFF is set if the block is to be written. This section (OFBd ) describes fields that locate the buffer for level 0, the data level. The layout of the OFBPTR section is identical to this. These two sections replicate each other so that we can readily refer directly to the data section, or through pointer levels to level 0, this same data level. Which section to use is left to the convenience of the programmer. 00A0 160 Dbl-Word 8 OFBdPTR (0) Ensure d-word boundary 00A0 160 Signed 4 OFBdBLK CMS file block number of block 00A4 164 Signed 4 OFBdCPTR Subscript to child pointer 00A8 168 Address 4 OFBdBUFF A(I/O buffer) .... ...1 OFBdDATA X'01' OFBdDATA OFBpBUFF must be written 00AC 172 Address 4 * Reserved for IBM use 00B0 176 Dbl-Word 8 * (0) Ensure d-word boundary 00B0 176 Dbl-Word 8 OFBPTRS (0) Start of variable length data Pointers to DASD blocks 000000B0 OFBSIZEB (*-OFBK+7)/8*8 Size in bytes 00000016 OFBSIZED (*-OFBK+7)/8 Size in d-words This section is subscripted (1:FSB#LVL). This section mirrors the definition of OFBdPTR above. 00B0 176 Dbl-Word 8 OFBPTR (0) Pointers to DASD blocks 00B0 176 Signed 4 OFBpBLK CMS file block number of block 00B4 180 Signed 4 OFBpCPTR Subscript to child pointer 00B8 184 Address 4 OFBpBUFF A(I/O buffer) .... ...1 OFBpDATA X'01' OFBpDATA OFBpBUFF must be written 00BC 188 Address 4 * Reserved for IBM use 00C0 192 Dbl-Word 8 * (0) Round up to d-word boundary 00000010 OFBPTRL *-OFBPTR Length of these fields
 
 
  OFBK Storage Layout Top of page
 
          
*** OFBK - CP Open File Block
*
*     +---------------------------+---------------------------+
*   0 |          OFBFWD           |          OFBDRB           |
*     +---------------------------+---------------------------+
*   8 |         OFBMLEBK          |         OFBIOBUF          |
*     +---------------------------+---------------------------+
*  10 |         OFBVFSB           |///////////////////////////|
*     +-------------+------+------+---------------------------+
*  18 |  OFBSIZE    |:FLAG1|:FLAG2|          OFBIOR           |
*     +-------------+------+------+---------------------------+
*  20 |                                                       |
*     =                       OFBLOCK                         =
*     |                                                       |
*     +---------------------------+---------------------------+
*  38 |         OFBUSER1          |         OFBUSER2          |
*     +---------------------------+---------------------------+
*  40 |                                                       |
*     =                        OFBFSB                         =
*     |                                                       |
*     +---------------------------+---------------------------+
*  80 |///////////////////////////|         OFBVFSZ           |
*     +---------------------------+---------------------------+
*  88 |                       OFBBBUFF                        |
*     +-------------------------------------------------------+
*  90 |                       OFBWBUFF                        |
*     +---------------------------+---------------------------+
*  98 |         OFBGBUFF          |         OFBABUFF          |
*     +---------------------------+---------------------------+
*  A0 |         OFBDBLK           |         OFBDCPTR          |
*     +---------------------------+---------------------------+
*  A8 |         OFBDBUFF          |///////////////////////////|
*     +---------------------------+---------------------------+
*
*** OFBK - CP Open File Block
          
*** Overlay for OFBPTRS in OFBK
*
*     +---------------------------+---------------------------+
*  B0 |         OFBPBLK           |         OFBPCPTR          |
*     +---------------------------+---------------------------+
*  B8 |         OFBPBUFF          |///////////////////////////|
*     +---------------------------+---------------------------+
*  C0
*
*** Overlay for OFBPTRS in OFBK
 
 
  OFBK Cross Reference Top of page
 
 
Symbol         Dspl Value
-------------- ---- -----
OFBaBUFF       009C
OFBbBUFF       0088
OFBdBLK        00A0
OFBdBUFF       00A8
OFBdCPTR       00A4
OFBdDATA       00A8 01
OFBdPTR        00A0
OFBgBUFF       0098
OFBpBLK        00B0
OFBpBUFF       00B8
OFBpCPTR       00B4
OFBpDATA       00B8 01
OFBvFSB        0010
OFBwBUFF       0090
OFBBUFFR       001B 40
OFBCPVF        001B 02
OFBDRB         0004
OFBFLAG1       001A
OFBFLAG2       001B
OFBFSB         0040
OFBFWD         0000
OFBIOBUF       000C
OFBIOR         001C
OFBLOCK        0020
OFBMLEBK       0008
OFBOUTPT       001B 80
OFBPTR         00B0
OFBPTRL        00C0 00000010
OFBPTRS        00B0
OFBSEUDO       001A 80
OFBSIZE        0018
OFBSIZEB       00B0 000000B0
OFBSIZED       00B0 00000016
OFBUNIQE       001A 10
OFBUSER1       0038
OFBUSER2       003C
OFBVFsz        0084
 
This information is based on z/VM 7.1.0 Last updated on 22 Jun 2018 at 11:51:12 EDT.
Copyright IBM Corporation, 1990, 2018