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

#### ASTE

Prolog

Control Block Contents
ASTE DSECT

Storage Layout

Cross Reference (Contains links to field and bit definitions)

#### ASTE Prolog

     Name       : HCPASTE
     Description: ASN-Second-Table Entry
     DSECT      : ASTE
     Function   : The ASTE maps the storage associated with one entry
                  of an ASN-Second Table. The entry is used in ASN
                  and AR translation, and is also used to access
                  other information associated with an address space.
                  Notes      : In ESA/390, CR0.15 is the address space control
                  bit.  If set the ASTE length is 64 bytes.
                  Otherwise, the length is 16 bytes.  The
                  first 16 bytes are mapped identically
                  regardless of the length.
                  Notes      : In z/Arch, all ASTEs are 64 bytes in length,
                  CR0.15 does not apply. However, the z/Arch ASTE
                  is slightly different from the ESA/390 ASTE.
                  We need both the
                  z/Arch ASTE mapping (for host ASTEs and z/Arch
                  guest ASTEs) and the ESA/390 ASTE mapping (for
                  ESA/390 guest ASTEs).  Since most of the ASTE
                  definition is identical for both ASTE formats,
                  the entire definition is not duplicated.
                  Instead, only the 3 words ( words 2, 3 and 6 )
                  which differ between the two formats are
                  defined separately.
     Located by : ASN and AR translation
                  ASTEs for address spaces built by CP are located by
                  the ASCASTE pointer of the associated ASCBK.
                  An ASTE is part of an ASN second table (AST). The
                  beginning of the table is pointed to by:
                  - An ASN first table entry (AFTE)
                  The AST is indexed into by an ASN second index (ASX).
                  An ASTE may be directly pointed to by:
                  - An access list entry (ALE)
                  - CR5 (when the ASTE is the primary ASTE)
                  - An entry table entry (ETE)
                  There is also an ASTE within MWBK.
     Created by : ASTEs for address spaces built by CP are
                  initialized by HCPASMCR, though the storage
                  is managed by HCPVCB.
                  Within MWBK: HCPMWPBL - MAS work area build
                  The ASTE is also used to map guest ASN Second Table
                  Entries in guest storage.
     Deleted by : Once storage has been allocated as an ASTE for an
                  address space built by CP, it can never be used for
                  anything else.  Though it may no longer represent an
                  ASTE for an active address space (HCPASMDS "destroys"
                  a space), the ASTE itself will be held in reserve
                  until it can be given out again as an ASTE (with a
                  different ASTE sequence number).  The popular phrase
                  is "ASTEs are forever".
                  Within MWBK: HCPMWPDL - MAS work area delete
     Serialized : ASTEs for address spaces built by CP are generally
                  serialized by the ASCBK lock in the associated ASCBK.
                  Addtionally, for V=V guests, ASTASCE is
                  serialized by the owning virtual configuration's
                  VMDPTIL (in the base VMDBK) held exclusive (to
                  change).
                  The ASTALD field is serialized by the ALCBK lock in
                  ALCBK associated with the access list, if there is a
                  primary-space access list.
                  Within MWBK: See MWBK prologue.
                  When used to map guest storage, the user of the
                  DSECT is responsible for serialization.

#### ASTE Control Block Content

