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

#### DDEV

Prolog

Control Block Contents
DDEV DSECT

Storage Layout

Cross Reference (Contains links to field and bit definitions)

#### DDEV Prolog

     NAME       : HCPDDEV
     DESCRIPTION: DIRECTORY DEVICE DEFINITION BLOCK
     DSECT      : DDEV
     FUNCTION   : THE HCPDDEV BLOCK DESCRIBES THE DEVICES ASSOCIATED
                  WITH A VIRTUAL MACHINE AS SPECIFIED IN THE SYSTEM
                  DIRECTORY
     LOCATED BY : DUNIDDAS  FIELD OF HCPDUNDX
                  DUNIDDSP  FIELD OF HCPDUNDX
     CREATED BY : HCPDEF, HCPUDR
     DELETED BY : HCPDEF, HCPLND, HCPLNK

#### DDEV Control Block Content

#### DDEV DSECT

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      DDEV           DIRECTORY DEVICE DEFINITION BLOCK
    0000    0 Signed       2 DDEVDEV        VIRTUAL DEVICE ADDRESS
    0002    2 Bitstring    1 DDEVFLGA       DIRECTORY DEVICE INFORMATION
              1... ....      DDEVTMDK       X'80' MDISK DIRECTORY ENTRY
              .1.. ....      DDEVTLNK       X'40' LINK DIRECTORY ENTRY
              ..1. ....      DDEVTSPC       X'20' SPECIAL DIRECTORY ENTRY
              ...1 ....      DDEVTDED       X'10' DEDICATE DIRECTORY ENTRY
              .... 1...      DDEVTSPL       X'08' SPOOL / CONSOLE DIRECTORY
                                            ENTRY
              .... .1..      DDEVTDSK       X'04' T-DISK TO BE ALLOCATED
              .... ..1.      DDEVRO         X'02' DEVICE IS READ ONLY
              .... ...1      DDEVRELR       X'01' VIRTUAL RESERVE RELEASE
                                            REQUESTED
    0003    3 Bitstring    1 DDEVMODL       DIRECTORY DEVICE MODEL
                                            INFORMATION
    0004    4 Bitstring    2 DDEVCODE (0)   VIRTUAL DEVICE CLASS AND TYPE
    0004    4 Bitstring    1 DDEVCLAS       VIRTUAL DEVICE CLASS
    0005    5 Bitstring    1 DDEVTYPE       VIRTUAL DEVICE TYPE
         All releases of CP prior to ESA 2.0 use DDEVSCYL and DDEVECYL for
         minidisk extents. In ESA 2.0, DDEVSEXT and DDEVEEXT were defined for
         minidisk extents. These new fields were added for FBA because FBA
         minidisk extents are in blocks instead of cylinders and a block number
         could be larger than a halfword. But the time will come when CKD dasd
         is so large that cylinder extents may grow larger than a halfword.
         Starting with ESA 2.0, DDEVSEXT and DDEVEEXT should always be used for
         both CKD and FBA minidisk extents. ESA 2.0 must still be able to
         process directories created with previous supported releases of
         DIRECTXA. Because of this, directory processing modules must consider
         the possibility that the new fullword fields may not contain the
         minidisk extents. If the DDEVFWEX flag in DDEVFLGC is not on, then the
         old halfword fields will contain the minidisk extents. In this case,
         when HCPUDR gets a copy of the DDEV it will copy the contents of
         DDEVSCYL/DDEVECYL into DDEVSEXT/DDEVEEXT. So, starting with ESA 2.0,
         the rest of CP only needs to use the newly defined fullword fields.
         Directories created with ESA 2.0 (and later releases of CP) must be in
         a format that is compatible with all previous supported releases of CP.
         For this reason, CKD minidisk extents are still stored in the old
         halfword fields as well as the new fullword fields. When ESA 2.0
         becomes the oldest supported release, DDEVSCYL and DDEVECYL will no
         longer need to be maintained.
    0006    6 Bitstring    4 DDEVEXTN (0)   CKD virtual dasd cylinder extents
    0006    6 Signed       2 DDEVSCYL       CKD virtual dasd start cylinder
    0008    8 Signed       2 DDEVECYL       CKD virtual dasd end cylinder
    000A   10 Character    6 DDEVVSER       VOLUME SERIAL NUMBER
    0010   16 Bitstring    1 DDEVALNK       TYPES OF LINKS ALLOW TO THIS DEV
              1... ....      DDEVLR         X'80' READ LINKS ALLOWED
              .1.. ....      DDEVLW         X'40' WRITE LINKS ALLOWED
              ..1. ....      DDEVLM         X'20' MULT-WRITE LINKS ALLOWED
    0011   17 Bitstring    1 DDEVMODE       ACCESS MODE Decimal byte values
                                            0-11 are read modes; 12-63 are
                                            write. For more understanding of
                                            how link access modes are used,
                                            see how DDEVMODE and LKX*MOD* are
                                            used in module HCPLNS.
              1... ....      DDEVE          X'80' Exclusive link bit
              .1.. ....      DDEVS          X'40' Stable link bit
              00000000       DDEVR          00 'R' LINK-MODE FOR OWNER
              00000004       DDEVRR         04 'RR' LINK-MODE FOR OWNER
              0000000C       DDEVW          12 'W' LINK-MODE FOR OWNER
              00000010       DDEVWR         16 'WR' LINK-MODE FOR OWNER
              0000001C       DDEVM          28 'M' LINK-MODE FOR OWNER
              00000020       DDEVMR         32 'MR' LINK-MODE FOR OWNER
              00000024       DDEVMW         36 'MW' LINK-MODE FOR OWNER
              00000040       DDEVSR         64 DDEVS+DDEVR ('R' with stable)
              0000004C       DDEVSW         76 DDEVS+DDEVW ('W' with stable)
              0000005C       DDEVSM         92 DDEVS+DDEVM ('M' with stable)
              00000080       DDEVER         128 DDEVE+DDEVR ('R' with
                                            exclusive)
              0000008C       DDEVEW         140 DDEVE+DDEVW ('W' with
                                            exclusive)
    0012   18 Bitstring    1 DDEVWIDH       PAPER WIDTH CODE FOR 3800 PRINTER
    0013   19 Bitstring    1 DDEVLENH       PAPER LEN FOR 3800 (HALF-INCHES)
    0014   20 Bitstring    1 DDEVPRFG       Virtual 3800 flag byte plus other
                                            miscellaneous bits
              1... ....      DDEVBTS        X'80' BURSTER TRIMMER STACKER
                                            (BTS)
              .1.. ....      DDEVFULL       X'40' REFLECT ALL DATA CHECKS
                                            (DATCK)
              .... .1..      DDEVSNGL       X'04' "SINGLEuser" Attach cmd
                                            option
              .... ..1.      DDEVSHRD       X'02' "MULTIuser" Attach cmd
                                            option
              .... ...1      DDEVNOMS       X'01' "NOCPMS" Attach command
                                            option
    0015   21 Bitstring    1 DDEVFTRC       DEVICE FEATURE CODES
              1... ....      DDEV4WCG       X'80' 3800 HAS 4 WCGM'S (OFF =
                                            2WCGM)
    0016   22 Bitstring    1 DDEVFLGB       ACCESS CONTROL FOR CACHE DASD
              1... ....      DDEVWKAL       X'80' Working allegiance on
                                            minidisk
              .1.. ....      DDEVCNA        X'40' CACHING NOT AVAILABLE
              ..1. ....      DDEVSCTL       X'20' SUBSYSTEM CONTROL
              ...1 ....      DDEVDCTL       X'10' DEVICE CONTROL
              .... 1...      DDEVNCTL       X'08' NO CONTROL
              .... .1..      DDEVNMDC       X'04' MINIOPT NOMDC specified
              .... ..1.      DDEVQDSK       X'02' V-disk will be allocated
              .... ...1      DDEVYMDC       X'01' MINIOPT MDC specified
    0017   23 Bitstring    1 DDEVFLGC       EXTENSION OF DIRECTORY DEVICE
                                            INFO
              1... ....      DDEVNOSG       X'80' "NOASSIGN" OPTION
              .1.. ....      DDEVEND        X'40' "END" SPECIFIED ON MDISK
                                            STATEMENT
              ..1. ....      DDEVINV        X'20' DDEV IS NOT VALID, IT WAS
                                            ONLY PARTIALLY FILLED IN AND
                                            SHOULD BE IGNORED
              ...1 ....      DDEVFWEX       X'10' The fullword extent fields
                                            are valid. DDEVSEXT and DDEVEEXT
                                            contain valid extent information.
              .... 1...      DDEVDEVN       X'08' "DEVNO" SPECIFIED ON MDISK
                                            STMT
              .... .1..      DDEVPROF       X'04' DDEV was written as part of
                                            a PROFILE
              .... ..1.      DDEVIOPS       X'02' User set I/O Assist off for
                                            device
              .... ...1      DDEVFBA        X'01' MDISK is on FBA dasd
    0018   24 Dbl-Word     8 DDEVPASR       PASSWORD FOR READ ACCESS
    0020   32 Dbl-Word     8 DDEVPASW       PASSWORD FOR WRITE ACCESS
    0028   40 Dbl-Word     8 DDEVPASM       PASSWORD FOR MULTIPLE ACCESS
    0030   48 Signed       2 DDEVRDEV       REAL DEVICE NUMBER
    0032   50 Bitstring    1 DDEVFLGD       Extension of cache and dev info
              1... ....      DDEVRECC       X'80' RECORDMDC specified on
                                            MINIOPT
              .1.. ....      DDEVMSGP       X'40' SPECIAL MSGP Statement
    0033   51 Bitstring    1 *              RESERVED FOR IBM USE
         For object directories created from VM/ESA 2.0 and later... If the
         minidisk is defined on CKD DASD, DDEVEEXT will contain the ending
         cylinder number. If the minidisk is defined on FBA DASD, DDEVEEXT will
         contain the ending block number. The DDEVFWEX flag in DDEVFLGC will be
         on if DDEVEEXT contains valid information. See the comment for
         DDEVSCYL/DDEVECYL for more details.
    0034   52 Signed       4 DDEVEEXT (0)   Minidisk end extent
    0034   52 Signed       2 DDEVEE1H       First half of the ending extent
    0036   54 Signed       2 DDEVEE2H       Second half of the ending extent
              00000007       DDEVSIZE       (*-DDEV+7)/8 DDEV SIZE IN DW'S
         DDEVBLOK EXTENSION FOR DIRECTORY RECORD ON DASD
         WARNING: This DDEV extension is NOT utilized during LINK processing. As
         a result, all LINK related fields must be defined above.
    0038   56 Signed       4 DDEVDASD       SLOT ADDR OF NEXT USER RECORD
                                            CCPV for CKD DASD addresses PPPV
                                            for FBA DASD addresses
              00000038       DDEVPAGE       DDEVDASD,3 Page portion of
                                            DDEVDASD field CCP for CKD DASD
                                            addresses PPP for FBA DASD
                                            addresses
    003C   60 Signed       2 DDEVDISP       DISP OF NEXT RECORD INTO PAGE
    003E   62 Signed       2 *              RESERVED FOR FUTURE IBM USE
    0040   64 Signed       4 *              RESERVED FOR FUTURE IBM USE
    0044   68 Character    4 DDEVLABL       LABEL TO VALIDATE THIS BLOCK
    0048   72 Character    8 DDEVUSER       USER id to validate this block;
                                            will contain owning USER unless
                                            DDEVPROF is true, in which case
                                            it will contain SYSTEM.
              0000000A       DDEVESIZ       (*-DDEV+7)/8 EXTENDED DDEVBK SIZE
                                            IN DW' S
              00000050       DDEVESZB       *-DDEV EXTENDED DDEVBK SIZE IN
                                            BYTES
    0018   24 Character    1 DDEVSPCL       SPOOL DEVICE OUTPUT CLASS
    0019   25 Bitstring    1 DDEVGROP       CONSOLE DEFINITION FLAGS
              1... ....      DDEVGRCN       X'80' GRAPHICS CONSOLE
    001A   26 Signed       2 DDEVLINK       USER LINK TO DISK
    001C   28 Signed       4 *              RESERVED FOR FUTURE IBM USE
    0020   32 Dbl-Word     8 DDEVLKID       USER LINK TO USERID
         The following fields are defined for Virtual CTCA (VCTC). and MSGP
         entries.
    0018   24 Dbl-Word     8 DDEVCTUS       ALLOWED USERID TO COUPLE TO CTCA
                                            (OR BLANKS IF NO USERID SUPPLIED,
                                            INDICATING ANY USERID ALLOWED TO
                                            TO COUPLE TO THIS CTCA)
    0020   32 Character    4 DDEVCTCD       CTCA Descriptor (see VDEVCTCD)
    0024   36 Bitstring    2 DDEVMPBS       MSGP buffer sets
    0026   38 Bitstring    2 *              Reserved field
         The following fields are defined for Virtual NIC adapters (HIPERsocket
         and LCS).
    0018   24 Character    8 DDEVNCLO       LAN Owner for default connection
                                            (or blanks if no LAN is specified
                                            in the directory).
    0020   32 Character    8 DDEVNCLN       LAN Name for default connection
                                            (or blanks if no LAN is specified
                                            in the directory).
    0028   40 Character    4 DDEVNCID       Network Card ID (HIPE/QDIO/LCS)
    002C   44 Signed       2 DDEVNCNN       Number of devices for this NIC
    002E   46 Bitstring    2 *              Reserved
         For object directories created from VM/ESA 2.0 and later... If the
         minidisk is defined on CKD DASD, DDEVSEXT will contain the starting
         cylinder number. If the minidisk is defined on FBA DASD, DDEVSEXT will
         contain the starting block number. The DDEVFWEX flag in DDEVFLGC will
         be on if DDEVSEXT contains valid information. See the comment for
         DDEVSCYL/DDEVECYL for more details.
    0012   18 Bitstring    4 DDEVSEXT (0)   Minidisk start extent
    0012   18 Bitstring    2 DDEVSE1H       First half of starting extent
    0014   20 Bitstring    2 DDEVSE2H       Second half of starting extent

