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

#### ASCBK

Prolog

Control Block Contents
ASCBK DSECT

Storage Layout

Cross Reference (Contains links to field and bit definitions)

#### ASCBK Prolog

     NAME       : HCPASCBK
     DESCRIPTION: Address-Space-Control Block
     DSECT      : ASCBK
     FUNCTION   : Contain information about an address space.
                  The ASCBK is essentially CP's software extension
                  to the ASN-second-table entry (ASTE) describing
                  the address space.
     LOCATED BY : ASTASCBK field of the ASTE defining the address space
     CREATED BY : HCPASMCR
     DELETED BY : HCPASMDS
     SERIALIZED : Many fields in the ASCBK are static for the life of
                  the address space.  Most of the rest of them are
                  serialized by the ASCBK lock, the lockword for which
                  is at ASCLOCK.
                  Various fields are serialized by:
                  - ASCBK lock (ASCLOCK)
                  - MP Defer
                  - Console-function mode
                  - XSTSTATL
     COMMENTS   : The ASCBK must reside on a doubleword boundary.

#### ASCBK Control Block Content

#### ASCBK DSECT

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      ASCBK          Address-Space-Control Block
         Address space management area.
         This area contains fields used to manage and locate the address space
         itself. All fields in this area are serialized by the ASCBK lock (the
         lockword at ASCLOCK) unless specifically noted otherwise.
    0000    0 Address      4 ASCOFPNT       Forward pointer to next ASCBK in
                                            chain of ASCBKs anchored from
                                            VMDASCBK of the owner's base
                                            VMDBK. This chain defines what
                                            address spaces are owned by the
                                            VMDBK. SYSTEM-owned spaces are
                                            anchored from the SYSTEM VMDBK.
                                            This field is serialized by the
                                            owner's ASCBK-queue lock
                                            (VMDASCLK). The chain is ended by
                                            a forward pointer of zero.
    0004    4 Address      4 ASCSFPNT       Forward pointer to next ASCBK in
                                            the chain of ASCBKs anchored from
                                            RSASHRSP in HCPRSM. This is the
                                            chain of shareable address
                                            spaces, and is serialized by the
                                            lock at RSASHRLK. The chain is
                                            ended by a forward pointer of
                                            zero.
    0008    8 Address      4 ASCSBPNT       Backward pointer to previous
                                            ASCBK in the chain of ASCBKs
                                            anchored from RSASHRSP in HCPRSM.
                                            The ASCSBPNT field of the first
                                            ASCBK in the chain is zeros.
    000C   12 Signed       4 ASCSEQNO       r-access sequence number,
                                            incremented on address space
                                            reset to match the ASTE sequence
                                            number (ASTSN). r-access i-ASITs
                                            (which use this sequence number)
                                            are sensitive to address space
                                            reset operations.
    0010   16 Character   32 ASCSPCID (0)   Space identification:
    0010   16 Character    8 ASCUSRID       Owning userid, padded on right
                                            with blanks.
    0018   24 Character   24 ASCNAME        Address space name, padded on
                                            right with blanks.
    0030   48 Address      4 ASCSNTBK       Pointer to owning SNTBK
                                            (ASCTSNT=1)
    0034   52 Bitstring    4 *              Reserved for IBM use
    0038   56 Dbl-Word     8 ASCEASIT (0)   ASCBK e-ASIT.
    0038   56 Address      4 ASCASTE        Pointer to ASN-Second-Table Entry
                                            (ASTE) for the address space.
                                            Serialized by task ownership at
                                            creation, thereafter unchanged
                                            until space is destroyed.
    003C   60 Signed       4 ASCSCRSN       Address space creation sequence
                                            number.
    0040   64 Address      4 ASCSPIBK       Pointer to chain of SPIBKs
                                            designating which users are
                                            permitted to attach this space to
                                            their guest-use access list. This
                                            field is serialized by the
                                            space-permission- manager lock
                                            (RSASPMLK in HCPRSMCM).
    0044   68 Address      4 ASCOWNER       Pointer to (base) VMDBK of owning
                                            virtual configuration, or SYSTEM
                                            VMDBK if CP owned.
    0048   72 Dbl-Word     8 ASCLOCK (3)    Lockword for shared/exclusive
                                            defer lock, protecting fields in
                                            the ASCBK and ASTE. For System
                                            Utility address spaces managed by
                                            HCPVAMAP and HCPVAMDP and
                                            HCPASURO, ASCLOCK exclusive is
                                            sufficient to invalidate a SEGTE
                                            without SEGTRANS. A share of
                                            ASCLOCK must be obtained *before*
                                            trying to obtain SEGTRANS when
                                            validating the SEGTE. .* .*
                                            -WAH-> The presence of
                                            discontiguous defined storage via
                                            -WAH-> DEF STOR CONFIG does
                                            not change the definition, though
                                            -WAH-> there is now no
                                            guarantee that all bytes below
                                            -WAH-> ASCHIBYT are defined or
                                            addressable (therefore, all
                                            -WAH-> references to "size" in
                                            the ASCHIBYT definition have
                                            -WAH-> been changed to
                                            "address limit").
    0060   96 Dbl-Word     8 ASCHIBYT       The highest addressable byte of
                                            storage in this address space.
                                            The "address limit" of the
                                            address space in bytes is one
                                            greater than this value. Since
                                            X'FFFFFFFF_FFFFFFFF' is a valid
                                            address in ESAME, code must check
                                            for wrap-to-zero when adding one
                                            to ASCHIBYT to calculate the
                                            "address limit" of the address
                                            space in bytes. *NOTE** ASCHIBYT,
                                            in ESAME, is similar to, *NOTE**
                                            but not identical to, ASCSSIZE in
                                            *NOTE** ESA/390.
    0068  104 Dbl-Word     8 ASCDEFSZ       Defined storage size in
                                            addressable bytes, minus one. If
                                            DEF STOR CONFIG was used to
                                            define multiple discontiguous
                                            extents of addressable defined
                                            storage, this field contains the
                                            sum of the sizes in bytes of all
                                            of the individual extents (minus
                                            one). Minus one notation used so
                                            that a total size of 16 Ekabytes
                                            may be represented without
                                            ambiguity (as
                                            x'FFFFFFFF_FFFFFFFF').
    0070  112 Signed       4 *              Reserved for IBM use .* .* End of
                                            ESAME build only code .*
    0074  116 Bitstring    1 ASCSTATE       Flags indicating current state
                                            Serialized by holding ASCLOCK
                                            exclusive, the owning VMDBK's
                                            PTIL exclusive, AND by Console
                                            Function mode on the owning user.
              1... ....      ASCSHARE       X'80' At least one configuration
                                            other than the owner has
                                            permission to access this address
                                            space.
              .1.. ....      ASCPUBLC       X'40' Any user may attach this
                                            address space to their guest-use
                                            access list for read/only access.
              .... ...1      ASCMDEXT       X'01' DEFINE STORAGE CONFIG has
                                            been used to define multiple
                                            discontiguous addressable extents
                                            for this address space. The
                                            ASCSTCFG area contains the
                                            storage configuration definition.
    0075  117 Bitstring    1 ASCTYPE        Code indicating type of address
                                            space These are assigned as bits,
                                            but only one bit will ever be
                                            set. This is done to allow code
                                            to test for combinations with one
                                            instruction.
              1... ....      ASCTUSER       X'80' A user's base address space
              .1.. ....      ASCTDATA       X'40' A data space created by
                                            user request through diagnose
                                            x'23C'
              ..1. ....      ASCTSYSX       X'20' The system-execution
                                            address space
              ...1 ....      ASCTSYSU       X'10' A system utility address
                                            space
              .... .1..      ASCTSNT        X'04' An SNTBK "address space"
                                            Bit definitions - Options for
                                            HCPASMCR, R2 byte 0{5}
              .... ...1      ASMSHRLK       X'01' RSMSHRLK is held exclusive
                                            by caller
              .... ..1.      ASM64PTR       X'02' R0 input to HCPASMCR
                                            contains a 31-bit pointer to a
                                            doubleword in storage which
                                            contains a 64-bit value giving
                                            the size, in bytes, of the
                                            address space to be created.
              .... .1..      ASM64REG       X'04' R0 input to HCPASMCR
                                            contains a 64-bit value giving
                                            the size, in bytes of the address
                                            space to be created. Bit
                                            definitions - Options for
                                            HCPASNIS
              1... ....      ASMISOL8       X'80' Process an "isolate"
                                            request by the owner of the
                                            address space.
              .1.. ....      ASMRESET       X'40' Process a reset on the
                                            owner of the address space.
              ..1. ....      ASMDESTR       X'20' Process a destroy
                                            operation.
              1... ....      ASCTUSER       X'80' A user's base address space
              .1.. ....      ASCTDATA       X'40' A data space created by
                                            user request through diagnose
                                            x'23C'
              ..1. ....      ASCTSYSX       X'20' The system-execution
                                            address space
              ...1 ....      ASCTSYSU       X'10' A system utility address
                                            space
              .... .1..      ASCTSNT        X'04' An SNTBK "address space"
                                            Bit definitions - Options for
                                            HCPASMCR, R2 byte 0{5}
              .... ...1      ASMSHRLK       X'01' RSMSHRLK is held exclusive
                                            by caller
              .... ..1.      ASM64PTR       X'02' R0 input to HCPASMCR
                                            contains a 31-bit pointer to a
                                            doubleword in storage which
                                            contains a 64-bit value giving
                                            the size, in bytes, of the
                                            address space to be created.
              .... .1..      ASM64REG       X'04' R0 input to HCPASMCR
                                            contains a 64-bit value giving
                                            the size, in bytes of the address
                                            space to be created. Bit
                                            definitions - Options for
                                            HCPASNIS
              1... ....      ASMISOL8       X'80' Process an "isolate"
                                            request by the owner of the
                                            address space.
              .1.. ....      ASMRESET       X'40' Process a reset on the
                                            owner of the address space.
              ..1. ....      ASMDESTR       X'20' Process a destroy
                                            operation.
    0076  118 Bitstring    1 ASCFRMCD       Frame use code for this address
                                            space
    0077  119 Bitstring    1 ASCKEY         Bits 0-7 are the key with which
                                            to initialize pages in the
                                            address space.
    0078  120 Signed       4 ASCIACCT       Count of i-access pages in the
                                            address space which are locked or
                                            under (possible loss of control)
                                            translation through this ASCBK.
    007C  124 Signed       4 ASCRACCT       Count of r-access pages in the
                                            address space which are locked or
                                            under (possible loss of control)
                                            translation through this ASCBK.
    0080  128 Address      4 ASCTYPTR       Pointer to address space type
                                            specific control block (PTRMB for
                                            PTRM address spaces). The address
                                            space type specific control block
                                            must itself contain a CP use
                                            Address space Allocation block
                                            (CAABK) at offset zero.
    0084  132 Bitstring    1 ASCFOLST       Flags indicating what Frame Owned
                                            list (Owning VMDBK UFO, or
                                            Shared) frames are to be put on.
              1... ....      ASCOUFO        X'80' Frames for this address
                                            space are to be placed on the
                                            owning VMDBK's UFO list.
              .1.. ....      ASCSFO         X'40' Frames for this address
                                            space are to be placed on the
                                            Shared Frame Owned (SFO) list.
         WARNING: There is code in various places that checks the address space
         sub-type flag value without first checking address space type flag, so
         be very careful to avoid duplication when defining new sub-types.
    0085  133 Bitstring    1 ASCSUTYP       Flags indicating address space
                                            sub-type.
              1... ....      ASCUPTRM       X'80' A PTRM address space
                                            (sub-type of type ASCTSYSU).
              .1.. ....      ASCUPREF       X'40' A preferred (V=R or V=F)
                                            address space (sub-type of type
                                            ASCTUSER).
              ..1. ....      ASCUVDSK       X'20' A VDISK address space
                                            (sub-type of type ASCTSYSU).
              ...1 ....      ASCUFTC        X'10' A full track cache address
                                            space (sub-type of ASCTSYSU)
              .... 1...      ASCUCONN       X'08' The Connectivity (aka ISFC)
                                            address space (sub-type of type
                                            ASCTSYSU).
              .... .1..      ASCUIDNT       X'04' The System-Identity address
                                            space, which identity maps all
                                            storage below 2G with DAT tables
                                            (sub-type of ASCTSYSU).
              .... ..1.      ASCUREAL       X'02' The System-Real address
                                            space, which identity maps all of
                                            real storage (including real
                                            storage above 2G) using an RSD
                                            (ESAME build only) (sub-type of
                                            ASCTSYSU).
    0086  134 Bitstring    1 ASCSTSIZ       Segment table size in STL units
              00000001       ASCSTS32       X'01' Segment table size = 128
                                            bytes, addressing up to 32M,
                                            maximum virtual address =
                                            x'01FFFFFF'. For guest primary
                                            address space ASCBKs, ASCSTSIZ =
                                            ASCSTS32 indicates that the
                                            segment table resides in the
                                            VMDLSEG field at the beginning of
                                            the guest base VMDBK. Note:
                                            ASCSTS32 == STDSTL01 Notes :
                                            ASCSTSIZ may have values in
                                            between ASCSTS32 (32M) and
                                            ASCSTS1G (1G). In these cases the
                                            value represents the size of the
                                            segment table when a segment
                                            table is allocated from a free
                                            storage frame. The remainder of
                                            the real storage frame is in use
                                            for GUESTPERM type VMDBK free
                                            storage.
              0000003F       ASCSTS1G       X'3F' Segment table size = 4096
                                            bytes, addressing up to 1024M,
                                            maximum virtual address =
                                            x'3FFFFFFF'. Note: ASCSTS1G ==
                                            STDSTL3F Notes : ASCSTSIZ may
                                            have values in between ASCSTS1G
                                            (1G) and ASCSTS2G (2G). In these
                                            cases the value represents the
                                            size of the segment table when
                                            the remainder of the second frame
                                            of the segment table (past the
                                            end of the contiguous segment
                                            table) was allocated from a free
                                            storage frame. The remainder of
                                            the second real storage frame is
                                            in use for GUESTPERM type VMDBK
                                            free storage.
              0000007F       ASCSTS2G       X'7F' Segment table size = 8192
                                            bytes, addressing up to 2048M,
                                            maximum virtual address =
                                            x'7FFFFFFF'. Note: ASCSTS2G ==
                                            STDSTL7F
    0087  135 Bitstring    1 *              Reserved for IBM use
    0088  136 Signed       4 ASCMSO         Main Storage Origin for preferred
                                            guest (V=R or V=F) base address
                                            space. Only valid when ASCTYPE =
                                            ASCTUSER and ASCSUTYP = ASCUPREF.
    008C  140 Signed       4 ASCCTSPI       Count of users permitted to this
                                            address space. Equal to the
                                            number of SPIBKs on the ASCSPIBK
                                            queue. Serialized by the Space
                                            Permission Manager lock (RSASPMLK
                                            in HCPRSAMP).
         End of Address Space management area
         Address space statistics area.
         Current usage information for this address space
    0090  144 Signed       4 ASCCTPRS       Count of resident pages < 2G
    0094  148 Signed       4 ASCCTPLK       Count of locked pages
    0098  152 Signed       4 ASCCTPGS       Count of paging slots.
    009C  156 Signed       4 ASCCTXBK       Count of xstore blocks in this
                                            address space. XSTSTATL must be
                                            held to update this field.
    00A0  160 Signed       4 *              Reserved for ASCCTPRG expansion
    00A4  164 Signed       4 ASCCTPRG       Count of resident pages >= 2G
         Cumulative historical counts, when address space is private
    00A8  168 Signed       4 ASCCPPST       Count of private address space
                                            pages stolen
    00AC  172 Signed       4 ASCCPPGR       Count of private address space
                                            pages read from DASD.
    00B0  176 Signed       4 ASCCPPGW       Count of private address space
                                            pages written to DASD.
    00B4  180 Signed       4 ASCCPXRD       Count of private address space
                                            pages read from XSTORE.
    00B8  184 Signed       4 ASCCPXWT       Count of private address space
                                            pages written to XSTORE.
    00BC  188 Signed       4 ASCCPMIG       Count of private address space
                                            pages migrated by CP from XSTORE
                                            to DASD.
         Cumulative historical counts, when address space is shared
    00C0  192 Signed       4 ASCPTRSH       Cumulative count of page
                                            translations for shared pages.
    00C4  196 Signed       4 ASCCSPST       Count of shared address space
                                            pages stolen
    00C8  200 Signed       4 ASCCSPGR       Count of shared address space
                                            pages read from DASD.
    00CC  204 Signed       4 ASCCSPGW       Count of shared address space
                                            pages written to DASD.
    00D0  208 Signed       4 ASCCSXRD       Count of shared address space
                                            pages read from XSTORE.
    00D4  212 Signed       4 ASCCSXWT       Count of shared address space
                                            pages written to XSTORE.
    00D8  216 Signed       4 ASCCSMIG       Count of shared address space
                                            pages migrated by CP from XSTORE
                                            to DASD.
    00DC  220 Signed       4 *              Reserved for IBM use
         End of address space statistics area.
         The following fields are serialized by the available list replenishment
         demand scan lock. They are used to sort the queue of stolen FRMTEs by
         address space (for user address space frames, VDISK address space
         frames, and NSS/DCSS shared segment frames) and by virtual address
         megabyte (for NSS/DCSS shared segment frames only).
    00E0  224 Address      4 ASCSTLNX       Address of the next ASCBK for an
                                            address space from which pages
                                            were stolen in this iteration of
                                            the steal task. Each iteration
                                            will initialize this field to
                                            x'FFFFFFFF'. When the entire
                                            queue of FRMTEs is sorted (by
                                            address space), the last ASCBK in
                                            this chain will have x'FFFFFFFF'
                                            in this field.
    00E4  228 Address      4 ASC1STFR       Address of the first FRMTE that
                                            was stolen from this address
                                            space in this iteration of the
                                            steal task, and anchor of the
                                            queue of all FRMTEs stolen from
                                            this address space by this
                                            iteration of the steal task
                                            (queued by FRMTE field FRMFPNT).
                                            Each iteration will initialize
                                            this field to x'FFFFFFFF', and a
                                            FRMTE FRMFPNT value of
                                            x'FFFFFFFF' indicates that it is
                                            the last FRMTE on the queue.
    00E8  232 Address      4 ASCLSTFR (0)   Address of the last (processed)
                                            FRMTE that was stolen from this
                                            address space in this iteration
                                            of the steal task. Each iteration
                                            will initialize this field to
                                            x'FFFFFFFF', and a FRMTE FRMFPNT
                                            value of x'FFFFFFFF' indicates
                                            that it is the last FRMTE on the
                                            queue. Only used when sorting
                                            FRMTEs for normal user pages,
                                            which do not neet to be sorted by
                                            segment (virtual address
                                            megabyte). For NSS/DCSS shared
                                            segment page FRMTEs, this field
                                            is redefined as ASC1STPG.
    00E8  232 Address      4 ASC1STPG       Address of the first PGMBK for
                                            this address space from which
                                            pages were stolen in this
                                            iteration of the steal task, and
                                            anchor of the queue of all PGMBKs
                                            for this address space from which
                                            pages were stolen in this
                                            iteration of the steal task
                                            (queued by PGMBK field PGMNXPGM /
                                            PGMGNPGM). Each iteration will
                                            initialize this field to
                                            x'FFFFFFFF', and x'FFFFFFFF' in a
                                            PGMBK's PGMNXPGM / PGMGNPGM field
                                            indicates that it is the last
                                            PGMBK on the list. Only used when
                                            sorting FRMTEs for NSS/DCSS
                                            shared segment pages, which must
                                            be sorted by segment (virtual
                                            address megabyte). For normal
                                            user page FRMTEs, this field is
                                            redefined as ASCLSTFR.
    00EC  236 Address      4 ASCLSTPG       Address of the last PGMBK for
                                            this address space from which
                                            pages were stolen in this
                                            iteration of the steal task. Each
                                            iteration will initialize this
                                            field to x'FFFFFFFF', and
                                            x'FFFFFFFF' in a PGMBK's PGMSTNXT
                                            field indicates that it is the
                                            last PGMBK on the list. Only used
                                            when sorting FRMTEs for NSS/DCSS
                                            shared segment pages, which must
                                            be sorted by segment (virtual
                                            address megabyte).
         The following two fields belong up above with ASCIACCT and ASCRACCT,
         but were placed here to avoid recompiles. They should be moved (and
         this block comment deleted) when this control block is next
         restructured.
    00F0  240 Signed       4 ASCITRCT       Count of in-process i-access
                                            manual translations in the
                                            address space.
    00F4  244 Signed       4 ASCRTRCT       Count of in-process r-access
                                            manual translations in the
                                            address space.
         ESAME Region Translation Cache
         ASCR0STD, ASCR0RFT, ASCR0RST, and ASCR0RTT, are in ASCE format, that
         is, the bits which define the table level are DT bits (level of the
         designated table), not R*TE format TT bits (which indicate the level of
         the table containing the R*TE). Any ASCR0R*T fields corresponding to
         table levels higher than that designated by the current ASCE are set to
         zero.
         Serialization of these fields is as follows: For the entry designating
         the current highest level table for the address space (that is, the
         entry which matches the current ASCE), PTIL must be held exclusive. For
         all lower level table entries, either PTIL must be held exclusive, or a
         share of PTIL must be held along with RTETRANS in the next higher level
         R*TE which designates the same table.
    00F8  248 Dbl-Word     8 ASCR0STD       Rx=0 segment table designation
    0100  256 Dbl-Word     8 ASCR0RFT       Rx=0 region first table
                                            designation
    0108  264 Dbl-Word     8 ASCR0RST       Rx=0 region second table
                                            designation
    0110  272 Dbl-Word     8 ASCR0RTT       Rx=0 region third table
                                            designation
    0118  280 Dbl-Word     8 * (3)          Reserved for IBM use
    0130  304 Signed       4 ASCMVABV       Number of times a page in this
                                            address space with a frame
                                            address < 2G was moved to a
                                            frame with address >= 2G.
    0134  308 Signed       4 ASCMVB2G       Number of times page translation
                                            moved a page in this address
                                            space from a frame with address
                                            >= 2G to one < 2G.
         ESAME HDPBK queues - HDPBKs are the programming areas associated with
         host region and segment tables. To make traversal of sparsely populated
         tables easier, we keep several doubly linked queues of HDPBKs. The
         first HDPBK queue is the "addressable storage" HDPBK queue, containing
         queue is the "addressable" queue, and contains HDPBKs (potentially
         representing different table levels) for each addressable extent of
         storage, in ascending virtual address range order. The remaining HDPBK
         queues contain all of the HDPBKs for a given table level, again, in
         ascending virtual address range order.
         The region table(s) (if any) and segment table for region 0 are
         pre-allocated when the space is created. Therefore, an HDPBK
         representing region 0 will be the first HDPBK on each queue.
         Each queue header can also be mapped using the HDPQPTRA HDPBK Queue
         Pointer Area DSECT define in HCPHDPBK.
         >> Initialization and maintaining of these queues has >>
         been deferred until the initial code base is working, >> as these
         are primarily used as "accelerators" for >> routines which
         traverse HDPBKs... >> Queue headers will remain 0 until further
         notice.
    0138  312 Signed       8 * (0)
    0138  312 Bitstring   40 ASCHDPQS (0)   HDPBK queue header area - space
                                            for 5 queues
    0138  312 Signed       8 ASCADHDQ (0)   Addressable storage HDPBK queue
                                            header - doubly linked queue of
                                            HDPBKs
    0138  312 Signed       4 ASCADHDN       Forward pointer to first HDPBK on
                                            addressable storage HDPBK queue.
                                            Always points to lowest level
                                            HDPBK for region 0 (RX=0).
    013C  316 Signed       4 ASCADHDP       Backward pointer to last HDPBK on
                                            addressable storage HDPBK queue.
    0140  320 Signed       8 ASCSGHDQ (0)   Segment table HDPBK queue header
    0140  320 Signed       4 ASCSGHDN       Forward pointer to first HDPBK on
                                            segment table HDPBK queue. Always
                                            points to segment table HDPBK for
                                            region 0 (RX=0).
    0144  324 Signed       4 ASCSGHDP       Backward pointer to last HDPBK on
                                            segment table HDPBK queue.
    0148  328 Signed       8 ASCRTHDQ (0)   Region third table HDPBK queue
                                            header
    0148  328 Signed       4 ASCRTHDN       Forward pointer to first HDPBK on
                                            region third table HDPBK queue.
                                            If ASCHIBYT > 2G, points to
                                            region third HDPBK for region 0
                                            (R3X=0).
    014C  332 Signed       4 ASCRTHDP       Backward pointer to last HDPBK on
                                            region 3rd table HDPBK queue.
    0150  336 Signed       8 ASCRSHDQ (0)   Region second table HDPBK queue
                                            header
    0150  336 Signed       4 ASCRSHDN       Forward pointer to first HDPBK on
                                            region 2nd table HDPBK queue. If
                                            high address > 4T, points to
                                            region second HDPBK for region 0
                                            (R2X=0, R3X=0).
    0154  340 Signed       4 ASCRSHDP       Backward pointer to last HDPBK on
                                            region 3rd table HDPBK queue.
    0158  344 Signed       8 ASCRFHDQ (0)   Region 1st table HDPBK queue hdr
    0158  344 Signed       4 ASCRFHDN       Forward pointer to first HDPBK on
                                            region first table HDPBK queue.
                                            If ASCHIBYT > 8P, points to
                                            region first HDPBK for region 0
                                            (R1X=0, R2X=0, R3X=0).
    015C  348 Signed       4 ASCRFHDP       Backward pointer to last HDPBK on
                                            region first table HDPBK queue.
         ESAME Address Space Storage Configuration area
         This array contains address extent information for each defined address
         extent. For most address spaces, there will only be one extent defined,
         from 0 to ASCHIBYT. If the DEFine STORage CONFIGuration command was
         used to define multiple discontiguous address extents, this array
         contains one additional entry for each additional address extent
         defined. Up to eight extents are allowed, the first extent must begin
         at address zero.
         Individual array elements are mapped by STCONFIG DSECT.
         Array elements must be sorted in ascending virtual address order.
         Address ranges must not overlap, and must not be contiguous.
              00000008       ASCSTELS       8 Number of elements in storage
                                            configuration array
    0160  352 Signed       4 ASCSTCAE       Number of additional storage
                                            configuration array elements used
                                            to represent the current storage
                                            config. Is also index of last
                                            used element. Element 0 is always
                                            used. Must be between 0 and
                                            ASCSTELS-1, inclusive.
    0164  356 Signed       4 *              Reserved for IBM use
    0168  360 Signed       8 * (0)
    0168  360 Bitstring  128 ASCSTCFG (0)   ASCSTCFG area contains ASCSTELS
                                            elements, two doublewords each
    0168  360 Signed       8 ASCSTCE0 (2)   ASCSTCFG element 0
              00000010       ASCSTLEN       *-ASCSTCE0 Length of one element
              0000000E       ASCWK          (ASCSTELS-1)*2
    0178  376 Signed       8 * (14)         Remaining elements
    01E8  488 Address      4 ASCSTCMD       Pointer to the GSDBK containing
                                            saved image of the storage
                                            configuration definition string
                                            as issued on the actual DEFine
                                            STORage CONFIGuration command
    01EC  492 Signed       4 *              Reserved for IBM use
         End of ASCBK
    01F0  496 Signed       4 ASC$END (0)    End of control block
              000001F0       ASCLEN         *-ASCBK Length of ASCBK in bytes
              0000003E       ASCSIZE        (ASCLEN+7)/8 Size of ASCBK in
                                            doublewords
         DSECT to map individual ASCSTCFG storage configuration elements