#### ASTE DSECT

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      ASTE           ASN-Second-Table Entry
              00000010       ASTBSALG       16 Basic ASTE must be aligned on
                                            16-byte boundary.
              00000040       ASTEXALG       64 Extended ASTE must be aligned
                                            on 64-byte boundary.
    0000    0 Bitstring   64 * (0)
    0000    0 Bitstring   16 ASTBASI (0)
    0000    0 Signed       4 ASTW0 (0)      Word 0 of the ASTE
              000ASTW0       ASTATOM        X'7FFFFFFC' Authority table
                                            origin in word 0
    0000    0 Signed       4 ASTATO         Authority-Table Origin
    0004    4 Signed       4 ASTW1 (0)      Word 1 of the ASTE
              000ASTW1       ASTATLM        X'0000FFF0' Authority table
                                            length in word 1
    0004    4 Signed       2 ASTAX          Authorization Index
    0006    6 Signed       2 ASTATL (0)     Authority Table Length
    0006    6 Bitstring    1 ASTATL_0       Byte 0
    0007    7 Bitstring    1 ASTATL_1       Byte 1
              .... ..1.      ASTCA          X'02' Controlled ASN (ESAME)
              .... ...1      ASTRA          X'01' Reusable ASN (ESAME)
          Bits 64 through 127 of the ASTE are defined differently
          for ESA/390 ASTEs than for z/Arch ASTEs.
          We need *BOTH* the
          390 and z/Arch definitions, with different names, to be
          able to handle both 390 and z/Arch guests.
          ESA/390 ASTE bits 64 through 127:
            - Bits 64 through 95 contain the ESA/390 STD
            - Bits 96 through 127 contain the LTD
    0008    8 Signed       4 ASTSTD         ESA/390 ASTE Segment-Table
                                            Designation
    000C   12 Signed       4 ASTLTD         ESA/390 ASTE Linkage-Table
                                            Designation
    0008    8 Bitstring    1 ASTSTDB0       Byte 0
              1... ....      ASTSTDSS       X'80' Space-Switch-Event Control
    0009    9 Bitstring    3 *              Bytes 1-3
    000C   12 Bitstring    1 ASTLTDB0       Byte 0
              1... ....      ASTLTDSL       X'80' Subsystem-Linkage Control
    000D   13 Bitstring    3 *              Bytes 1-3
         * z/Arch ASTE bits 64 through 127
          z/Arch ASTE bits 64 through 127 contain the 64-bit ASCE
          (Address-Space-Control Element), which has either an RTD
          (Region-Table Designation) or a z/Arch STD.  The z/Arch
          ASTE LTD is moved to bits 192-223.
    0008    8 Dbl-Word     8 ASTASCE        z/Arch ASTE Address-Space-
                                            Control Element
    0008    8 Signed       4 ASTASCE0       Word 0 of z/Arch ASTE ASCE
    000C   12 Signed       4 ASTASCE1       Word 1 of z/Arch ASTE ASCE
    0010   16 Signed       4 ASTALD         Access-List Designation
    0014   20 Signed       4 ASTSN          ASTE Sequence Number
              .... ....      ASTSNJM        X'80000000' J-bit. When this bit
                                            is set in ASTEs built by CP, the
                                            ASTE is in a state of flux. This
                                            bit is set to force sequence
                                            number mismatches by ART and
                                            i-ASIT certification.
              000ASTSN       ASTSNMAX       X'7FFFFFFF'-1000 Maximum sequence
                                            ASTSN value. Free storage will no
                                            longer give out an ASTE when
                                            ASTSN exceeds this value.
          Bits 192 through 223 of the ASTE are defined differently
          for ESA/390 ASTEs than for z/Arch ASTEs:
          ESAME ASTE bits 192 through 223 contain the LTD or LFTD.
    0018   24 Signed       4 ASTGLTD        z/Arch ASTE Linkage-Table
                                            Designation if ASN-and-LX-Reuse
                                            is not enabled
    0018   24 Signed       4 ASTGLFTD       ESAME ASTE Linkage-First-Table
                                            Designation if ASN-and-LX-Reuse
                                            is enabled
    001C   28 Signed       4 ASTPRGM (0)    Reserved for use by programming
                                            Note: The storage for some ASTEs
                                            is obtained/released by the
                                            verifiable control block manager.
                                            It uses this field to chain
                                            inactive ASTEs together. Bit zero
                                            indicates whether the block is
                                            active (0) or inactive (1).
    001C   28 Bitstring    1 ASTSTAT        Status of this ASTE (bit 0 only)
              1... ....      ASTINACT       X'80' This ASTE is inactive
    001D   29 Bitstring    1 * (3)          Place holder
          The following field definitions map the CP usage area
          in the next 8 bytes of the architected ASTE definition.
          These bytes are architected as "Available for programming".
    0020   32 Dbl-Word     8 ASTEID (0)     ASTE identifier In CP usage, this
                                            is an e-ASIT.
    0020   32 Dbl-Word     8 ASTEASIT (0)   CP usage: ASTE e-ASIT.
    0020   32 Signed       4 ASTEID1 (0)    ASTE identifier, word 1. In CP
                                            usage, this is the ASTE origin.
    0020   32 Signed       4 ASTASTEO       CP usage: ASTE origin.
    0024   36 Signed       4 ASTEID2 (0)    ASTE identifier, word 2. In CP
                                            usage, this is the space creation
                                            sequence number.
    0024   36 Signed       4 ASTSCRSN       CP usage: ASTE space creation
                                            sequence number.
          When ASN-and-LX-Reuse is enabled,
          ESAME bytes 44-47 contain the ASTE Instance Number.
    0028   40 Bitstring    4 *              Reserved for IBM use
    002C   44 Signed       4 ASTIN          ASTE Instance Number Used during
                                            ASN translation when
                                            ASN-and-LX-Reuse facility is
                                            enabled (z/Arch guest). Reserved
                                            for IBM use (390 guest).
    0030   48 Bitstring   16 *              Reserved for IBM use
              00000040       ASTLEN         *-ASTE Entry size in bytes
              00000002       ASTBSIZE       (ASTBLEN+7)/8 Size in doublewords
                                            of the ASTBASI
              00000008       ASTSIZE        (ASTLEN+7)/8 Size in doublewords
                                            of the ASTE
                 ASTE Redefinition areas
    0000    0 Bitstring    1 ASTATOB0       Byte 0
              1... ....      ASTINV         X'80' ASX-invalid bit, Address
                                            space is not available
    0001    1 Bitstring    2 *              Bits 8 through 23
    0003    3 Bitstring    1 ASTATOB3       Byte 3
              .... ..11      ASTAT370       X'03' Bits must be zero
    0006    6 Bitstring    1 *              Bits 0 through 7
    0007    7 Bitstring    1 ASTATLB1       Byte 1
              .... 1111      ASTATLZ        X'0F' Bits must be zero
          Note : An active ASTE should always have bit zero = 0.
                 Do NOT change bit zero of ASTASCBK.
                 See ASTPRGM for more details.
    001C   28 Address      4 ASTASCBK       Address of ASCBK in ASTEs built
                                            by CP.

