Programming Interface Information:
This information is NOT intended to be
used as Programming Interfaces of z/VM.



Control Block Contents  

Storage Layout  

Cross Reference (Contains links to field and bit definitions)  

PGEBK Prolog

 DESCRIPTION: Page Allocation Management Block
 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:
       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


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

This information is based on z/VM V4R3.0. Last updated on 30 Apr 2002 at 17:19:09 EDT.
Copyright IBM Corporation, 1990, 2002