|
Programming Interface Information:
This information is NOT intended to be used as Programming Interfaces of z/VM. |
HDPBK
Control Block Contents
HDPBK DSECT
HDPQPTRA DSECT
Cross Reference (Contains links to field and bit definitions)
HDPBK Prolog
Name : HCPHDPBK
Description: Host DAT table Programming area block
DSECT : HDPBK
Function : Contain programming use information specific to
a particular host DAT table. Only used for host
region and segment tables.
Located by : FRMPTE field of the FRMTE(s) corresponding to the
real storage frame containing the DAT table in
question
Created by : HCPHDTxx
Deleted by : HCPHDTxx
Serialized :
Comments : The HDPBK must reside on a doubleword boundary.
HDPBK Control Block Content
HDPBK DSECT
Hex Dec Type/Val Lng Label (dup) Comments
---- ---- --------- ---- -------------- --------
0000 0 Structure HDPBK Host DAT table Programming area
block
0000 0 Signed 8 HDPTD Table origin, table type, and
table length of DAT table
associated with this HDPBK, in
ASCE format (DT bits, not R*TE
format TT bits). Table offset
(TF) bits are assumed to be
unused.
0008 8 Signed 8 HDPVSTRT Starting virtual address of
virtual address range represented
by associated table. Must be zero
in highest level table designated
by the ASCE.
0010 16 Signed 8 HDPVEND Ending virtual address of virtual
address range represented by
associated table; highest
non-null virtual address in the
associated table. For highest
level table (pointed to by
ASCASCE), should equal ASCHIBYTE
and VMDBK SI2GMSLM
Back pointers to higher level control blocks and tables.
HDPASCBK and HDPASTE are filled in for all associated table types.
HDPHLRTE and HDPHLHDP are filled in if the associated table is not the
highest level table in this address space's DAT structures; they point
to the higher level R*TE which designates the table associated with
this HDPBK, and the HDPBK which is associated with the table containing
that higher level R*TE, respectively.
0018 24 Signed 4 HDPASCBK ASCBK address
001C 28 Signed 4 HDPASTE ASTE address
0020 32 Signed 4 * Reserved for IBM use
0024 36 Signed 4 HDPHLHDP HDPBK associated with the region
table containing the HDPHLRTE
R*TE
0028 40 Signed 4 * Reserved for IBM use
002C 44 Signed 4 HDPHLRTE Higher level R*TE which
designates this table (or 0 if
this is the highest level table
for the address space)
Masks useful for processing virtual addresses represented by this
table.
0030 48 Signed 8 HDPVMAXM Mask for generating highest
virtual address in area (region
or segment) represented by the
associated table. Also, for
highest level table designated by
ASCE, is the highest virtual
address representable by an ASCE
with matching DT bits.
for R1T: X'001FFFFFFFFFFFFF'
for R2T: X'000003FFFFFFFFFF'
for R3T: X'000000007FFFFFFF'
for ST: X'00000000000FFFFF'
0038 56 Signed 8 HDPISOXM Mask for isolating index portion
of virtual address in area
represented by the associated
table:
for R1T: x'FFE0000000000000' - isolate R1X
for R2T: x'001FFC0000000000' - isolate R2X
for R3T: x'000003FF80000000' - isolate R3X
for ST: x'000000007FF00000' - isolate SX
Pointers to the HDPBKs associated with existing tables at this level
which represent the next lower and next higher virtual address range.
(In sparse spaces, these HDPBKs likely represent virtual address ranges
which are not contiguous with the address range represented by this
HDPBK.) Any code which validates or invalidates R*TEs at any level must
maintain these pointers. Allows quick traversal to the next existing
table at the given level, regardless how big the virtual address gap
between the tables may be.
0040 64 Signed 8 HDPADLQA (0) Addressable HDPBK queue area -
Doubly linked queue of HDPBKs
anchored at ASCADHDQ.
0040 64 Signed 4 HDPADLNX Pointer to a next HDPBK (of
indeterminate level) representing
the next addressable virtual
storage byte address after the
end of the virtual address range
represented by the table
associated with this HDPBK. The
HDBK pointed to may or may not be
the lowest level HDPBK
representing the next addressable
virtual storage byte.
0044 68 Signed 4 HDPADLPR Pointer to a previous HDPBK (of
indeterminate level) representing
the last addressable virtual
storage byte address previous to
the start of the virtual address
range represented by the table
associated with this HDPBK. The
HDBK pointed to may or may not be
the lowest level HDPBK
representing the previous highest
addressable virtual storage byte.
0048 72 Signed 8 HDPLVLQA (0) HDPBK level queue area
0048 72 Signed 4 HDPLVLNX Pointer to next HDPBK at this
level (if any). If non-zero,
points to the HDPBK associated
with the existing table at this
level which represents the next
higher virtual address range.
004C 76 Signed 4 HDPLVLPR Pointer to previous HDPBK at this
level (if any). If non-zero,
points to the HDPBK associated
with the existing table at this
level which represents the next
lower virtual address range.
0050 80 Signed 4 HDP$END (0) End of control block
00000050 HDPLEN *-HDPBK Length of HDPBK in bytes
0000000A HDPSIZE (HDPLEN+7)/8 Size of HDPBK in
doublewords
DSECT to map individual HDPxxxQA queue pointer areas, can also be used
on individual ASCxxHDQ queue header areas.
HDPQPTRA DSECT
Hex Dec Type/Val Lng Label (dup) Comments
---- ---- --------- ---- -------------- --------
0000 0 Structure HDPQPTRA Host DAT table Programming area
block
0000 0 Signed 4 HDPQPNXT First (next) HDPBK on queue
0004 4 Signed 4 HDPQPPRV Last (previous) HDPBK on queue
00000008 HDPQPLEN *-HDPQPTRA Length of one HDPBK
pointer area
HDPBK Storage Layout
*** HDPBK - Host DAT table Programming area block
*
* +-------------------------------------------------------+
* 0 | HDPTD |
* +-------------------------------------------------------+
* 8 | HDPVSTRT |
* +-------------------------------------------------------+
* 10 | HDPVEND |
* +---------------------------+---------------------------+
* 18 | HDPASCBK | HDPASTE |
* +---------------------------+---------------------------+
* 20 |///////////////////////////| HDPHLHDP |
* +---------------------------+---------------------------+
* 28 |///////////////////////////| HDPHLRTE |
* +---------------------------+---------------------------+
* 30 | HDPVMAXM |
* +-------------------------------------------------------+
* 38 | HDPISOXM |
* +---------------------------+---------------------------+
* 40 | HDPADLNX | HDPADLPR |
* +---------------------------+---------------------------+
* 48 | HDPLVLNX | HDPLVLPR |
* +---------------------------+---------------------------+
*
*** HDPBK - Host DAT table Programming area block
*** HDPQPTRA - Host DAT table Programming area block
*
* +---------------------------+---------------------------+
* 0 | HDPQPNXT | HDPQPPRV |
* +---------------------------+---------------------------+
* 8
*
*** HDPQPTRA - Host DAT table Programming area block
HDPBK Cross Reference
Symbol Dspl Value
-------------- ---- -----
HDP$END 0050
HDPADLNX 0040
HDPADLPR 0044
HDPADLQA 0040
HDPASCBK 0018
HDPASTE 001C
HDPHLHDP 0024
HDPHLRTE 002C
HDPISOXM 0038
HDPLEN 0050 00000050
HDPLVLNX 0048
HDPLVLPR 004C
HDPLVLQA 0048
HDPQPLEN 0004 00000008
HDPQPNXT 0000
HDPQPPRV 0004
HDPSIZE 0050 0000000A
HDPTD 0000
HDPVEND 0010
HDPVMAXM 0030
HDPVSTRT 0008
This information is
based on z/VM V4R3.0.
Last updated on 1 May 2002 at 07:44:41 EDT.
Copyright IBM Corporation, 1990, 2002