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

#### PGS64

Prolog

Control Block Contents
PGS64 DSECT

Storage Layout

Cross Reference (Contains links to field and bit definitions)

#### PGS64 Control Block Content

#### PGS64 DSECT

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      PGS64          PAGE STATUS TABLE ENTRY
    0000    0 Dbl-Word     8 PGSGENTR       Virtual Page Status Entry
    0000    0 Signed       4 PGS64W0        PGSTE
    0004    4 Signed       4 PGS64W1        Reserved for IBM use
              00000008       PGSGLENT       *-PGSGENTR Length of one Status
                                            Table Entry
    0008    8 Signed       4 PGSGNEXT (0)   Next Page Status Table Entry
    0000    0 Bitstring    1 PGSGVKEY       Guest Storage key bits 0-4
              1111 ....      PGSVKACC       X'F0' Access-control key value
              .... 1...      PGSVKFET       X'08' Fetch-protection control
              1111 1...      PGSVKACF       PGSVKACC+PGSVKFET Acc-ctrl &
                                            fetch-prot bits
    0001    1 Bitstring    1 PGSGRCP        Architected area for RCP byte if
                                            storage key assist is being
                                            utilized, or the page belongs to
                                            the system.
              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. Can be changed
                                            with PCLONLY page serialization
                                            by tasks allowed to use PCLONLY.
                                            Set by page fault fastpath.
              .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
              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
          Note that the Page Control Lock and the RCP Interlock
          bit are one in the same if the Storage Key Assist is
          being utilized.
    0002    2 Bitstring    1 PGSGFLAG       Virtual Page Flags
              1... ....      PGSINVAL       X'80' No auxiliary storage
                                            assigned Notes : PGSINVAL, in
                                            combination with other PTE,
                                            PGSTE, and storage key status
                                            bits, is used by steal processing
                                            to identify first time reference
                                            pages of zeros which have never
                                            been re-referenced or changed and
                                            can simply be discarded. The
                                            "first time reference page of
                                            zeros" state is identified by the
                                            following bit combination:
                                            noformat 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) enoformat
                                            Any resident page in this state
                                            is assumed to be unchanged zeros,
                                            and therefore simply discardable
                                            by steal. No page with non-zero
                                            contents should ever be allowed
                                            to be in this state, or a lost
                                            page will eventually result. The
                                            host change bit, PGSRCPHC, should
                                            be used to indicate that a page
                                            which is unchanged, not already
                                            on DASD, and non-zero, must be
                                            eventually written to DASD. *
                                            Note that both reference bits
                                            (PGSRCPHR and the real storage
                                            frame reference bit) can
                                            "evaporate" to zero over time due
                                            to the action of the reorder
                                            function. Therefore, the fact
                                            that a frame has been referenced,
                                            or setting PGSRCPHR on, can not
                                            prevent a page from eventually
                                            entering this "first time
                                            reference page of zeros" state.
              .1.. ....      PGSSHARE       X'40' Page is a shared page
              ..1. ....      PGS1READ       X'20' ASA may be read only once.
                                            Used for shared pages. After the
                                            first read, this SDF (System Data
                                            File) ASA is to be ignored and
                                            the page left as changed. When
                                            the page is first written, it
                                            will go to a paging space ASA and
                                            this flag wil be turned off.
                                            PGS1READ on implies that page is
                                            read-only for the user.
              ...1 ....      PGSALLOC       X'10' Page in the system address
                                            space (or a system-owned utility
                                            address space) that is allocated,
                                            OR A shared CP page in the
                                            monitor DCSS that CP has
                                            translated and that has not yet
                                            been released by the user
                                            connected to the DCSS. When this
                                            bit is on: 1) The page is never
                                            part of a DASD block; 2) The
                                            associated PGMBK is never paged
                                            out.
              .... 1...      PGSFIXED       X'08' Storage slot permanently
                                            assigned >>PGSPGMIO was
                                            PGSIO1ST, PGSIO2ND
              .... .1..      PGSPGMIO       X'04' Indicates that pageable
                                            PGMBK I/O has not completed (PTRM
                                            page). Set when the first I/O
                                            completion interrupt is
                                            processed, reset when the second
                                            I/O completion interrupt is
                                            processed. Note the I/O can
                                            complete in either order.
                                            >>PGSPGMIM was PGSIOMSK
              00000400       PGSPGMIM       (PGSPGMIO)*256 >>PGSPRBN
                                            moved from PGSGSTAT
              .... ..1.      PGSPRBN        X'02' ASA is, in fact, a PRBN
                                            (pool- relative block number)
              .... ...1      PGSREADO       X'01' Storage slot (DASD) is
                                            read-only
    0003    3 Bitstring    1 PGSGSTAT       Virtual Page Status bits
              1... ....      PGSALTPT       X'80' Page is defined in an
                                            alternate Page table pointed from
                                            PGMGALTP
              .1.. ....      PGSPCL2        X'40' Page serialization bit. See
                                            serialization section of prolog
                                            for more information.
              ..1. ....      PGSLTSER       X'20' Page is "Long Term
                                            Serialized". May only be on if
                                            PGSPCL2 is also on (though PGSPCL
                                            may be on as well)
              ..1. ....      PGSTRANS       PGSLTSER Deprecated
              .... 1...      PGSXSTOR       X'08' Page is in XSTORE
              .... .1..      PGSBLOCK       X'04' This page is one page in a
                                            block of pages
              .... ..1.      PGSRABI        X'02' This page was read in as
                                            part of a block of pages. This
                                            bit can NOT be checked for PTRM
                                            pages, as it is redefined as
                                            PGSXSTMB in that case.
              .... ...1      PGSERROR       X'01' Page is in error. A storage
                                            error was detected in this page
                                            and the page could not be
                                            recovered. See serialization
                                            section of the prolog for role
                                            this bit plays in page
                                            serialization. When this bit is
                                            set, VMDRSSFG.VMDRSSUE must be
                                            set in the VMDBK that owns the
                                            space.
          PGS64W1 start
          PGSBYTE 4 Additional status bits
    0004    4 Bitstring    1 PGSBYTE4       Byte 4 of page status entry
              1... ....      PGSZBIT        X'80' Page-content-logically zero
                                            bit Only meaningful when the PTE
                                            is invalid.
              ..1. ....      PGSCLASS       X'20' The page class specifies
                                            which Delta-pinned-page-count
                                            array is to be used in
                                            maintaining pinned page counts.
                                            Page class 0 (bit is 0) specifies
                                            the DPPCA for base address space
                                            pages owned by user. Page class 1
                                            (bit is 1) specifies NSS/DCSS
                                            imbedded shared pages. The page
                                            class 0 DPPCA resides in the
                                            ASCBK and is pointed to by
                                            SIEDPPCAO in the format-2 state
                                            descriptor (SI2BK). The page
                                            class 1 DPPCA resides resides in
                                            RSMBK and is pointed to by
                                            PFXDPPCAO in the prefix area.
              ...1 ....      PGSOVFLW       X'10' The pin count (PGSPINCT)
                                            has overflowed and the current
                                            value does not represent the
                                            total pin count. The remainder of
                                            the total pin count is contained
                                            in both PGSOVFL1 (a one bit pin
                                            count overflow used to control
                                            hardware interception) and
                                            ASAOVFLW in the ASATE). PTE must
                                            be valid. Can be modified with
                                            PCLONLY page serialization by
                                            tasks allowed to use PCLONLY. Set
                                            by pin/unpin fastpaths,
                                            translation paths, and no-owned
                                            functions.
              .... 1...      PGSPROCL       X'08' Indicates page is on the
                                            processed list. Turned on by
                                            machine or fast path processing
                                            when corresponding FRMTE is put
                                            on processed list. Turned off by
                                            HCPPLP processed list processing.
                                            Can be modified with PCLONLY page
                                            serialization by tasks allowed to
                                            use PCLONLY. Set by HPMA or
                                            fastpath validate page.
              .... .1..      PGSCONRP       X'04' Indicates a
                                            content-replacement operation
                                            occurred on an HPMA Resolve host
                                            page function. Can be modified
                                            with PCLONLY page serialization
                                            by tasks allowed to use PCLONLY.
                                            Set by HPMA or fastpath validate
                                            page.
              .... ..1.      PGSUS0         X'02'
              .... ...1      PGSUS1         X'01'
              .... ..11      PGSUS          PGSUS0+PGSUS1
              .... ....      PGSUSS         0
              .... ...1      PGSUSU         1
              .... ..1.      PGSUSP         2
              .... ..11      PGSUSV         3
          PGSBYTE 5 Additional status bits
    0005    5 Bitstring    1 PGSBYTE5       Byte 5 of page status entry
                                            Reserved for IBM use
          PGSBYTE 6 Additional status bits
    0006    6 Bitstring    1 PGSBYTE6       Byte 6 of page status entry
                                            >>PGSCMDLK was FRMCPLOK
              1... ....      PGSCPLOK       X'80' A pageable page is locked
                                            in the frame (pinned) by the CP
                                            LOCK command, one increment of
                                            the total pin count represents
                                            the CP LOCK command lock.
                                            >>PGSD98LK was PGSVMSLK
              .1.. ....      PGSD98LK       X'40' A pageable page is locked
                                            in the frame (pinned) at Virtual
                                            Machine request via Diagnose
                                            x'98', one increment of the total
                                            pin count represents the Diagnose
                                            x'98' Virtual Machine lock.
              .... ..1.      PGSALIAS       X'02' Guest page has an SXS
                                            alias. This bit can only be
                                            tested if PAGGINVA is not set;
                                            i.e. the PTE must be valid.
              .... ...1      PGSOVFL1       X'01' A one bit pin count
                                            overflow count bit. Used to hold
                                            one pin count out of PGSPINCT to
                                            control hardware interception.
                                            PTE must be valid. Can be
                                            modified with PCLONLY page
                                            serialization by tasks allowed to
                                            use PCLONLY. Turned on/off by
                                            pin/unpin fastpaths, translation
                                            paths, and no-owned functions.
                                            Also turned on by HCPTRANS
                                            HOSTTYPE=LOGICAL, TRANSLATE=NO,
                                            LOCK=YES of a no-owned page that
                                            wasn't locked or pinned but was
                                            last translated. Gets turned off
                                            in edge-triggered cases.
    0007    7 Bitstring    1 PGSPINCT       Pin Count. Represents the number
                                            of pins (page locks) visible to
                                            hardware. If PGSOVFLW is set,
                                            does not represent the true total
                                            pin count. Additional pin count
                                            values are held in PGSOVFL1 (a
                                            one bit pin overflow count used
                                            to control hardware interception)
                                            and ASAOVFLW (a halfword pin
                                            overflow count where each "1"
                                            increment represents 128 pin
                                            count increments). PTE must be
                                            valid. Can be modified with
                                            PCLONLY page serialization by
                                            tasks allowed to use PCLONLY.
                                            Turned on/off by pin/unpin
                                            fastpaths, translation paths, and
                                            no-owned functions.
          PGS64W1 end
          Redefinition of PGSGSTAT for Pageable PGMBK (PTRM) pages
    0003    3 Bitstring    1 PGSGPSTA       Pageable PGMBK Virtual Page
                                            Status bits.
              .... ..1.      PGSXSTMB       X'02' This page (a pageable
                                            PGMBK) itself supports pages in
                                            XSTORE. This bit is only used for
                                            PTRM pages that currently reside
                                            in XSTORE (PGSXSTOR must also be
                                            on if PGSXSTMB is on). Note that
                                            this bit is a redefinition of the
                                            PGSRABI bit, which is acceptable
                                            since pageable PGMBKs (PTRM
                                            pages) are never blocked.

