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

VPG64

Prolog  

Control Block Contents  
   VPG64 DSECT

Storage Layout  

Cross Reference (Contains links to field and bit definitions)  


 

VPG64 Control Block Content


VPG64 DSECT

Hex   Dec Type/Val   Lng Label (dup)    Comments
---- ---- --------- ---- -------------- --------
0000    0 Structure      VPG64          VIRTUAL PAGE BLOCK
0000    0 Dbl-Word     8 VPGGPAG        Page Table Entry
0008    8 Dbl-Word     8 VPGGNEXT (0)   Address for next VPGBK
0008    8 Dbl-Word     8 * (255)
0800 2048 Dbl-Word     8 VPGGPGS        Page Status Table Entry
0808 2056 Dbl-Word     8 * (255)
1000 4096 Dbl-Word     8 VPGGASA        Auxiliary Storage Address Entry
1008 4104 Dbl-Word     8 * (255)
     Mapping for an ESAME PAG64
          00000000       VPGGPTE        * VPGBK Page Table Entry
0000    0 Dbl-Word     8 VPGGPNTR       Hardware Page Table Entry
0000    0 Signed       4 VPGGPTE0       Word 0 of ESAME PAGTE
0004    4 Signed       4 VPGGPTE1       Word 1 of ESAME PAGTE
0000    0 Signed       2 VPGGPLNK       This field is used to point to
                                        the next free Page Table Entry
                                        available in this PGMBK (for non-
                                        Pageable PGMBK frames only -
                                        NPGM) which were previously
                                        deallocated.
0002    2 Signed       2 *              Reserved for IBM use
0004    4 Signed       4 *              Reserved for IBM use
0000    0 Signed       4 VPGGXSBN       Xstore block number if PTE is not
                                        valid and PGSXSTOR is b'1'
0004    4 Signed       4 *              Reserved for IBM use
0000    0 Signed       4 *              Bits 0-31 of ESAME PFRA
0004    4 Signed       2 *              Bits 32-47 of ESAME PFRA
0006    6 Bitstring    1 VPGGPSTA       Bits 48-51 of ESAME PFRA For a
                                        valid-in-real-storage PTE, bits
                                        52 and 55 must be zero. Bits 53
                                        and 54 are Page-invalid and
                                        Page-protection, respectively.
0007    7 Bitstring    1 *              This byte is not architected and
                                        is available for software use. It
                                        is recommended that software
                                        refrain from using this byte
                                        unless it is to store the guest
                                        storage key.
     Mapping for an ESAME PGS64
          00000800       VPGGPGST       * VPGBK Page Status Entry
0800 2048 Dbl-Word     8 VPGGSNTR       Virtual Page Status Entry
0800 2048 Signed       4 VPGGPGS0       Word 0 of ESAME PGSTE
0804 2052 Signed       4 VPGGPGS1       Word 1 of ESAME PGSTE
0800 2048 Bitstring    3 VPGGVRSF       Field containing VPGGSVKY,
                                        VPGGSRCP and VPGGSFLG
0803 2051 Bitstring    1 *              Reserved for IBM use
0800 2048 Bitstring    1 VPGGSVKY       Guest Storage Key Bits 0-4
0801 2049 Bitstring    1 VPGGSRCP       Architected area for RCP Byte If
                                        the storage key assist is being
                                        utilized. (See the PGSTE and
                                        RCPTE Control Blocks for further
                                        details)
          1... ....      RCPLOCK        X'80' RCP LOCK HELD
          .1.. ....      RCPHREF        X'40' HOST BACKUP REFERENCE BIT
          ..1. ....      RCPHCH         X'20' HOST BACKUP CHANGE BIT
          .11. ....      RCPHOST        RCPHREF+RCPHCH MASK FOR HOST BITS
          .... .1..      RCPGREF        X'04' GUEST BACKUP REFERENCE BIT
          .... ..1.      RCPGCH         X'02' GUEST BACKUP CHANGE BIT
          .... .11.      RCPGUEST       RCPGREF+RCPGCH MASK FOR GUEST
                                        BITS
          1... ....      PGSPCL         X'80' Page Control Lock
          .1.. ....      PGSRCPHR       X'40' Host backup reference bit
                                        used for system pages
          ..1. ....      PGSRCPHC       X'20' Host backup change bit used
                                        for system pages
          .11. ....      PGSHOST        PGSRCPHR+PGSRCPHC Mask for host
                                        bits
          .... .1..      PGSGREF        X'04' Guest backup reference bit
          .... ..1.      PGSGCH         X'02' Guest backup change bit
          .... .11.      PGSGUEST       PGSGREF+PGSGCH Mask for guest
                                        bits
