|
Programming Interface Information:
This information is NOT
intended to be
used as Programming Interfaces of VM/ESA. It is to be used for diagnosis only. |
PGEBK
Cross Reference (Contains links to field and bit definitions)
PGEBK Prolog
NAME : HCPPGEBK
DESCRIPTION: Page Allocation Management Block
DSECT : PGEBK
FUNCTION : Maintain a record of virtual pages that have
been allocated within the virtual address space
used for the ISFC subsystem and within virtual address
spaces of applications using ISFC.
Also used as a communications buffer descriptor for SNA
support. The buffer itself may reside in
CP real storage (in which case, PGEALET will be zero) or
in a "permanently" accessed address space (in which case
PGEALET will be the ALET of the address space).
NOTES : For SNA Support,
the data within a buffer need not start in the first byte
of the buffer, and it need not extend to the end of the
buffer. Hence, we need the PGEDATOF and PGEDATLN fields.
Even if the data does not fill up the entire buffer, it is
assumed that all of the storage of the buffer is available
for use. E.g., if the data starts at some non-zero offset
into the buffer, then SNA headers may be inserted into the
buffer ahead of the data (assuming that they fit).
The prototypical PL/X basing expression is:
respecify
buffer based(viaptr(pgeALET, pgeVirt+pgeDatOf))
Of course, the buffer can only be accessed in AR-mode.
Each buffer has a unique creator, and a current owner.
Only the current owner of a buffer may reference and/or
modify the buffer and/or the fields in the buffer
descriptor -- only the buffer's creator may deallocate the
storage occupied by the buffer and/or the PGEBK. When a
buffer has been consumed, it should be returned to its
creator by calling the creator's RECLAIM-BUF exit, which
is pointed to by the PGECLAIM field.
The fields in this control block are initialized by the
buffer's creator -- all of them are read-only to everyone
else *except* for PGENEXT, PGEDATOF, PGEDATLN, and the
owner pointers and words.
LOCATED BY : When a virtual page is in use, the PGEBK address
is stored in an appropriate control block. For
example: The CTCBK contains a table with one
PGEBK pointer for each buffer that has been set
up for the Read channel program.
CREATED BY : For ISFC, created by HCPBUT when a new virtual page buffer
is requested. PGEBKs that HCPBUT creates always have
host virtual addresses from the ISFC Address Space ass-
ociated with them. PGEBKs are also obtained by other
communication transports without using HCPBUT and by
applications that use ISFC services.
DELETED BY : For ISFC, deleted by HCPBUT when the virtual page buffer
is released. PGEBKs obtained by other communications
transports without using HCPBUT must not be returned using
HCPBUT. These must be returned using a method appropriate
with respect to how they were obtained by the transport.
See description of PGECLAIM above.
SERIALIZED : The ISFC global lock (HCPBDSGL).
PGEBK Control Block Content
PGEBK DSECT
Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure PGEBK Page Allocation Management Block 0000 0 Bitstring 8 PGEEYE Unused eye catcher 0008 8 Address 4 PGENEXT Address of next PGEBK 000C 12 Signed 4 PGEINST ISFC instance for this virt. page 0010 16 Address 4 PGELNKBK LNKBK address received over 0014 20 Address 4 PGEVMDBK VMDBK of address space address 0018 24 Address 4 PGECLAIM Address of entry point 001C 28 Signed 4 PGEREAL Real address of locked page 0020 32 Signed 4 PGEBFLEN Length of buffer 0024 36 Signed 4 PGEDATOF Offset of data into buffer 0028 40 Signed 4 PGEDATLN Length of data in buffer 002C 44 Signed 4 PGEALET ALET that can be used to refer to the system virtual address in PGEVIRT with CP in DAT-on, host Access Register mode. 0030 48 Signed 4 PGEVIRT Virtual page address relative to the ALET 0034 52 Address 4 PGECRPTR Pointer for creators use 0038 56 Signed 4 PGECRWRD Word for creators use 003C 60 Signed 4 PGECRW2 Word 2 for creators use 0040 64 Address 4 PGEOWPTR Pointer for owners use 0044 68 Signed 4 PGEOWWRD Word for owners use 0048 72 Signed 4 PGEOWW2 Word 2 for owners use 004C 76 Signed 4 * Reserved 0050 80 Dbl-Word 8 PGEIASIT I-ASIT for page 0000000B PGESIZE (*-PGEBK+7)/8 Size, in doublewords, of PGEBK
PGEBK Storage Layout
*** PGEBK - Page Allocation Management Block * * +-------------------------------------------------------+ * 0 | PGEEYE | * +---------------------------+---------------------------+ * 8 | PGENEXT | PGEINST | * +---------------------------+---------------------------+ * 10 | PGELNKBK | PGEVMDBK | * +---------------------------+---------------------------+ * 18 | PGECLAIM | PGEREAL | * +---------------------------+---------------------------+ * 20 | PGEBFLEN | PGEDATOF | * +---------------------------+---------------------------+ * 28 | PGEDATLN | PGEALET | * +---------------------------+---------------------------+ * 30 | PGEVIRT | PGECRPTR | * +---------------------------+---------------------------+ * 38 | PGECRWRD | PGECRW2 | * +---------------------------+---------------------------+ * 40 | PGEOWPTR | PGEOWWRD | * +---------------------------+---------------------------+ * 48 | PGEOWW2 |///////////////////////////| * +---------------------------+---------------------------+ * 50 | PGEIASIT | * +-------------------------------------------------------+ * 58 * *** PGEBK - Page Allocation Management Block
PGEBK Cross Reference
(contains links to field and bit definitions)Symbol Dspl Value -------------- ---- -----PGEALET 002C
PGEBFLEN 0020
PGECLAIM 0018
PGECRPTR 0034
PGECRWRD 0038
PGECRW2 003C
PGEDATLN 0028
PGEDATOF 0024
PGEEYE 0000
PGEIASIT 0050
PGEINST 000C
PGELNKBK 0010
PGENEXT 0008
PGEOWPTR 0040
PGEOWWRD 0044
PGEOWW2 0048
PGEREAL 001C
PGESIZE 0050 0000000B
PGEVIRT 0030
PGEVMDBK 0014
Last updated on 3 Aug 1999 at 12:22:42 EDT.
Copyright IBM Corporation, 1990, 1999