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

DHDR

Prolog  

Control Block Contents  
   DHDR DSECT

Storage Layout  

Cross Reference (Contains links to field and bit definitions)  


DHDR Prolog

 NAME       : HCPDHDR
 DESCRIPTION: Directory header block
 DSECT      : DHDR
 FUNCTION   : This control block points to all of the parts
              that make up the object directory.
 LOCATED BY : SYSDHDR
 CREATED BY : HCPDIR
              HCPUDTBH
 DELETED BY : HCPUDS
 RELOCATION CONSIDERATIONS : None

 

DHDR Control Block Content


DHDR DSECT

Hex   Dec Type/Val   Lng Label (dup)    Comments
---- ---- --------- ---- -------------- --------
0000    0 Structure      DHDR           Directory header block
0000    0 Bitstring  512 DHDRHDR (0)    Fixed-length header portion
0000    0 Signed       4 DHDRSIZE       The length of the DHDR block in
                                        bytes
        The version code for the currently online object
        directory has been created to distinguish between the
        different styles of the object directory. The "old"
        style directory is for VM/ESA 1.2.2 and earlier
        releases. This is Version 0. The Version 1 is the
        initial "new" style object directory for VM/ESA 2.1.0
        release.
0004    4 Bitstring    1 DHDRODVR       Version code of object directory
          00000000       DHDRODV0       X'00' DHDRODV0 VM/ESA 1.2.2 and
                                        prior version of object directory
          00000001       DHDRODV1       X'01' DHDRODV1 VM/ESA 2.1.0
                                        version of object directory
0005    5 Bitstring    1 DHDRFLAG       Flag Byte
          .... ...1      DHDRSSI        X'01' DHDRSSI SSI directory flag
          .... ..1.      DHDRCMOD       X'02' DHDRCMOD Compatibility Mode
                                        indicator for debug use.
0006    6 Bitstring    1 *              Reserved for IBM use
0007    7 Bitstring    1 DHDRVERS       Version code for this block
          00000000       DHDRVER0       X'00' DHDRVER0 Initial version