0802 2050 Bitstring    1 VPGGSFLG       Virtual Page Flags
          1... ....      PGSINVAL       X'80' No auxiliary storage
                                        assigned
          VPGGSFLG       *              PTE: PAGINVAL=0 (page is valid
                                        and resident) PGSTE: PGSINVAL=1
                                        (no DASD slot assigned)
                                        PGSRCPHR=0 (unreferenced) *
                                        PGSRCPHC=0 (unchanged) Real frame
                                        storage key: Reference=0
                                        (unreferenced) * Change =0
                                        (unchanged)
          .... P.*      *               Any resident page in this state
                                        is assumed to be
          .... P.*      *               unchanged zeros, and therefore
                                        simply discardable
          .... P.*      *               by steal. No page with non-zero
                                        contents should
          .... P.*      *               ever be allowed to be in this
                                        state, or a lost page
          .... P.*      *               will eventually result. The host
                                        change bit,
          .... P.*      *               PGSRCPHC, should be used to
                                        indicate that a page
          .... P.*      *               which is unchanged, not already
                                        on DASD, and
          .... P.*      *               non-zero, must be eventually
                                        written to DASD.
          .... ....      *
          .... P.*      *               * Note that both reference bits
                                        (PGSRCPHR and the
          .... P.*      *               real storage frame reference bit)
                                        can "evaporate"
          .... P.*      *               to zero over time due to the
                                        action of the
          .... P.*      *               reorder function. Therefore, the
                                        fact that a
          .... P.*      *               frame has been referenced, or
                                        setting PGSRCPHR
          .... P.*      *               on, can not prevent a page from
                                        eventually
          .... P.*      *               entering this "first time
                                        reference page of
          .... P.*      *               zeros" state.
          .... ....      *
          .1.. ....      *              EQU X'40' Page is a shared page
          ..1. ....      *              EQU X'20' ASA may be read only
                                        once. Used
          .... P.*      *               for shared pages. After the first
          .... P.*      *               read, this SDF (System Data File)
          .... P.*      *               ASA is to be ignored and the page
          .... P.*      *               left as changed. When the page
          .... P.*      *               is first written, it will go to a
          .... P.*      *               paging space ASA and this flag
                                        wil
          .... P.*      *               be turned off.
          .... P.*      *               PGS1READ on implies that page is
          .... P.*      *               read-only for the user.
          ...1 ....      *              EQU X'10' Page in the system
                                        address space
          .... P.*      *               (or a system-owned utility
                                        address
          .... P.*      *               space) that is allocated,
          .... P.*      *               OR
          .... P.*      *               A shared CP page in the monitor
          .... P.*      *               DCSS that CP has translated and
          .... P.*      *               that has not yet been released
          .... P.*      *               by the user connected to the
                                        DCSS.
          .... ....      *
          .... P.*      *               When this bit is on: 1) The page
          .... P.*      *               is never part of a DASD block;
          .... P.*      *               2) The associated PGMBK is never
          .... P.*      *               paged out.
          .... 1...      *              EQU X'08' Storage slot
                                        permanently assigned
          .... .1..      *              EQU X'04' Indicate the first page
                                        of PGMBK
          .... P.*      *               has completed I/O. Serialized
          .... P.*      *               via PGSTRANS.
          .... ..1.      *              EQU X'02' Indicate the second
                                        page of PGMBK
          .... P.*      *               has completed I/O. Serialized
          .... P.*      *               via PGSTRANS.
          .... .11.      *              EQU PGSIO1ST+PGSIO2ND
          .... ....