#### DDEV Storage Layout

    *** DDEV - DIRECTORY DEVICE DEFINITION BLOCK
    *
    *     +-------------+------+------+------+------+-------------+
    *   0 |  DDEVDEV    |:VFLGA|:VMODL|:VCLAS|:VTYPE|  DDEVSCYL   |
    *     +-------------+------+------+------+------+-------------+
    *   8 |  DDEVECYL   |                DDEVVSER                 |
    *     +------+------+------+------+------+------+------+------+
    *  10 |:VALNK|:VMODE|:VWIDH|:VLENH|:VPRFG|:VFTRC|:VFLGB|:VFLGC|
    *     +------+------+------+------+------+------+------+------+
    *  18 |                       DDEVPASR                        |
    *     +-------------------------------------------------------+
    *  20 |                       DDEVPASW                        |
    *     +-------------------------------------------------------+
    *  28 |                       DDEVPASM                        |
    *     +-------------+------+------+-------------+-------------+
    *  30 |  DDEVRDEV   |:VFLGD|//////|  DDEVEE1H   |  DDEVEE2H   |
    *     +-------------+------+------+-------------+-------------+
    *  38 |         DDEVDASD          |  DDEVDISP   |/////////////|
    *     +---------------------------+-------------+-------------+
    *  40 |///////////////////////////|         DDEVLABL          |
    *     +---------------------------+---------------------------+
    *  48 |                       DDEVUSER                        |
    *     +-------------------------------------------------------+
    *  50
    *
    *** DDEV - DIRECTORY DEVICE DEFINITION BLOCK

    *** Overlay for DDEVPASR in DDEV
    *
    *     +------+------+-------------+---------------------------+
    *  18 |:VSPCL|:VGROP|  DDEVLINK   |///////////////////////////|
    *     +------+------+-------------+---------------------------+
    *  20 |                       DDEVLKID                        |
    *     +-------------------------------------------------------+
    *  28
    *
    *** Overlay for DDEVPASR in DDEV

    *** Overlay for DDEVPASR in DDEV
    *
    *     +-------------------------------------------------------+
    *  18 |                       DDEVCTUS                        |
    *     +---------------------------+-------------+-------------+
    *  20 |         DDEVCTCD          |  DDEVMPBS   |/////////////|
    *     +---------------------------+-------------+-------------+
    *  28
    *
    *** Overlay for DDEVPASR in DDEV

    *** Overlay for DDEVPASR in DDEV
    *
    *     +-------------------------------------------------------+
    *  18 |                       DDEVNCLO                        |
    *     +-------------------------------------------------------+
    *  20 |                       DDEVNCLN                        |
    *     +---------------------------+-------------+-------------+
    *  28 |         DDEVNCID          |  DDEVNCNN   |/////////////|
    *     +---------------------------+-------------+-------------+
    *  30
    *
    *** Overlay for DDEVPASR in DDEV

    *** Overlay for DDEVWIDH in DDEV
    *
    *                   +-------------+-------------+
    *  10 ...        12 |  DDEVSE1H   |  DDEVSE2H   | 16
    *                   +-------------+-------------+
    *
    *** Overlay for DDEVWIDH in DDEV

