Programming Interface Information:
This information is NOT intended to be used as Programming Interfaces of z/VM. |
PGEBK
Control Block Contents
PGEBK DSECT
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. This control block resides in CP real storage, but the buffer that it represents 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 : ISFC does not require the application data to start in the first byte of the buffer, or extend to the end of the buffer. The field PGEDATOF holds the offset of the data, and the field PGEDATLN holds the length of the data. Some communications protocols (for example, SNA) may need to wrap the data with a header and/or trailer after the data is in the buffer. If the mailbox initializes PGEDATOF and PGEDATLN when the data is placed in the buffer, it can add header and/or trailer records later (without the cost of copying the data to another buffer). 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
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
Copyright IBM Corporation, 1990, 2001