IASIT - 32-bit CP - V4R4.0

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

#### IASIT

Prolog

Control Block Contents
IASIT DSECT

Storage Layout

Cross Reference (Contains links to field and bit definitions)

#### IASIT Prolog

     Name       : HCPIASIT
     Description: Internal-Address-Space-Identification
                  Token
     DSECT      : IASIT
     Function   : This DSECT maps an i-ASIT, which is CP's internal
                  identification of an address space.
     Located by : Any task needing an identification of an address
                  space.  Some important fields which contain i-ASITs
                  are:
                  RSANASIT i-ASIT for "null" address space.
     Created by : HCPSIT%I when translating various representations of
                  address spaces into i-ASITs.
     Deleted by : Any task which no longer needs the representation.
     Notes      :
     An i-ASIT is an eight-byte token, doubleword aligned, and
     serves as a task's internal representation of a particular
     address space.  An i-ASIT contains information designating
     which address space, information defining the task's
     "capability" to access the address space, and information
     defining the method of translating addresses for that
     task.  Since it contains more information than just what
     is necessary to identify an address space, an i-ASIT
     cannot be directly compared to another i-ASIT to determine
     if the same space is designated.  A service routine (as
     provided by the HCPCMPIA macro) must be used for i-ASIT
     comparison purposes.
     The capabilities represented in an i-ASIT are the
     following:
       - r-access vs. i-access
       - Read/write vs. read/only permission
       - For guest instruction-stream references, whether
         guest prefixing, guest low-address protection,
         and guest fetch-protection override apply.
     Translation of a guest real address into a host real
     address is affected by whether or not the address space is
     the user's base address space, and whether or not the
     user's reference is a primary-space or secondary-space
     reference.  Prefixing, low-address protection, and
     fetch-protection override apply only when the space is the
     base, and when the access is a primary-space or
     secondary-space reference.
     An i-ASIT must be certified before it can be used for any
     purposes.  A certified i-ASIT is one that meets the
     following criteria:
        - The ASTE sequence number in the i-ASIT matches
          the ASTE sequence number in the ASTE (i- or r-access)
          *or*
        - ASCSEQNO <= ASITSN <= ASTSN          (r-access)
     The i-ASIT certification function is provided by either
     the HCPASMCI entry point or the HCPACERT macro (to be used
     only in cases where performance is a major concern, or the
     routine cannot call another routine which uses PFXTMPSV).
     Other services which process i-ASITS, such as HCPCMPIA
     and HCPCHCR7, handle certification of i-ASITs internally.

#### IASIT Control Block Content

#### IASIT DSECT

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      IASIT          Internal-Address-Space-Identifica
                                            tion
    0000    0 Address      4 IASASTEO (0)   Bits 1-25 are the ASTE origin
                                            NOTE: This field may ONLY be used
                                            in a certified i-ASIT, otherwise,
                                            it may point to an ASTE which has
                                            no relation to the i-ASIT.
              00FFFFC0       IASASTOM       X'7FFFFFC0' Mask to apply to
                                            IASASTEO to isolate ASTE origin.
              .... ..1.      IASREADM       X'00000002' Mask for read-only
                                            bit
              .... ...1      IASFPRVM       X'00000001' Mask for
                                            force-private-space bit
    0000    0 Bitstring    1 * (3)          First 3 bytes are ASTE origin
    0003    3 Bitstring    1 IASFLAGS       Authorization/capability flags
              .... .1..      IASRACC        X'04' When set, task has r-access
                                            to the address space.
              .... ..1.      IASREAD        X'02' When set, task has
                                            read-only access to space.
              .... ...1      IASFPRIV       X'01' Force-Private-Space bit
                                            When set, guest prefixing,
                                            low-address protection, and
                                            fetch-protection override do not
                                            apply. When not set, they do
                                            apply. Bits 0, 26-28, and 32 are
                                            unused and will be zeros.
    0004    4 Signed       4 IASASTSN       I-ASIT ASTE sequence number. It
                                            is compared with ASTE sequence
                                            number in ASTE.
              00000008       IASLEN         *-IASIT Length in bytes of an
                                            i-ASIT
              00000001       IASSIZE        (IASLEN+7)/8 Size in doublewords
                                            of an i-ASIT

#### IASIT Storage Layout

    *** IASIT - Internal-Address-Space-Identification
    *
    *     +--------------------+------+---------------------------+
    *   0 |////////////////////|:FLAGS|         IASASTSN          |
    *     +--------------------+------+---------------------------+
    *   8
    *
    *** IASIT - Internal-Address-Space-Identification

#### IASIT Cross Reference

    Symbol         Dspl Value
    -------------- ---- -----
    IASASTEO       0000
    IASASTOM       0000 00FFFFC0
    IASASTSN       0004
    IASFLAGS       0003
    IASFPRIV       0003 01
    IASFPRVM       0000 01
    IASLEN         0004 00000008
    IASRACC        0003 04
    IASREAD        0003 02
    IASREADM       0000 02
    IASSIZE        0004 00000001

This information is based on z/VM V4R4.0. Last updated on 29 Jul 2003 at 15:41:39 EDT.
Copyright IBM Corporation, 1990, 2003