#### DDEV Cross Reference

    Symbol         Dspl Value
    -------------- ---- -----
    DDEVALNK       0010
    DDEVBTS        0014 80
    DDEVCLAS       0004
    DDEVCNA        0016 40
    DDEVCODE       0004
    DDEVCTCD       0020
    DDEVCTUS       0018
    DDEVDASD       0038
    DDEVDCTL       0016 10
    DDEVDEV        0000
    DDEVDEVN       0017 08
    DDEVDISP       003C
    DDEVE          0011 80
    DDEVECYL       0008
    DDEVEEXT       0034
    DDEVEE1H       0034
    DDEVEE2H       0036
    DDEVEND        0017 40
    DDEVER         0011 00000080
    DDEVESIZ       0048 0000000A
    DDEVESZB       0048 00000050
    DDEVEW         0011 0000008C
    DDEVEXTN       0006
    DDEVFBA        0017 01
    DDEVFLGA       0002
    DDEVFLGB       0016
    DDEVFLGC       0017
    DDEVFLGD       0032
    DDEVFTRC       0015
    DDEVFULL       0014 40
    DDEVFWEX       0017 10
    DDEVGRCN       0019 80
    DDEVGROP       0019
    DDEVINV        0017 20
    DDEVIOPS       0017 02
    DDEVLABL       0044
    DDEVLENH       0013
    DDEVLINK       001A
    DDEVLKID       0020
    DDEVLM         0010 20
    DDEVLR         0010 80
    DDEVLW         0010 40
    DDEVM          0011 0000001C
    DDEVMODE       0011
    DDEVMODL       0003
    DDEVMPBS       0024
    DDEVMR         0011 00000020
    DDEVMSGP       0032 40
    DDEVMW         0011 00000024
    DDEVNCID       0028
    DDEVNCLN       0020
    DDEVNCLO       0018
    DDEVNCNN       002C
    DDEVNCTL       0016 08
    DDEVNMDC       0016 04
    DDEVNOMS       0014 01
    DDEVNOSG       0017 80
    DDEVPAGE       0038 00000038
    DDEVPASM       0028
    DDEVPASR       0018
    DDEVPASW       0020
    DDEVPRFG       0014
    DDEVPROF       0017 04
    DDEVQDSK       0016 02
    DDEVR          0011 00000000
    DDEVRDEV       0030
    DDEVRECC       0032 80
    DDEVRELR       0002 01
    DDEVRO         0002 02
    DDEVRR         0011 00000004
    DDEVS          0011 40
    DDEVSCTL       0016 20
    DDEVSCYL       0006
    DDEVSEXT       0012
    DDEVSE1H       0012
    DDEVSE2H       0014
    DDEVSHRD       0014 02
    DDEVSIZE       0036 00000007
    DDEVSM         0011 0000005C
    DDEVSNGL       0014 04
    DDEVSPCL       0018
    DDEVSR         0011 00000040
    DDEVSW         0011 0000004C
    DDEVTDED       0002 10
    DDEVTDSK       0002 04
    DDEVTLNK       0002 40
    DDEVTMDK       0002 80
    DDEVTSPC       0002 20
    DDEVTSPL       0002 08
    DDEVTYPE       0005
    DDEVUSER       0048
    DDEVVSER       000A
    DDEVW          0011 0000000C
    DDEVWIDH       0012
    DDEVWKAL       0016 80
    DDEVWR         0011 00000010
    DDEVYMDC       0016 01
    DDEV4WCG       0015 80

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