String PDF syntax
A string PDF is an ASCII text file that contains one or more string physical descriptions. A string physical description has the following syntax.
STRING = label
[ABBREVID = id]
UNITTYPE = unit
[COLUMNS = number]
[TWOHEADED = {TRUE | FALSE}]
[ (DEFAULT | EXACTLY) number UNITS ]
( UNIT [= label] (
DEVICES = number |...
DEVICERANGE = (position,count) [,(position,count)]...)
)...
[ALLOW {number | (number[,number]...)}]
[DEFAULT number]
HOSINTS = ( label (,label)... )
Explanation of PDF changes
DEFAULT- The
DEFAULTclause for the number of units indicates the number of units the string is created with. If theEXACTLYclause is used, this number does not change during the string is installed. The number of the unit definitions must be equal or larger as the number specified in the clause - ifEXACTLYis used, no unit definitions are allowed. DEVICESDEVICERANGE- The
DEVICESandDEVICERANGEclauses in the unit definitions specify either a count of devices or ranges of devices. Each range of devices owns a position and count. If the first unit definition uses theDEVICESkeyword, all subsequent unit definition must use theDEVICESkeyword. In the same way, if the first unit usesDEVICERANGE, all subsequent units must useDEVICERANGE. These definitions control the assignment of I/O device numbers to units when the string is created or when devices are added to the string. If theDEVICESkeyword is used, new devices will be assigned to units in the string sequentially - each unit owns the specified number of devices. IfDEVICERANGEis used, the position of the device in a sequence of new device numbers being added to the string will be compared with theDEVICERANGEdefinition for the units to determine which unit the device should be added to.
The allowed values for string attributes are:
| Attribute | Allowed Values | Description |
|---|---|---|
| ABBREVID | String of up to 8 characters | An optional identifier that can be used to select a particular physical description during IODF load or re-synchronization. |
| UNITTYPE | String of up to 13 characters | A valid device type (required), e.g. “3390” |
| COLUMNS | Positive integer | A number indicating the number of units in each row (default is 1). |
| TWOHEADED | TRUE or FALSE | If TRUE, the string is drawn with two strings of units and two sets of interfaces. The default value is FALSE. |
The IBM PDF for 3390 strings is as follows:
String = "IBM 3390 all models"
UnitType = "3390"
Default 3 Units
Unit Devices=8
Unit Devices=12
Unit Devices=12
Allow (4) Default 4 hosInts=(A,B,C,D)
The IBM PDF for IBM RAMAC Array DASD is as follows:
String = "IBM RAMAC Array DASD"
AbbrevId = "RAMAC"
UnitType = "3390"
Columns = 2
Exactly 16 Units
Unit DeviceRange=(30,2)
Unit DeviceRange=(28,2)
Unit DeviceRange=(26,2)
Unit DeviceRange=(24,2)
Unit DeviceRange=(22,2)
Unit DeviceRange=(20,2)
Unit DeviceRange=(18,2)
Unit DeviceRange=(16,2)
Unit DeviceRange=(0,2)
Unit DeviceRange=(2,2)
Unit DeviceRange=(4,2)
Unit DeviceRange=(6,2)
Unit DeviceRange=(8,2)
Unit DeviceRange=(10,2)
Unit DeviceRange=(12,2)
Unit DeviceRange=(14,2)
Allow 4 hosInts=(A0,A1,A2,A3)
This indicates that a RAMAC string contains 16 units arranged in two columns in the diagram, and that the first two devices (0 and 1) are assigned to the ninth unit (fifth row and first column), and so on.