Version 7.4.4

Device and File Considerations

This section provides information for the following device- and system file-related topics:


Supported Device Types

The standard characteristics of the device types supported by Adabas are summarized in the following table. The Adabas block sizes and RABNs per track are provided for each component for each device type.

Device Trks/Cyl ASSO DATA WORK PLOG/RLOG CLOG TEMP/SORT/DSIM Notes
1512 16 2048:128 4096:64 4096:64 4096:64 4096:64 4096:64  
2512 16 4096:64 8192:32 8192:32 8192:32 8192:32 8192:32  
3375 12 2016:15 4092:8 4096:8 4096:8 4096:8 8608:4  
3380 15 2004:19 4820:9 5492:8 5492:8 4820:9 7476:6 2
3390 15 2544:18 5064:10 5724:9 5724:9 5064:10 8904:6 2
3512 16 4096:64 16384:16 16384:16 16384:16 16384:16 16384:16  
5121 15 2048:16 4096:8 4096:8 4096:8 4096:8 4096:8  
5122 15 4096:8 8192:4 8192:4 8192:4 8192:4 8192:4  
5123 15 4096:8 16384:2 16384:2 16384:2 16384:2 16384:2  
8345 15 4092:10 22780:2 22920:2 22920:2 22920:2 22920:2  
8380 15 3476:12 6356:7 9076:5 9076:5 9076:5 9076:5 1
8381 15 3476:12 9076:5 11476:4 11476:4 9076:5 9076:5 1
8385 15 4092:10 23292:2 23468:2 23468:2 23468:2 23468:2 1
8390 15 3440:14 6518:8 10706:5 10706:5 8904:6 8904:6 1
8391 15 4136:12 10796:5 13682:4 13682:4 8904:6 18452:3 1
8392 15 4092:12 12796:4 18452:3 18452:3 18452:3 18452:3 1
8393 15 4092:12 27644:2 27990:2 27990:2 27990:2 27990:2 1
9345 15 4092:10 7164:6 11148:4 11148:4 22920:2 22920:2 2

Notes:

  1. The 8350, 838n, and 839n are pseudo-device types physically contained on a 3350, 3380, and 3390 device, respectively, but for which some or all of the standard block sizes are larger.
  2. The IBM RAMAC 9394 emulates devices 3390 Model 3, 3380 Model K, or 9345 Model 2.

Top of page

FBA Devices

All device definitions for Adabas control statements for FBA disks should specify one of the following devices types:

Note:
Virtual FBA devices are not permanent and are, therefore, only suitable for holding temporary or work data sets.

Choose a device type based on the block sizes given in the following tables:

SCSI Device Types:

Dev Type Asso blksz Data blksz Work blksz Temp blksz Sort blksz PLOG blksz CLOG blksz
1512 2048 4096 4096 4096 4096 4096 4096
2512 4096 8192 8192 8192 8192 8192 8192
3512 4096 16384 16384 16384 16384 16384 16384

Virtual FBA Device Types:

Dev Type Asso blksz Data blksz Work blksz Temp blksz Sort blksz PLOG blksz CLOG blksz
5121 2048 4096 4096 4096 4096 4096 4096
5122 4096 8192 8192 8192 8192 8192 8192
5123 4096 16384 16384 16384 16384 16384 16384

The pseudo-cylinder for each of these devices has a different number of blocks as described below:

1512 cylinder = FBA blocks/8192
2512 cylinder = FBA blocks/8192
3512 cylinder = FBA blocks/8192
5121 cylinder = FBA blocks/960
5122 cylinder = FBA blocks/960
5123 cylinder = FBA blocks/960

The size definitions for FBA devices on Adabas control statements can specify the number of pseudo-cylinders or the number of Adabas blocks (RABNs).

Make sure that the starting block and the number of FBA blocks on the VSE EXTENT statement are on an FBA pseudo-cylinder boundary, which is based on the device as specified above for each Adabas file comprising the database:

Top of page

ECKD Devices

Adabas supports ECKD DASD devices such as the IBM 3390 with the 3990 controller and ESCON channels.