0803 2051 Bitstring    1 VPGGSSTA       Virtual Page Status bits
0803 2051 Bitstring    1 VPGGMSTA       Virtual Page (PGMBK) Status bits
0804 2052 Signed       4 VPGGAUX        Time this page was written
     Mapping for an ESAME ASA64
          00001000       VPGGASAT       * VPGBK Aux Storage Address
1000 4096 Dbl-Word     8 VPGGANTR       Auxiliary Storage Address
1000 4096 Signed       4 VPGGASA0       Word 0 of ESAME ASATE
1004 4100 Signed       4 VPGGASA1       Word 1 of ESAME ASATE
1000 4096 Signed       2 VPGGACNM       Auxiliary Storage Cylinder Number
1002 4098 Bitstring    1 VPGGAPNM       Auxiliary Storage Page Number
1003 4099 Bitstring    1 VPGGAVOL       Auxiliary Storage Volume Code
1004 4100 Signed       4 VPGGPTRM       PTRM-specific data. Only valid in
                                        PTRM non-pageable PGM64s If
                                        PGSINVAL=b'0', then this is the
                                        ASA representing the second page
                                        of the PGM64 If PGSXSTOR=b'1',
                                        then this is the XSTORE block
                                        number representing the second
                                        page of the PGM64. .* .*

 

VPG64 Storage Layout

          
*** VPG64 - VIRTUAL PAGE BLOCK
*
*     +-------------------------------------------------------+
*   0 |                       VPGGPAG                         |
*     +-------------------------------------------------------+
*   8 |///////////////////////////////////////////////////////|
*     =///////////////////////////////////////////////////////=
*     |///////////////////////////////////////////////////////|
*     +-------------------------------------------------------+
* 800 |                       VPGGPGS                         |
*     +-------------------------------------------------------+
* 808 |///////////////////////////////////////////////////////|
*     =///////////////////////////////////////////////////////=
*     |///////////////////////////////////////////////////////|
*     +-------------------------------------------------------+
*1000 |                       VPGGASA                         |
*     +-------------------------------------------------------+
*1008 |///////////////////////////////////////////////////////|
*     =///////////////////////////////////////////////////////=
*     |///////////////////////////////////////////////////////|
*     +-------------------------------------------------------+
*1800
*
*** VPG64 - VIRTUAL PAGE BLOCK
          
*** Overlay for VPGGPAG in VPG64
*
*     +-------------------------------------------------------+
*   0 |                       VPGGPNTR                        |
*     +-------------------------------------------------------+
*   8
*
*** Overlay for VPGGPAG in VPG64
          
*** Overlay for VPGGPNTR in VPG64
*
*     +---------------------------+---------------------------+
*   0 |         VPGGPTE0          |         VPGGPTE1          |
*     +---------------------------+---------------------------+
*   8
*
*** Overlay for VPGGPNTR in VPG64
          
*** Overlay for VPGGPTE0 in VPG64
*
*     +-------------+-------------+---------------------------+
*   0 |  VPGGPLNK   |/////////////|///////////////////////////|
*     +-------------+-------------+---------------------------+
*   8
*
*** Overlay for VPGGPTE0 in VPG64
          
*** Overlay for VPGGPTE0 in VPG64
*
*     +---------------------------+---------------------------+
*   0 |         VPGGXSBN          |///////////////////////////|
*     +---------------------------+---------------------------+
*   8
*
*** Overlay for VPGGPTE0 in VPG64
          
*** Overlay for VPGGPTE0 in VPG64
*
*     +---------------------------+-------------+------+------+
*   0 |///////////////////////////|/////////////|:GPSTA|//////|
*     +---------------------------+-------------+------+------+
*   8
*
*** Overlay for VPGGPTE0 in VPG64
          
*** Overlay for VPGGPGS in VPG64
*
*     +-------------------------------------------------------+
* 800 |                       VPGGSNTR                        |
*     +-------------------------------------------------------+
* 808
*
*** Overlay for VPGGPGS in VPG64
          
