Programming Interface Information:
This information is NOT intended to be used as Programming Interfaces of z/VM. |
VEXBK
Control Block Contents
VEXBK DSECT
Cross Reference (Contains links to field and bit definitions)
VEXBK Prolog
NAME : HCPVEXBK DESCRIPTION: Volume EXtent block DSECT : VEXBK FUNCTION : Contains information about all of the extents on a CP-owned volume. LOCATED BY : CPVVEXBK CREATED BY : HCPRDAAT when CP-owned volume attached to system DELETED BY : HCPRDDDT when CP-owned volume detached from system REFERENCES : HCPEXTBK - Extent block SERIALIZED : Allocation locks RELOCATION CONSIDERATIONS : None NOTES : The fields starting at VEXPGACA and VEXSPACA each cannot cross a 256-byte boundary because the internal CASBK pointers (CASNXT) are one-byte fields. To guarantee these fields do not cross a 256 byte-boundary, ALLOC=ALIGNED is specified in IDOFFSET macro AND currently the block has a maximum length of 256 bytes. The length of 256 bytes PLUS ALLOC=ALIGNED forces the control block to be located on a 256-byte boundary. If this control block grows larger than 256 bytes, then VEXSIZE as well as the locations of VEXPGACA and VEXSPACA may need to change.
VEXBK Control Block Content
VEXBK DSECT
Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure VEXBK Volume EXtent block The following section of the VEXBK contains information regarding the PAGE space on this volume. This information is for page slot allocation. This is the area containing page CASBKs (groups of Contiguous Available Slots) and is mapped by ACABK DSECT (Area for Contiguous Available Slots). 0000 0 Dbl-Word 8 * (0) 0000 0 Signed 4 VEXPGACA (16) Contains 16 CASBKs used by slot allocation. 0040 64 Signed 4 * Current slot number in EXTBK (start search for new CASBK here) 0044 68 Signed 4 * Last slot in current cylinder 0048 72 Signed 4 * Current cylinder in EXTBK 004C 76 Signed 4 * Pointer to current EXTBK 0050 80 Bitstring 1 * Index into ACABK of first CASBK 0051 81 Bitstring 1 * Index into ACABK of last CASBK 0052 82 Bitstring 1 * Flags 0053 83 Bitstring 1 * (5) Reserved for IBM use The following section of the VEXBK contains information regarding the SPOOL space on this volume. This information is for spool slot allocation. This is the area containing page CASBKs (groups of Contiguous Available Slots) and is mapped by ACABK DSECT (Area for Contiguous Available Slots). 0058 88 Dbl-Word 8 * (0) 0058 88 Signed 4 VEXSPACA (16) Contains 16 CASBKs used by slot allocation. 0098 152 Signed 4 * Current slot number in EXTBK (start search for new CASBK here) 009C 156 Signed 4 * Last slot in current cylinder 00A0 160 Signed 4 * Current cylinder in EXTBK 00A4 164 Signed 4 * Pointer to current EXTBK 00A8 168 Bitstring 1 * Index into ACABK of first CASBK 00A9 169 Bitstring 1 * Index into ACABK of last CASBK 00AA 170 Bitstring 1 * Flags 00AB 171 Bitstring 1 * (5) Reserved for IBM use The following section of the VEXBK is a general section containing pointers to the first EXTBK of each type and the number of EXTBKs of each type, as well as descriptions about the device geometry. If one of the following pointers is 0, then no space of that type exists on the volume. 00B0 176 Signed 4 VEXPGEXT Ptr to 1st page EXTBK on volume 00000004 VEXPTRL *-VEXPGEXT Length of each pointer field 00B4 180 Signed 4 VEXSPEXT Ptr to 1st spool EXTBK on volume 00B8 184 Signed 4 VEXTDEXT Ptr to 1st tdsk EXTBK on volume 00BC 188 Signed 4 VEXDREXT Ptr to 1st drct EXTBK on volume 00C0 192 Signed 4 VEXPEEXT Ptr to 1st perm EXTBK on volume 00000014 VEXPTRT *-VEXPGEXT Total area for pointers 00000005 VEXTYP VEXPTRT/VEXPTRL Number of allocation types with EXTBKs 00C4 196 Signed 4 VEX1SEXT Pointer to 1st EXTBK of any type 00C8 200 Signed 2 VEXPGNUM Number page EXTBKs on volume 00000002 VEXCTRL *-VEXPGNUM Length of each counter field 00CA 202 Signed 2 VEXSPNUM Number spool EXTBKs on volume 00CC 204 Signed 2 VEXTDNUM Number tdsk EXTBKs on volume 00CE 206 Signed 2 VEXDRNUM Number drct EXTBKs on volume 00D0 208 Signed 2 VEXPENUM Number perm EXTBKs on volume 00D2 210 Signed 2 VEXNUMEX Total number EXTBKs on volume 00D4 212 Bitstring 1 VEXTYPES Indicates all allocation types that exist on the volume. PARM and UNDF types are marked separately in VEXFLAGS. 1... .... ALOCATED X'80' ALOCATED CYLINDER IS CURRENTLY IN USE THIS TYPE OF ALLOCATION SHOULD ONLY BE USED IN CONJUNCTION WITH THE TYPE 'DRCT' .1.. .... ALOCDRCT X'40' ALOCDRCT ALLOCATION TYPE 'DRCT' ..1. .... ALOCTDSK X'20' ALOCTDSK ALLOCATION TYPE 'TDSK' ...1 .... ALOCFULL X'10' ALOCFULL CYLINDER IS FULL NOTE- ALOCFULL is used only in combination with SPOL & PAGE .... 1... ALOCPERM X'08' ALOCPERM ALLOCATION TYPE 'PERM' .... ..1. ALOCSPOL X'02' ALOCSPOL ALLOCATION TYPE 'SPOL' Notes : ALOCSPOL == PGTSPOOL == PGUSPOOL == CPVTEMPS: 00D5 213 Bitstring 1 VEXAVAIL Indicates which types have available space on the volume. PARM and UNDF types are marked separately in VEXFLAGS. 1... .... ALOCATED X'80' ALOCATED CYLINDER IS CURRENTLY IN USE THIS TYPE OF ALLOCATION SHOULD ONLY BE USED IN CONJUNCTION WITH THE TYPE 'DRCT' .1.. .... ALOCDRCT X'40' ALOCDRCT ALLOCATION TYPE 'DRCT' ..1. .... ALOCTDSK X'20' ALOCTDSK ALLOCATION TYPE 'TDSK' ...1 .... ALOCFULL X'10' ALOCFULL CYLINDER IS FULL NOTE- ALOCFULL is used only in combination with SPOL & PAGE .... 1... ALOCPERM X'08' ALOCPERM ALLOCATION TYPE 'PERM' .... ..1. ALOCSPOL X'02' ALOCSPOL ALLOCATION TYPE 'SPOL' Notes : ALOCSPOL == PGTSPOOL == PGUSPOOL == CPVTEMPS: 00D6 214 Signed 2 VEXPGCYL Pages per cylinder (Valid only for CKD devices) 00D8 216 Bitstring 1 VEXVOL Volume index (v of ccpv) 00D9 217 Bitstring 1 VEXFLAGS Flag byte 1... .... VEXFBA X'80' VEXFBA FBA indicator .1.. .... VEXNFIL X'40' VEXNFIL Device formatted without filler records ..1. .... VEXUNDF X'20' VEXUNDF Device contains undefined allocation types. Those areas will be ignored. ...1 .... VEXPARM X'10' VEXPARM Device contains cyls/pages with PARM allocation type 'Sharable' Extents are: PERM, PARM 'Owner-Shared' Extents are: SPOL 'Private' Extents are: PAGE, TDSK, WARM, CKPT, DRCT 00DA 218 Bitstring 1 VEXFLGS2 Flag byte 1... .... VEXSHROF X'80' VEXSHROF Sharable extents are OFF .1.. .... VEXOSHOF X'40' VEXOSHOF Owner-Shared extents are OFF ..1. .... VEXPRVOF X'20' VEXPRVOF Private extents are OFF 00DB 219 Bitstring 1 * Reserved for IBM use 00DC 220 Signed 4 VEXEND Number of cylinders (CKD) or slots (FBA) on device 00E0 224 Signed 4 VEXMXCYL Maximum number of cylinders per page/spool EXTBK (Used only for CKD device) 00000020 VEXSIZE 256/8 Current maximum size of VEXBK in Dwords. This forces VEXBK to be aligned on a 256-byte boundary.
VEXBK Storage Layout
*** VEXBK - Volume EXtent block * * +-------------------------------------------------------+ * 0 | | * = VEXPGACA = * | | * +---------------------------+---------------------------+ * 40 |///////////////////////////|///////////////////////////| * +---------------------------+---------------------------+ * 48 |///////////////////////////|///////////////////////////| * +------+------+------+------+---------------------------+ * 50 |//////|//////|//////|//////////////////////////////////| * +------+------+------+----------------------------------+ * 58 | | * = VEXSPACA = * | | * +---------------------------+---------------------------+ * 98 |///////////////////////////|///////////////////////////| * +---------------------------+---------------------------+ * A0 |///////////////////////////|///////////////////////////| * +------+------+------+------+---------------------------+ * A8 |//////|//////|//////|//////////////////////////////////| * +------+------+------+------+---------------------------+ * B0 | VEXPGEXT | VEXSPEXT | * +---------------------------+---------------------------+ * B8 | VEXTDEXT | VEXDREXT | * +---------------------------+---------------------------+ * C0 | VEXPEEXT | VEX1SEXT | * +-------------+-------------+-------------+-------------+ * C8 | VEXPGNUM | VEXSPNUM | VEXTDNUM | VEXDRNUM | * +-------------+-------------+------+------+-------------+ * D0 | VEXPENUM | VEXNUMEX |:TYPES|:AVAIL| VEXPGCYL | * +------+------+------+------+------+------+-------------+ * D8 |VEXVOL|:FLAGS|:FLGS2|//////| VEXEND | * +------+------+------+------+---------------------------+ * E0 | VEXMXCYL | E4 * +---------------------------+ * *** VEXBK - Volume EXtent block
VEXBK Cross Reference
Symbol Dspl Value -------------- ---- ----- ALOCATED 00D4 80 ALOCATED 00D5 80 ALOCDRCT 00D4 40 ALOCDRCT 00D5 40 ALOCFULL 00D4 10 ALOCFULL 00D5 10 ALOCPERM 00D4 08 ALOCPERM 00D5 08 ALOCSPOL 00D4 02 ALOCSPOL 00D5 02 ALOCTDSK 00D4 20 ALOCTDSK 00D5 20 VEXAVAIL 00D5 VEXCTRL 00C8 00000002 VEXDREXT 00BC VEXDRNUM 00CE VEXEND 00DC VEXFBA 00D9 80 VEXFLAGS 00D9 VEXFLGS2 00DA VEXMXCYL 00E0 VEXNFIL 00D9 40 VEXNUMEX 00D2 VEXOSHOF 00DA 40 VEXPARM 00D9 10 VEXPEEXT 00C0 VEXPENUM 00D0 VEXPGACA 0000 VEXPGCYL 00D6 VEXPGEXT 00B0 VEXPGNUM 00C8 VEXPRVOF 00DA 20 VEXPTRL 00B0 00000004 VEXPTRT 00C0 00000014 VEXSHROF 00DA 80 VEXSIZE 00E0 00000020 VEXSPACA 0058 VEXSPEXT 00B4 VEXSPNUM 00CA VEXTDEXT 00B8 VEXTDNUM 00CC VEXTYP 00C0 00000005 VEXTYPES 00D4 VEXUNDF 00D9 20 VEXVOL 00D8 VEX1SEXT 00C4
Copyright IBM Corporation, 1990, 2011