QUEBK | Back to Index page

| Prolog Control Block Contents QUEBK DSECT Storage Layout Cross Reference (Contains links to field and bit definitions) |
Programming Interface Information: This information is NOT intended to be used as Programming Interfaces of z/VM.

QUEBK Prolog | Top of page

     NAME       : HCPQUEBK
     DESCRIPTION: Queue Control Block
     DSECT      : QUEBK
     FUNCTION   :
                  The QUEBK defines a container for a FIFO queue of
                  work elements with an associated QueueReader routine.
     LOCATED BY :
                  The QUEBK may be defined within a CP module, or imbedded
                  within another CP structure.  Examples are:
                  HCPCMSDQ  contains the static QUEBK for the ISFC Deliver queue.
                  HCPCMSRQ  contains the static QUEBK for the ISFC Resume queue.
                  LNKQUEBK  contains the QUEBK for a Link queue.
                  HCPAAKIQ  contains the QUEBK for the CPAP mailbox
     CREATED BY :
                  The QUEBK is intended as a general purpose container.
                  It may be created by compiling a module or by allocating
                  a structure that contains a QUEBK.
     DELETED BY :
                  The QUEBK is intended as a general purpose container.
                  It may be destroyed by releasing the structure that
                  contains the QUEBK.
     SERIALIZED :
                  The QUESTACK is serialized by CS logic and other
                  fields are only altered by the QueueReader.
     NOTES      :
                  Module HCPQUE operates on the Version 1 QUEBK.
                  o Version 1 does not use QUESTATE.
                  Module HCPQMX operates on the Version 2 QUEBK.
                  o Version 2 uses QUESTATE to validate the QUEBK.
     RELOCATION CONSIDERATIONS : None

QUEBK Control Block Content | Top of page

     QUEBK DSECT
    Top of page

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      QUEBK          Queue Control Block
          QUEBK management.
    0000    0 Address      4 QUESTACK       Stack of LIFO work
    0004    4 Address      4 QUEREADR       Address of reader routine to call
    0008    8 Signed       4 * (2)          Reserve space for future routines
    0010   16 Dbl-Word     8 QUEPTRS (0)    Queue of FIFO work (head||tail)
    0010   16 Address      4 QUEHEAD        Address of first work element
                                            (FIFO)
    0014   20 Address      4 QUETAIL        Address of last work element
                                            (FIFO)
    0018   24 Signed       4 QUECHAIN       Offset to chain pointer
    001C   28 Bitstring    1 QUESTATE       Queue state:
              00000000       QUEUE_INIT     0 QUEUE_INIT - Initial state
              00000001       QUEUE_OPEN     1 QUEUE_OPEN - Ready for work
              000000FF       QUEUE_CLOSED   255 QUEUE_CLOSED - Closed
    001D   29 Bitstring    3 *              Reserved for IBM use
    0020   32 Signed       4 QUEUWORD       Word reserved for use by queue
                                            owner
    0024   36 Signed       4 QUEUWRD2       Another word for use by owner
    0028   40 Signed       4 * (2)          Reserved
              00000006       QUESIZE        (*-QUEBK+7)/8 Size, in
                                            doublewords, of QUEBK

QUEBK Storage Layout | Top of page

    *** QUEBK - Queue Control Block
    *
    *     +---------------------------+---------------------------+
    *   0 |         QUESTACK          |         QUEREADR          |
    *     +---------------------------+---------------------------+
    *   8 |///////////////////////////////////////////////////////|
    *     +---------------------------+---------------------------+
    *  10 |         QUEHEAD           |         QUETAIL           |
    *     +---------------------------+------+--------------------+
    *  18 |         QUECHAIN          |:STATE|////////////////////|
    *     +---------------------------+------+--------------------+
    *  20 |         QUEUWORD          |         QUEUWRD2          |
    *     +---------------------------+---------------------------+
    *  28 |///////////////////////////////////////////////////////|
    *     +-------------------------------------------------------+
    *  30
    *
    *** QUEBK - Queue Control Block

QUEBK Cross Reference | Top of page

    Symbol         Dspl Value
    -------------- ---- -----
    QUECHAIN       0018
    QUEHEAD        0010
    QUEPTRS        0010
    QUEREADR       0004
    QUESIZE        0028 00000006
    QUESTACK       0000
    QUESTATE       001C
    QUETAIL        0014
    QUEUE_CLOSED   001C 000000FF
    QUEUE_INIT     001C 00000000
    QUEUE_OPEN     001C 00000001
    QUEUWORD       0020
    QUEUWRD2       0024

This information is based on z/VM 7.2.0 Last updated on 24 Jun 2020 at 09:29:58 EDT.
Copyright IBM Corporation, 1990, 2020