#### PGS64 Storage Layout

    *** PGS64 - PAGE STATUS TABLE ENTRY
    *
    *     +-------------------------------------------------------+
    *   0 |                       PGSGENTR                        |
    *     +-------------------------------------------------------+
    *   8
    *
    *** PGS64 - PAGE STATUS TABLE ENTRY

    *** Overlay for PGSGENTR in PGS64
    *
    *     +---------------------------+---------------------------+
    *   0 |         PGS64W0           |         PGS64W1           |
    *     +---------------------------+---------------------------+
    *
    *** Overlay for PGSGENTR in PGS64

    *** Overlay for PGS64W0 in PGS64
    *
    *     +------+------+------+------+------+------+------+------+
    *   0 |:GVKEY|:GRCP |:GFLAG|:GSTAT|:BYTE4|:BYTE5|:BYTE6|:PINCT|
    *     +------+------+------+------+------+------+------+------+
    *   8
    *
    *** Overlay for PGS64W0 in PGS64

    *** Overlay for PGSGSTAT in PGS64
    *
    *                          +------+
    *   0 ...                3 |:GPSTA| 4
    *                          +------+
    *
    *** Overlay for PGSGSTAT in PGS64

#### PGS64 Cross Reference

    Symbol         Dspl Value
    -------------- ---- -----
    PGSALIAS       0006 02
    PGSALLOC       0002 10
    PGSALTPT       0003 80
    PGSBLOCK       0003 04
    PGSBYTE4       0004
    PGSBYTE5       0005
    PGSBYTE6       0006
    PGSCLASS       0004 20
    PGSCONRP       0004 04
    PGSCPLOK       0006 80
    PGSD98LK       0006 40
    PGSERROR       0003 01
    PGSFIXED       0002 08
    PGSGCH         0001 02
    PGSGENTR       0000
    PGSGFLAG       0002
    PGSGLENT       0004 00000008
    PGSGNEXT       0008
    PGSGPSTA       0003
    PGSGRCP        0001
    PGSGREF        0001 04
    PGSGSTAT       0003
    PGSGUEST       0001 06
    PGSGVKEY       0000
    PGSHOST        0001 60
    PGSINVAL       0002 80
    PGSLTSER       0003 20
    PGSOVFLW       0004 10
    PGSOVFL1       0006 01
    PGSPCL         0001 80
    PGSPCL2        0003 40
    PGSPGMIM       0002 00000400
    PGSPGMIO       0002 04
    PGSPINCT       0007
    PGSPRBN        0002 02
    PGSPROCL       0004 08
    PGSRABI        0003 02
    PGSRCPHC       0001 20
    PGSRCPHR       0001 40
    PGSREADO       0002 01
    PGSSHARE       0002 40
    PGSTRANS       0003 20
    PGSUS          0004 03
    PGSUSP         0004 02
    PGSUSS         0004 00
    PGSUSU         0004 01
    PGSUSV         0004 03
    PGSUS0         0004 02
    PGSUS1         0004 01
    PGSVKACC       0000 F0
    PGSVKACF       0000 F8
    PGSVKFET       0000 08
    PGSXSTMB       0003 02
    PGSXSTOR       0003 08
    PGSZBIT        0004 80
    PGS1READ       0002 20
    PGS64W0        0000
    PGS64W1        0004
    RCPGCH         0001 02
    RCPGREF        0001 04
    RCPGUEST       0001 06
    RCPHCH         0001 20
    RCPHOST        0001 60
    RCPHREF        0001 40
    RCPLOCK        0001 80

This information is based on z/VM V5R2.0. Last updated on 12 Apr 2006 at 17:39:46 EDT.
Copyright IBM Corporation, 1990, 2005