0008    8 Character   16 DHDRLABL       Eye catcher - (CL16'DIRECTORY
                                        HEADER')
             Note that each of the following fields sometimes
             contains storage addresses, not DASD addresses.
                   DHDRUSER
                   DHDRUID
                   DHDRGID
0018   24 Signed       4 DHDRUSER       CCPV/PPPV of userid index start
001C   28 Signed       4 DHDRUID        CCPV/PPPV of uid index start
0020   32 Signed       4 DHDRGID        CCPV/PPPV of gid index start
0024   36 Signed       4 * (5)          Reserved for IBM use (good place
                                        for additional index ptrs)
0038   56 Signed       4 DHDRNCBE       Count of dir cntrl blck entries
003C   60 Bitstring  128 DHDRDCRY       Bit map for dedicated AP crypto
                                        queues
             Note that the fields from DHDRLUSE through DHDRODGS
             are not used by CP. They are used by Dirmaint and
             the relative offsets of these fields should not
             change. Therefore new fields must not be inserted.
             New fields should be allocated using the reserved
             areas for these specific fields.
00BC  188 Signed       4 DHDRLUSE       CCPV/PPPV of last page used
00C0  192 Signed       4 DHDRLDUN       CCPV/PPPV of last DUNDX page
00C4  196 Signed       4 DHDRLUID       CCPV/PPPV of last UID page
00C8  200 Signed       4 DHDRLGID       CCPV/PPPV of last GID page
00CC  204 Signed       4 DHDRLVMD       CCPV/PPPV of last DVMD page
00D0  208 Signed       4 DHDRLCPU       CCPV/PPPV of last DCPU page
00D4  212 Signed       4 DHDRLDEV       CCPV/PPPV of last DDEV page
00D8  216 Signed       4 DHDRLIUC       CCPV/PPPV of last IUCV page
00DC  220 Signed       4 DHDRLNSA       CCPV/PPPV of last NSA page
00E0  224 Signed       4 DHDRLAPC       CCPV/PPPV of last APPC page
00E4  228 Signed       4 DHDRLGFD       CCPV/PPPV of last DGFBK page
00E8  232 Signed       4 DHDRLDGS       CCPV/PPPV of last DGSBK page
00EC  236 Signed       2 DHDRODUN       Offset to next DUNDX slot
00EE  238 Signed       2 DHDROUID       Offset to next UID slot
00F0  240 Signed       2 DHDROGID       Offset to next GID slot
00F2  242 Signed       2 DHDROVMD       Offset to next DVMD slot
00F4  244 Signed       2 DHDROCPU       Offset to next DCPU slot
00F6  246 Signed       2 DHDRODEV       Offset to next DDEV slot
00F8  248 Signed       2 DHDROIUC       Offset to next IUCV slot
00FA  250 Signed       2 DHDRONSA       Offset to next NSA slot
00FC  252 Signed       2 DHDROAPC       Offset to next APPC slot
00FE  254 Signed       2 DHDROGFD       Offset to next DGFBK slot
0100  256 Signed       2 DHDRODGS       Offset to next DGSBK slot
0102  258 Signed       2 DHDRODID       Offset to next DIDBK slot
0104  260 Signed       2 *              Reserved for IBM use (offset)
0106  262 Signed       2 *              Reserved for IBM use (offset)
0108  264 Signed       2 *              Reserved for IBM use (offset)
010A  266 Signed       2 *              Reserved for IBM use (offset)
010C  268 Signed       4 DHDRLDID       CCPV/PPPV of last DIDBK page
0110  272 Signed       4 *              Reserved for IBM use (CCPV/PPPV)
0114  276 Signed       4 *              Reserved for IBM use (CCPV/PPPV)
0118  280 Signed       4 *              Reserved for IBM use (CCPV/PPPV)
011C  284 Signed       4 *              Reserved for IBM use (CCPV/PPPV)
0120  288 Signed       4 * (52)         Reserved for IBM use
01F0  496 Character    8 DHDRVRMS (0)   Associated DIRECTXA CP Level
01F0  496 Character    4 DHDRRMV (0)    Rel/Mod/Version
01F0  496 Character    2 DHDRRM         Release/Mod Level
01F2  498 Character    2 DHDRV          Version
01F4  500 Character    4 DHDRS          Service Level
01F8  504 Character    6 DHDRSRES       &SYSRES substitution value
01FE  510 Bitstring    2 *              Reserved for IBM use
          00000200       DHDRLEN        (*-DHDR) Size of fixed-length
                                        portion of the DHDR, in bytes
          00000040       DHDRSZ         (*-DHDR+7)/8 Size of fixed-length
                                        portion of the DHDR, in
                                        doublewords
             The directory control block table (DHDRDCBT)
             contains the DHDRDCBE entries for each control
             block in the object directory. The order of the
             DHDRDCBE entries in the table must be the same as
             the order of the directory control block IDs
             defined in DHDRDCBI.
0200  512 Dbl-Word     8 DHDRDATA (0)   Variable-length portion of DHDR
0200  512 Dbl-Word     8 DHDRDCBT (0)   Directory control block table
                                        (starts at offset X'200')
0200  512 Character   16 DHDRDCBE (0)   Dir control block table entry
0200  512 Signed       4 DHDRDCBS       Size (in bytes) of the cntrl blck
0204  516 Bitstring    1 DHDRDCBV       Version code for this cntrl blck
          00000000       DHDRCBV0       X'00' DHDRCBV0 Initial version
0205  517 Bitstring    1 DHDRDCBF       Directory control block flag
          00000000       DHDRINIT       X'00' DHDRINIT Init flag of this
                                        dir CB
          00000080       DHDRIDGD       X'80' DHDRIDGD The block is
                                        contained in DGDBK
0206  518 Signed       2 DHDRDCBI       Directory contrl block IDs
          00000001       DHDRDHDR       1 DHDRDHDR DHDR ID
          00000002       DHDRDNX1       2 DHDRDNX1 DNXBK ID for USER 1st
                                        level index
          00000003       DHDRDNX2       3 DHDRDNX2 DNXBK ID for USER 2nd
                                        level index
          00000004       DHDRDNX3       4 DHDRDNX3 DNXBK ID for UID 1st
                                        level index
          00000005       DHDRDNX4       5 DHDRDNX4 DNXBK ID for UID 2nd
                                        level index
          00000006       DHDRDNX5       6 DHDRDNX5 DNXBK ID for GID index
          00000007       DHDRDUND       7 DHDRDUND DUNDX ID
          00000008       DHDRDVMD       8 DHDRDVMD DVMD ID
          00000009       DHDRDDEV       9 DHDRDDEV DDEV ID
          0000000A       DHDRDCPU       10 DHDRDCPU DCPU ID
          0000000B       DHDRDNSA       11 DHDRDNSA DNSA ID
          0000000C       DHDRDAPP       12 DHDRDAPP DAPPC ID
          0000000D       DHDRDIUC       13 DHDRDIUC DIUCV ID
          0000000E       DHDRDGDB       14 DHDRDGDB DGDBK ID
          0000000F       DHDRDGRP       15 DHDRDGRP DGRPM ID
          00000010       DHDRDGSB       16 DHDRDGSB DGSBK ID
          00000011       DHDRDSGR       17 DHDRDSGR DSGR ID
          00000012       DHDRDBGF       18 DHDRDBGF DGFBK ID
          00000013       DHDRDDID       19 DHDRDDID DIDBK ID
             Notes      : In order to avoid changing the existing
                   directory control block IDs in DHDRCBI, the
                   new ID should be added at the end with the
                   number of the last directory control block
                   ID in DHDRDCBI plus one.
0208  520 Dbl-Word     8 *              Reserved field
0210  528 Character   16 DHDRNXTE (0)   Next dir cntrl blck table entry
                                        **** THE VALUE OF FSMAXB FOR
                                        DATAMAP IS 4072
          000000DE       DHDRMXTE       (FSMAXB-DHDRLEN)/L'DHDRDCBE
                                        Maximum number of dir control
                                        block table entries
          00000DE0       DHDRMXLN       (DHDRMXTE*L'DHDRDCBE) Maximum
                                        length of DHDRDCBT
          00000FE0       DHDRMXBS       (DHDRLEN+DHDRMXLN) Maximum DHDR
                                        size in bytes
          000001FC       DHDRMXDS       (DHDRMXBS+7)/8 Maximum DHDR size
                                        in DBs
          00000000       DHDRVLEN       0 Length zero for variable len CB

 

DHDR Storage Layout

          
*** DHDR - Directory header block
*
*     +---------------------------+------+------+------+------+
*   0 |         DHDRSIZE          |:RODVR|:RFLAG|//////|:RVERS|
*     +---------------------------+------+------+------+------+
*   8 |                       DHDRLABL                        |
*     |                                                       |
*     +---------------------------+---------------------------+
*  18 |         DHDRUSER          |         DHDRUID           |
*     +---------------------------+---------------------------+
*  20 |         DHDRGID           |///////////////////////////|
*     +---------------------------+///////////////////////////|
*     |///////////////////////////////////////////////////////|
*     |///////////////////////////////////////////////////////|
*     +---------------------------+---------------------------+
*  38 |         DHDRNCBE          |                           |
*     +---------------------------+                           |
*  40 |                                                       |
*     =                       DHDRDCRY                        =
*     |                           +---------------------------+
*  B8 |                           |         DHDRLUSE          |
*     +---------------------------+---------------------------+
*  C0 |         DHDRLDUN          |         DHDRLUID          |
*     +---------------------------+---------------------------+
*  C8 |         DHDRLGID          |         DHDRLVMD          |
*     +---------------------------+---------------------------+
*  D0 |         DHDRLCPU          |         DHDRLDEV          |
*     +---------------------------+---------------------------+
*  D8 |         DHDRLIUC          |         DHDRLNSA          |
*     +---------------------------+---------------------------+
*  E0 |         DHDRLAPC          |         DHDRLGFD          |
*     +---------------------------+-------------+-------------+
*  E8 |         DHDRLDGS          |  DHDRODUN   |  DHDROUID   |
*     +-------------+-------------+-------------+-------------+
*  F0 |  DHDROGID   |  DHDROVMD   |  DHDROCPU   |  DHDRODEV   |
*     +-------------+-------------+-------------+-------------+
*  F8 |  DHDROIUC   |  DHDRONSA   |  DHDROAPC   |  DHDROGFD   |
*     +-------------+-------------+-------------+-------------+
* 100 |  DHDRODGS   |  DHDRODID   |/////////////|/////////////|
*     +-------------+-------------+-------------+-------------+
* 108 |/////////////|/////////////|         DHDRLDID          |
*     +-------------+-------------+---------------------------+
* 110 |///////////////////////////|///////////////////////////|
*     +---------------------------+---------------------------+
* 118 |///////////////////////////|///////////////////////////|
*     +---------------------------+---------------------------+
* 120 |///////////////////////////////////////////////////////|
*     =///////////////////////////////////////////////////////=
*     |///////////////////////////////////////////////////////|
*     +-------------+-------------+---------------------------+
* 1F0 |   DHDRRM    |   DHDRV     |          DHDRS            |
*     +-------------+-------------+-------------+-------------+
* 1F8 |                DHDRSRES                 |/////////////|
*     +---------------------------+------+------+-------------+
* 200 |         DHDRDCBS          |:RDCBV|:RDCBF|  DHDRDCBI   |
*     +---------------------------+------+------+-------------+
* 208 |///////////////////////////////////////////////////////|
*     +-------------------------------------------------------+
*
*** DHDR - Directory header block

 

DHDR Cross Reference

Symbol         Dspl Value
-------------- ---- -----
DHDRCBV0       0204 00000000
DHDRCMOD       0005 02
DHDRDAPP       0206 0000000C
DHDRDATA       0200
DHDRDBGF       0206 00000012
DHDRDCBE       0200
DHDRDCBF       0205
DHDRDCBI       0206
DHDRDCBS       0200
DHDRDCBT       0200
DHDRDCBV       0204
DHDRDCPU       0206 0000000A
DHDRDCRY       003C
DHDRDDEV       0206 00000009
DHDRDDID       0206 00000013
DHDRDGDB       0206 0000000E
DHDRDGRP       0206 0000000F
DHDRDGSB       0206 00000010
DHDRDHDR       0206 00000001
DHDRDIUC       0206 0000000D
DHDRDNSA       0206 0000000B
DHDRDNX1       0206 00000002
DHDRDNX2       0206 00000003
DHDRDNX3       0206 00000004
DHDRDNX4       0206 00000005
DHDRDNX5       0206 00000006
DHDRDSGR       0206 00000011
DHDRDUND       0206 00000007
DHDRDVMD       0206 00000008
DHDRFLAG       0005
DHDRGID        0020
DHDRHDR        0000
DHDRIDGD       0205 00000080
DHDRINIT       0205 00000000
DHDRLABL       0008
DHDRLAPC       00E0
DHDRLCPU       00D0
DHDRLDEV       00D4
DHDRLDGS       00E8
DHDRLDID       010C
DHDRLDUN       00C0
DHDRLEN        01FE 00000200
DHDRLGFD       00E4
DHDRLGID       00C8
DHDRLIUC       00D8
DHDRLNSA       00DC
DHDRLUID       00C4
DHDRLUSE       00BC
DHDRLVMD       00CC
DHDRMXBS       0210 00000FE0
DHDRMXDS       0210 000001FC
DHDRMXLN       0210 00000DE0
DHDRMXTE       0210 000000DE
DHDRNCBE       0038
DHDRNXTE       0210
DHDROAPC       00FC
DHDROCPU       00F4
DHDRODEV       00F6
DHDRODGS       0100
DHDRODID       0102
DHDRODUN       00EC
DHDRODVR       0004
DHDRODV0       0004 00000000
DHDRODV1       0004 00000001
DHDROGFD       00FE
DHDROGID       00F0
DHDROIUC       00F8
DHDRONSA       00FA
DHDROUID       00EE
DHDROVMD       00F2
DHDRRM         01F0
DHDRRMV        01F0
DHDRS          01F4
DHDRSIZE       0000
DHDRSRES       01F8
DHDRSSI        0005 01
DHDRSZ         01FE 00000040
DHDRUID        001C
DHDRUSER       0018
DHDRV          01F2
DHDRVERS       0007
DHDRVER0       0007 00000000
DHDRVLEN       0210 00000000
DHDRVRMS       01F0

This information is based on z/VM V6R2.0. Last updated on 21 Nov 2011 at 10:59:18 EDT.
Copyright IBM Corporation, 1990, 2011