*** Overlay for VPGGSNTR in VPG64
*
*     +---------------------------+---------------------------+
* 800 |         VPGGPGS0          |         VPGGPGS1          |
*     +---------------------------+---------------------------+
* 808
*
*** Overlay for VPGGSNTR in VPG64
          
*** Overlay for VPGGPGS0 in VPG64
*
*     +--------------------+------+
* 800 |     VPGGVRSF       |//////| 804
*     +--------------------+------+
*
*** Overlay for VPGGPGS0 in VPG64
          
*** Overlay for VPGGPGS0 in VPG64
*
*     +------+------+------+------+
* 800 |:GSVKY|:GSRCP|:GSFLG|:GSSTA| 804
*     +------+------+------+------+
*
*** Overlay for VPGGPGS0 in VPG64
          
*** Overlay for VPGGSSTA in VPG64
*
*                          +------+
* 800 ...              803 |:GMSTA| 804
*                          +------+
*
*** Overlay for VPGGSSTA in VPG64
          
*** Overlay for VPGGPGS1 in VPG64
*
*                                 +---------------------------+
* 800 ...                     804 |         VPGGAUX           |
*                                 +---------------------------+
* 808
*
*** Overlay for VPGGPGS1 in VPG64
          
*** Overlay for VPGGASA in VPG64
*
*     +-------------------------------------------------------+
*1000 |                       VPGGANTR                        |
*     +-------------------------------------------------------+
*1008
*
*** Overlay for VPGGASA in VPG64
          
*** Overlay for VPGGANTR in VPG64
*
*     +---------------------------+---------------------------+
*1000 |         VPGGASA0          |         VPGGASA1          |
*     +---------------------------+---------------------------+
*1008
*
*** Overlay for VPGGANTR in VPG64
          
*** Overlay for VPGGASA0 in VPG64
*
*     +-------------+------+------+
*1000 |  VPGGACNM   |:GAPNM|:GAVOL| 1004
*     +-------------+------+------+
*
*** Overlay for VPGGASA0 in VPG64
          
*** Overlay for VPGGASA1 in VPG64
*
*                                 +---------------------------+
*1000 ...                    1004 |         VPGGPTRM          |
*                                 +---------------------------+
*1008
*
*** Overlay for VPGGASA1 in VPG64

 

VPG64 Cross Reference

Symbol         Dspl Value
-------------- ---- -----
               0802 00
*              0802 VPGGSFLG
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 00
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 00
*              0802 40
*              0802 20
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 10
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 00
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 0*
*              0802 08
*              0802 04
*              0802 0*
*              0802 0*
*              0802 02
*              0802 0*
*              0802 0*
*              0802 06
PGSGCH         0801 02
PGSGREF        0801 04
PGSGUEST       0801 06
PGSHOST        0801 60
PGSINVAL       0802 80
PGSPCL         0801 80
PGSRCPHC       0801 20
PGSRCPHR       0801 40
RCPGCH         0801 02
RCPGREF        0801 04
RCPGUEST       0801 06
RCPHCH         0801 20
RCPHOST        0801 60
RCPHREF        0801 40
RCPLOCK        0801 80
VPGGACNM       1000
VPGGANTR       1000
VPGGAPNM       1002
VPGGASA        1000
VPGGASAT       0804 00001000
VPGGASA0       1000
VPGGASA1       1004
VPGGAUX        0804
VPGGAVOL       1003
VPGGMSTA       0803
VPGGNEXT       0008
VPGGPAG        0000
VPGGPGS        0800
VPGGPGST       0007 00000800
VPGGPGS0       0800
VPGGPGS1       0804
VPGGPLNK       0000
VPGGPNTR       0000
VPGGPSTA       0006
VPGGPTE        1008 00000000
VPGGPTE0       0000
VPGGPTE1       0004
VPGGPTRM       1004
VPGGSFLG       0802
VPGGSNTR       0800
VPGGSRCP       0801
VPGGSSTA       0803
VPGGSVKY       0800
VPGGVRSF       0800
VPGGXSBN       0000

This information is based on z/VM V4R1.0.
Last updated on 6 Jun 2001 at 12:45:27 EDT.
Copyright IBM Corporation, 1990, 2001