#### ASCBK Storage Layout

    *** ASCBK - Address-Space-Control Block
    *
    *     +---------------------------+---------------------------+
    *   0 |         ASCOFPNT          |         ASCSFPNT          |
    *     +---------------------------+---------------------------+
    *   8 |         ASCSBPNT          |         ASCSEQNO          |
    *     +---------------------------+---------------------------+
    *  10 |                       ASCUSRID                        |
    *     +-------------------------------------------------------+
    *  18 |                                                       |
    *     =                       ASCNAME                         =
    *     |                                                       |
    *     +---------------------------+---------------------------+
    *  30 |         ASCSNTBK          |///////////////////////////|
    *     +---------------------------+---------------------------+
    *  38 |         ASCASTE           |         ASCSCRSN          |
    *     +---------------------------+---------------------------+
    *  40 |         ASCSPIBK          |         ASCOWNER          |
    *     +---------------------------+---------------------------+
    *  48 |                                                       |
    *     =                       ASCLOCK                         =
    *     |                                                       |
    *     +-------------------------------------------------------+
    *  60 |                       ASCHIBYT                        |
    *     +-------------------------------------------------------+
    *  68 |                       ASCDEFSZ                        |
    *     +---------------------------+------+------+------+------+
    *  70 |///////////////////////////|:STATE|:TYPE |:FRMCD|ASCKEY|
    *     +---------------------------+------+------+------+------+
    *  78 |         ASCIACCT          |         ASCRACCT          |
    *     +---------------------------+------+------+------+------+
    *  80 |         ASCTYPTR          |:FOLST|:SUTYP|:STSIZ|//////|
    *     +---------------------------+------+------+------+------+
    *  88 |          ASCMSO           |         ASCCTSPI          |
    *     +---------------------------+---------------------------+
    *  90 |         ASCCTPRS          |         ASCCTPLK          |
    *     +---------------------------+---------------------------+
    *  98 |         ASCCTPGS          |         ASCCTXBK          |
    *     +---------------------------+---------------------------+
    *  A0 |///////////////////////////|         ASCCTPRG          |
    *     +---------------------------+---------------------------+
    *  A8 |         ASCCPPST          |         ASCCPPGR          |
    *     +---------------------------+---------------------------+
    *  B0 |         ASCCPPGW          |         ASCCPXRD          |
    *     +---------------------------+---------------------------+
    *  B8 |         ASCCPXWT          |         ASCCPMIG          |
    *     +---------------------------+---------------------------+
    *  C0 |         ASCPTRSH          |         ASCCSPST          |
    *     +---------------------------+---------------------------+
    *  C8 |         ASCCSPGR          |         ASCCSPGW          |
    *     +---------------------------+---------------------------+
    *  D0 |         ASCCSXRD          |         ASCCSXWT          |
    *     +---------------------------+---------------------------+
    *  D8 |         ASCCSMIG          |///////////////////////////|
    *     +---------------------------+---------------------------+
    *  E0 |         ASCSTLNX          |         ASC1STFR          |
    *     +---------------------------+---------------------------+
    *  E8 |         ASC1STPG          |         ASCLSTPG          |
    *     +---------------------------+---------------------------+
    *  F0 |         ASCITRCT          |         ASCRTRCT          |
    *     +---------------------------+---------------------------+
    *  F8 |                       ASCR0STD                        |
    *     +-------------------------------------------------------+
    * 100 |                       ASCR0RFT                        |
    *     +-------------------------------------------------------+
    * 108 |                       ASCR0RST                        |
    *     +-------------------------------------------------------+
    * 110 |                       ASCR0RTT                        |
    *     +-------------------------------------------------------+
    * 118 |///////////////////////////////////////////////////////|
    *     =///////////////////////////////////////////////////////=
    *     |///////////////////////////////////////////////////////|
    *     +---------------------------+---------------------------+
    * 130 |         ASCMVABV          |         ASCMVB2G          |
    *     +---------------------------+---------------------------+
    * 138 |         ASCADHDN          |         ASCADHDP          |
    *     +---------------------------+---------------------------+
    * 140 |         ASCSGHDN          |         ASCSGHDP          |
    *     +---------------------------+---------------------------+
    * 148 |         ASCRTHDN          |         ASCRTHDP          |
    *     +---------------------------+---------------------------+
    * 150 |         ASCRSHDN          |         ASCRSHDP          |
    *     +---------------------------+---------------------------+
    * 158 |         ASCRFHDN          |         ASCRFHDP          |
    *     +---------------------------+---------------------------+
    * 160 |         ASCSTCAE          |///////////////////////////|
    *     +---------------------------+---------------------------+
    * 168 |                       ASCSTCE0                        |
    *     |                                                       |
    *     +-------------------------------------------------------+
    * 178 |///////////////////////////////////////////////////////|
    *     =///////////////////////////////////////////////////////=
    *     |///////////////////////////////////////////////////////|
    *     +---------------------------+---------------------------+
    * 1E8 |         ASCSTCMD          |///////////////////////////|
    *     +---------------------------+---------------------------+
    *
    *** ASCBK - Address-Space-Control Block