During an open operation, ADAIOR determines which DASD device types are being used for the ASSO, DATA, WORK, SORT, and TEMP datasets. At that time, Adabas issues an informational message for each Adabas database component, where type is the component:

ADA164 ... FILE DDtype HAS BEEN OPENED IN ckd/eckd MODE - RABN SIZE rabn-size

Note:
Software AG strongly recommends that you avoid mixing ECKD and CKD extents within a file, because the file will be opened only in CKD mode. Mixing extents could degrade performance when file I/O operations are performed.

Top of page

Adding New Devices

Support for new device types that include user-defined block sizes can be implemented in ADAIOR by modifying one of the table of device-constant entries (TDCEs) reserved for this purpose.

A TDCE is X’40’ bytes long and the first free TDCE can be identified by X’0000’ in its first two bytes (TDCDT).

For all versions of Adabas prior to Version 6.2, the address of the first TDCE is at offset ADAIOR+ X‘34’.

For Adabas Version 6.2, TDCE entries are in the ADAIOR CSECT TDCON: the first TDCE entry is at offset 0; the first free TDCE entry is at offset X‘400’.

For Adabas Version 7.4, TDCE entries are in the ADAIOS CSECT TDCON, which corresponds to ESDID 1A8 in object module IOSVSE.OBJ. The first TDCE entry is at offset X‘EF90’ into IOSVSE.OBJ; the first free TDCE entry is at offset X‘F550’.

This information is valuable when adding an additional TDCE entry, and when zapping the object module and relinking ADAIOS under VSE.

The z/VSE MSHP control statements to add a TDCE entry at the first free entry thus take the form:

// EXEC MSHP
CORRECT 9001-ADA-00-741 :AD99998
AFFECTS MODULE=IOSVSE,ESDID=1A8
ALTER F550 0000 : nnnn
ALTER F552 0000 : nnnn
.
. (etc.)
.
INVOLVES LINK=LNKIOR/*

Information to be Zapped into the First Free ADAIOR TDCE

The information in the following tables must be zapped into the first free TDCE. The rules described in the section General Rules for Defining Device Block Sizes must be followed when changing the TDCE.

Label Offset Contents
TDCDT 00 Device type in unsigned decimal (X’3385’), must be numeric, and unique among all TDCEs.
TDCKSN 02 Constant set number: must be uniquely chosen from the values X’2B’ or X’2E’.
TDCF 03 The flag bit must be set—TDCFCKD (X’40’) for CKD devices, TDCFECKD (X’60’) for ECKD devices or TDCFECKD (X’61’) for ECKD, not user defined devices.
TDCDT1 04 (see note)
TDCDT2 05 (see note)
TDCDT3 06 (see note)
TDCDT4 07 (see note)
TDCMSBS 08 Refer to the TDCMSBS default table in Maximum Sequential Block Size in the Adabas z/OS installation instructions for more system- and device-related information.
TDCTPC 0A Number of tracks per cylinder.
TDCCIPT 0C Number of FBA blocks or PAM pages per track (if TDCFFBA is set).
TDCBPCI 0E Number of bytes per FBA block or PAM page (2048 if TDCFFBA is set).
TDCABPT 10 Number of Associator blocks per track.
TDCABS 12 Associator block size.
TDCACPB 14 Number of FBA blocks or PAM pages per Associator block (if TDCFFBA is set).
TDCDBPT 16 Number of Data Storage blocks per track.
TDCDBS 18 Data Storage block size.
TDCDCPB 1A Number of FBA blocks or PAM pages per Data Storage block (if TDCFFBA is set).
TDCWBPT 1C Number of Work blocks per track.
TDCWBS 1E Work block size.
TDCWCPB 20 Number of FBA blocks or PAM pages per Work block (if TDCFFBA is set).
TDCTSBPT 22 Number of TEMP or SORT blocks per track
TDCTSBS 24 TEMP or SORT block size.
TDCTSCPB 26 Number of FBA blocks or PAM pages per TEMP or SORT block (if TDCFFBA is set).
TDCPBPT 28 Number of PLOG blocks per track.
TDCPBS 2A PLOG block size.
TDCPCPB 2C Number of FBA blocks or PAM pages per PLOG block (if TDCFFBA is set).
TDCCBPT 2E Number of CLOG blocks per track.
TDCCBS 30 CLOG block size.
TDCCCPB 32 Number of FBA blocks or PAM pages per CLOG block (if TDCFFBA is set).

Note:
One or more z/VSE codes for identifying the device type: PUB device type from PUBDEVTY (refer to the IBM MAPDEVTY macro).

In addition, the length of a sequential protection log block may have to be increased. This length is contained in the corresponding PTT entry in CSECT I_PTT of the load module ADAIOR. The address of the first PTT entry is contained in the fullword at ADAIOR+X‘4C8’. PTT entries begin at offset 0 into CSECT I_PTT.

Each PTT entry is X’10’ bytes long and has the structure given below:

Label Offset Contents
PTTPN 00 Program number
PTTFT 01 File type
PTTN 02 DD name characters 2 - 8
PTTF 08

Flags:
OUT (X’80’) output
BSAM (X’40’) BSAM
BACK (X’20’) read backwards
JCL (X’10’) BLKSIZE/LRECL/RECFM taken from DATADEF statement or label
UNDEF (X’04’) undefined record format
VAR (X’02’) variable record format

- 09 Reserved
PTTMBS 0A Maximum block size
- 0C Reserved

The PTT entry for the sequential protection log can be identified by X‘12F1’ in its first two bytes.

General Rules for Defining Device Block Sizes

The following general rules must be followed when defining Adabas device block sizes:

Block Rules for ASSO/DATA

The following rules are applicable for Associator and Data Storage:

Block Rule for WORK

The following rule is applicable for Work::

Block Rules for TEMP/SORT

The following rules are applicable for TEMP and SORT:

TEMP and SORT are generally read and written sequentially; therefore, the larger the TEMP/SORT block size, the better.

Block Rule for PLOG or SIBA

The following rules are applicable for PLOG and SIBA:

Using 3480/3490 Tape Cartridge Compression (IDRC)

The use of hardware compression (IDRC) is not recommended for protection log files. The ADARES BACKOUT function will run much longer when processing compressed data. Also, the BACKOUT function is not supported for compressed data.

Top of page

User ZAPs to Change Logical Units

The specified zaps should be added to the module IORVSE / phase ADAIOR, not to the specified utility.

For Adabas version 7.4 or above, PPT entries are in the ADAIOR CSECT I_PTT. The first PTT entry is at offset 0 into CSECT I_PTT.

When zapping the object module and relinking ADAIOR, note that the ADAIOR CSECT I_PTT corresponds to ESDID 007 in object module IORVSE.OBJ. For Adabas 7.4, the offset of the CSECT I_PTT into IORVSE.OBJ is X'1000'.

Utility File Default SYS Number PTT Offset VER REP
ADACDC SIIN SYS010 608 1A0A 1Axx
ADACMP AUSBA SYS012 08 820C 82xx
EBAND SYS010 18 180A 18xx
FEHL SYS014 28 820E 82xx
ADACNV FILEA SYS010 5E8 820A 82xx
ADAGEN BAND SYS010 38 820A 82xx
ADALOD FILEA (OUTPUT) SYS012 48 820C 82xx
FILEB (INPUT) SYS012 58 020C 02xx
EBAND SYS010 68 1A0A 1Axx
ISN SYS016 78 1A10 1Axx
OLD SYS014 88 820E 82xx
ADAMER EBAND SYS010 98 1A0A 1Axx
ADANUC LOG SYS012 A8 820C 82xx
SIBA SYS014 B8 C20E C2xx
ADAORD FILEA (OUTPUT) SYS010 C8 820A 82xx
FILEA (INPUT) SYS010 D8 120A 12xx
ADAPLP PLOG SYS014 E8 1A0E 1Axx
ADARAI OUT SYS010 618 800A 80xx
ADAREP SAVE SYS010 F8 1A0A 1Axx
PLOG SYS011 108 1A0B 1Axx
ADARES SIIN SYS020 118 1A14 1Axx
BACK SYS020 128 2C14 1Cxx
SIAUS1 SYS021 138 8215 82xx
SIAUS2 SYS022 148 8216 82xx
ADASAV SAVE1 SYS011 158 820B 82xx
SAVE2 SYS012 168 820C 82xx
SAVE3 SYS013 178 820D 82xx
SAVE4 SYS014 188 820E 82xx
SAVE5 SYS015 198 820F 82xx
SAVE6 SYS016 1A8 8210 82xx
SAVE7 SYS017 1B8 8211 82xx
SAVE8 SYS018 1C8 8212 82xx
DUAL1 SYS021 1D8 8215 82xx
DUAL2 SYS022 1E8 8216 82xx
DUAL3 SYS023 1F8 8217 82xx
DUAL4 SYS024 208 8218 82xx
DUAL5 SYS025 218 8219 82xx
DUAL6 SYS026 228 821A 82xx
DUAL7 SYS027 238 821B 82xx
DUAL8 SYS028 248 821C 82xx
REST1 SYS011 258 1A0B 1Axx
REST2 SYS012 268 120C 1Axx
REST3 SYS013 278 120D 1Axx
REST4 SYS014 288 120E 1Axx
REST5 SYS015 298 120F 1Axx
REST6 SYS016 2A8 1210 1Axx
REST7 SYS017 2B8 1211 1Axx
REST8 SYS018 2C8 1212 1Axx
FULL SYS030 2D8 1A1E 1Axx
DEL1 SYS031 2E8 1A1F 1Axx
DEL2 SYS032 2F8 1A20 1Axx
DEL3 SYS033 308 1A21 1Axx
DEL4 SYS034 318 1A22 1Axx
DEL5 SYS035 328 1A23 1Axx
DEL6 SYS036 338 1A24 1Axx
DEL7 SYS037 348 1A25 1Axx
DEL8 SYS038 358 1A26 1Axx
PLOG SYS010 368 1A0A 1Axx
ADASEL EXPA1 SYS011 378 820B 82xx
EXPA2 SYS012 388 820C 82xx
EXPA3 SYS013 398 820D 82xx
EXPA4 SYS014 3A8 820E 82xx
EXPA5 SYS015 3B8 820F 82xx
EXPA6 SYS016 3C8 8210 82xx
EXPA7 SYS017 3D8 8211 82xx
EXPA8 SYS018 3E8 8212 82xx
EXPA9 SYS019 3F8 8213 82xx
EXPA10 SYS020 408 8214 82xx
EXPA11 SYS021 418 8215 82xx
EXPA12 SYS022 428 8216 82xx
EXPA13 SYS023 438 8217 82xx
EXPA14 SYS024 448 8218 82xx
EXPA15 SYS025 458 8219 82xx
EXPA16 SYS026 468 821A 82xx
EXPA17 SYS027 478 821B 82xx
EXPA18 SYS028 488 821C 82xx
EXPA19 SYS029 498 821D 82xx
EXPA20 SYS030 4A8 821E 82xx
SIIN SYS010 4B8 1A0A 1Axx
ADATRA TRA SYS019 4C8 820A 82xx
ADAULD OUT1 SYS010 4D8 820A 820xx
OUT2 SYS011 4E8 820B 820xx
ISN SYS012 4F8 820C 820xx
SAVE SYS013 508 1A0D 1Axx
PLOG SYS014 518 1A0E 1Axx
FULL SYS030 528 1A1E 1Axx
DEL1 SYS031 538 1A1F 1Axx
DEL2 SYS032 548 1A20 1Axx
DEL3 SYS033 558 1A21 1Axx
DEL4 SYS034 568 1A22 1Axx
DEL5 SYS035 578 1A23 1Axx
DEL6 SYS036 588 1A24 1Axx
DEL7 SYS037 598 1A25 1Axx
DEL8 SYS038 5A8 1A26 1Axx
ADAVAL FEHL SYS014 5B8 820E 820xx

Top of page