#### ASTE Storage Layout

    *** ASTE - ASN-Second-Table Entry
    *
    *     +---------------------------+-------------+------+------+
    *   0 |          ASTATO           |   ASTAX     |:ATL_0|:ATL_1|
    *     +---------------------------+-------------+------+------+
    *   8 |          ASTSTD           |          ASTLTD           |
    *     +---------------------------+---------------------------+
    *  10
    *
    *** ASTE - ASN-Second-Table Entry

    *** Overlay for ASTSTD in ASTE
    *
    *     +------+--------------------+
    *   8 |:STDB0|////////////////////| C
    *     +------+--------------------+
    *
    *** Overlay for ASTSTD in ASTE

    *** Overlay for ASTLTD in ASTE
    *
    *                                 +------+--------------------+
    *   8 ...                       C |:LTDB0|////////////////////|
    *                                 +------+--------------------+
    *  10
    *
    *** Overlay for ASTLTD in ASTE

    *** Overlay for ASTSTD in ASTE
    *
    *     +-------------------------------------------------------+
    *   8 |                       ASTASCE                         |
    *     +-------------------------------------------------------+
    *  10
    *
    *** Overlay for ASTSTD in ASTE

    *** Overlay for ASTASCE in ASTE
    *
    *     +---------------------------+---------------------------+
    *   8 |         ASTASCE0          |         ASTASCE1          |
    *     +---------------------------+---------------------------+
    *  10 |          ASTALD           |          ASTSN            |
    *     +---------------------------+---------------------------+
    *  18 |         ASTGLTD           | 1C
    *     +---------------------------+
    *
    *** Overlay for ASTASCE in ASTE

    *** Overlay for ASTGLTD in ASTE
    *
    *     +---------------------------+------+--------------------+
    *  18 |         ASTGLFTD          |:STAT |////////////////////|
    *     +---------------------------+------+--------------------+
    *  20 |         ASTASTEO          |         ASTSCRSN          |
    *     +---------------------------+---------------------------+
    *  28 |///////////////////////////|          ASTIN            |
    *     +---------------------------+---------------------------+
    *  30 |///////////////////////////////////////////////////////|
    *     |///////////////////////////////////////////////////////|
    *     +-------------------------------------------------------+
    *  40
    *
    *** Overlay for ASTGLTD in ASTE

    *** Overlay for ASTATO in ASTE
    *
    *     +------+-------------+------+
    *   0 |:ATOB0|/////////////|:ATOB3| 4
    *     +------+-------------+------+
    *
    *** Overlay for ASTATO in ASTE

    *** Overlay for ASTATL in ASTE
    *
    *                                               +------+------+
    *   0 ...                                     6 |//////|:ATLB1|
    *                                               +------+------+
    *   8
    *
    *** Overlay for ASTATL in ASTE

    *** Overlay for ASTPRGM in ASTE
    *
    *                                 +---------------------------+
    *  18 ...                      1C |         ASTASCBK          |
    *                                 +---------------------------+
    *  20
    *
    *** Overlay for ASTPRGM in ASTE

#### ASTE Cross Reference

    Symbol         Dspl Value
    -------------- ---- -----
    ASTALD         0010
    ASTASCBK       001C
    ASTASCE        0008
    ASTASCE0       0008
    ASTASCE1       000C
    ASTASTEO       0020
    ASTATL         0006
    ASTATL_0       0006
    ASTATL_1       0007
    ASTATLB1       0007
    ASTATLM        0004 000ASTW1
    ASTATLZ        0007 0F
    ASTATO         0000
    ASTATOB0       0000
    ASTATOB3       0003
    ASTATOM        0000 000ASTW0
    ASTAT370       0003 03
    ASTAX          0004
    ASTBASI        0000
    ASTBSALG       0000 00000010
    ASTBSIZE       0030 00000002
    ASTCA          0007 02
    ASTEASIT       0020
    ASTEID         0020
    ASTEID1        0020
    ASTEID2        0024
    ASTEXALG       0000 00000040
    ASTGLFTD       0018
    ASTGLTD        0018
    ASTIN          002C
    ASTINACT       001C 80
    ASTINV         0000 80
    ASTLEN         0030 00000040
    ASTLTD         000C
    ASTLTDB0       000C
    ASTLTDSL       000C 80
    ASTPRGM        001C
    ASTRA          0007 01
    ASTSCRSN       0024
    ASTSIZE        0030 00000008
    ASTSN          0014
    ASTSNJM        0014 00
    ASTSNMAX       0014 000ASTSN
    ASTSTAT        001C
    ASTSTD         0008
    ASTSTDB0       0008
    ASTSTDSS       0008 80
    ASTW0          0000
    ASTW1          0004

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