#### ASCBK Cross Reference

    Symbol         Dspl Value
    -------------- ---- -----
    ASC$END        01F0
    ASCADHDN       0138
    ASCADHDP       013C
    ASCADHDQ       0138
    ASCASTE        0038
    ASCCPMIG       00BC
    ASCCPPGR       00AC
    ASCCPPGW       00B0
    ASCCPPST       00A8
    ASCCPXRD       00B4
    ASCCPXWT       00B8
    ASCCSMIG       00D8
    ASCCSPGR       00C8
    ASCCSPGW       00CC
    ASCCSPST       00C4
    ASCCSXRD       00D0
    ASCCSXWT       00D4
    ASCCTPGS       0098
    ASCCTPLK       0094
    ASCCTPRG       00A4
    ASCCTPRS       0090
    ASCCTSPI       008C
    ASCCTXBK       009C
    ASCDEFSZ       0068
    ASCEASIT       0038
    ASCFOLST       0084
    ASCFRMCD       0076
    ASCHDPQS       0138
    ASCHIBYT       0060
    ASCIACCT       0078
    ASCITRCT       00F0
    ASCKEY         0077
    ASCLEN         01F0 000001F0
    ASCLOCK        0048
    ASCLSTFR       00E8
    ASCLSTPG       00EC
    ASCMDEXT       0074 01
    ASCMSO         0088
    ASCMVABV       0130
    ASCMVB2G       0134
    ASCNAME        0018
    ASCOFPNT       0000
    ASCOUFO        0084 80
    ASCOWNER       0044
    ASCPTRSH       00C0
    ASCPUBLC       0074 40
    ASCRACCT       007C
    ASCRFHDN       0158
    ASCRFHDP       015C
    ASCRFHDQ       0158
    ASCRSHDN       0150
    ASCRSHDP       0154
    ASCRSHDQ       0150
    ASCRTHDN       0148
    ASCRTHDP       014C
    ASCRTHDQ       0148
    ASCRTRCT       00F4
    ASCR0RFT       0100
    ASCR0RST       0108
    ASCR0RTT       0110
    ASCR0STD       00F8
    ASCSBPNT       0008
    ASCSCRSN       003C
    ASCSEQNO       000C
    ASCSFO         0084 40
    ASCSFPNT       0004
    ASCSGHDN       0140
    ASCSGHDP       0144
    ASCSGHDQ       0140
    ASCSHARE       0074 80
    ASCSIZE        01F0 0000003E
    ASCSNTBK       0030
    ASCSPCID       0010
    ASCSPIBK       0040
    ASCSTATE       0074
    ASCSTCAE       0160
    ASCSTCE0       0168
    ASCSTCFG       0168
    ASCSTCMD       01E8
    ASCSTELS       015C 00000008
    ASCSTLEN       0168 00000010
    ASCSTLNX       00E0
    ASCSTSIZ       0086
    ASCSTS1G       0086 0000003F
    ASCSTS2G       0086 0000007F
    ASCSTS32       0086 00000001
    ASCSUTYP       0085
    ASCTDATA       0075 40
    ASCTDATA       0075 40
    ASCTSNT        0075 04
    ASCTSNT        0075 04
    ASCTSYSU       0075 10
    ASCTSYSU       0075 10
    ASCTSYSX       0075 20
    ASCTSYSX       0075 20
    ASCTUSER       0075 80
    ASCTUSER       0075 80
    ASCTYPE        0075
    ASCTYPTR       0080
    ASCUCONN       0085 08
    ASCUFTC        0085 10
    ASCUIDNT       0085 04
    ASCUPREF       0085 40
    ASCUPTRM       0085 80
    ASCUREAL       0085 02
    ASCUSRID       0010
    ASCUVDSK       0085 20
    ASCWK          0168 0000000E
    ASC1STFR       00E4
    ASC1STPG       00E8
    ASMDESTR       0075 20
    ASMDESTR       0075 20
    ASMISOL8       0075 80
    ASMISOL8       0075 80
    ASMRESET       0075 40
    ASMRESET       0075 40
    ASMSHRLK       0075 01
    ASMSHRLK       0075 01
    ASM64PTR       0075 02
    ASM64PTR       0075 02
    ASM64REG       0075 04
    ASM64REG       0075 04

This information is based on z/VM V4R3.0. Last updated on 1 May 2002 at 07:59:07 EDT.
Copyright IBM Corporation, 1990, 2002