UDM - zOS File Systems
Overview
The z/OS data set file system is a flat file system. There are no concepts of directories. The files are more commonly referred to as data sets.
(Although ddname is referred to as a z/OS file system, it is not a different file system than data set. However, ddnames do have their own naming conventions and behavior relative to UDM's CFS.)
z/OS data sets supported by UDM fall into two major categories:
- Sequential
Sequential data set has a data set organization of Physically Sequential (PS). - Partitioned
Partitioned Data Set (PDS) has a data organization of Partitioned Organization (PO), which also includes system managed Partitioned Data Set Extended (PDSE) organization.
A PDS is treated as a directory in CFS. A PDS contains a set of individual files called members, which is analogous to a directory containing a set of files. A PDS member has a maximum length of 8 characters.
CFS Terminology Associated with z/OS Data Sets
The following table associates CFS terminology with z/OS partitioned and sequential data sets. Fully qualified data set names are enclosed in apostrophes.
CFS |
Sequential |
Partitioned |
---|---|---|
path |
Data set name. A path includes fully qualified names and relative names.
|
PDS name and member name in parenthesis or just a member name. A path includes fully qualified names and relative names.
|
absolute path |
Fully qualified data set name.
|
Fully qualified PDS name and member name in parenthesis.
|
relative path |
Data set name without one or more leading qualifiers. The name is relative to the current directory.
|
PDS name without its high-level or mid-level qualifiers and a member name enclosed in parenthesis or just a member name. The name is relative to the current directory.
|
file |
Same as path (data set name). |
Member name only.
|
directory |
n/a |
PDS name without the member name. The directory name may be relative or absolute.
|
current directory |
Current leading qualifiers. Note It may be more than one qualifier long.
|
Current leading qualifiers. Note It may be more than one qualifier long or even the full PDS name.
|
UDM is capable of running as a JES batch job. In a batch environment data sets may be allocated dynamically by UDM or UDM may use data sets pre-allocated with JCL DD statements.
The JCL DD statement allocates the data set and defines its to the batch job environment as a ddname that the program uses.
CFS Terminology Associated with z/OS ddnames
The following table associates CFS terminology with z/OS partitioned and sequential data sets allocated to ddnames.
CFS |
Sequential |
Partitioned |
---|---|---|
path |
ddname defined with a JCL DD statement.
|
ddname with a member name enclosed in parenthesis or just the member name.
|
absolute path |
There is only one type of path and that is absolute. Refer to path above.
|
ddname and member name enclosed in parenthesis. Refer to path above. |
relative path |
n/a |
Member name only. The path is relative to the current directory. |
file |
Same as path (the ddname).
|
Member name only.
|
directory |
n/a |
ddname with which a PDS is allocated. |
current directory |
n/a |
Current ddname with which a PDS is allocated.
|
z/OS Data Sets
There are a variety of data sets on z/OS. The UDM-supported data set organizations and data set attributes are listed below.
Data Set Names
A z/OS data set name is composed of one or more qualifiers separated by periods. A data set has a maximum length of 44 characters.
A qualifier has an maximum length of eight characters. The first character of a qualifier must start with A-Z, @, #, or $. The remaining characters can be 0-9, A-Z, @, #, $, or -.
The first qualifier is commonly referred to as the high-level qualifier (HLQ).
An example data set name is SYS1.CEE.CEEPRC, where:
- SYS1 is the high-level qualifier.
- CEE is the second qualifier.
- CEEPRC is the third and last qualifier.
In some applications contexts, the HLQ can be left off. TSO and ISPF are such applications. UDM also behaves in this manner. A distinction is the made between a data set that specifies the HLQ and one that does not specify the HLQ. When the HLQ is specified, it is referred to as a fully qualified data set name and is enclosed in apostrophes.
Data Set Organization
A data set's organization is obtained from the VTOC's format-1 DSCB. If the data set is cataloged, the DSCB is only read for non-VSAM catalog entries.
The following organizations are supported:
- Physical Sequential
- Partitioned Organization
- Partitioned Data Set Extended
- Generation Data Set
The following organizations are not supported:
- Indexed sequential
- Direct
- Unmovable
- VSAM
Any organization not listed is undetermined.
Record Format
The following record formats are supported:
- Fixed length
- Variable length
- Undefined length
- Blocked
- Fixed length standard
- Variable length spanned
- ISO/ANSI control character
- Machine control character
Block Size
There are three different types of block sizes:
- User specified block size that cannot exceed 32,760.
- System determined block size that cannot exceed 32,760.
- Block sizes supported by the Large Block Interface (LBI) that permits sizes up to 2G. LBI is supported by DFP on tape devices only at this time.
z/OS Generation Data Group and Generation Data Sets
A Generation Data Group (GDG) is a catalog entry used to maintain a group of Generation Data Sets (GDS).
GDSs are referred to with absolute names or relative names:
- Absolute name has the form of GDG.G0000V00.
- Relative name has the form of GDG(n), where:
- n = 0 for the current GDS
- n = -1 for the previous GDS
- n = +1 for a new GDS
Allocation
Allocation attributes for a GDS are obtained differently depending on whether the data set name is an absolute or relative form.
Absolute Name
Allocation attributes for an absolute name are provided like any other data set through JCL keywords or allocation options.
Relative Name
Allocation attributes for relative names are provided with one of the following methods:
- By referring to a cataloged data set from which attributes are copied.
- DCB=(dsname)
- LIKE=dsname
- REFDD=ddname
- By referring to a model Data Set Control Block (DSCB) on the volume on which the GDG is cataloged. This cannot be used for SMS managed data sets.
- DCB=(modeldsname,yourattributes)
- By using the DATACLAS and LIKE allocation keywords.
- Through the assignment of a DATACLAS by a data class ACS routine.
Catalogs
There are two types of catalogs:
- Integrated Catalog Facility (ICF)
- VSAM Catalogs
Note
IBM has dropped support for VSAM Catalogs as of January 1, 2000; UDM does not support them.
Symbolic Names
A catalog entry can be defined with symbolic names for the volume serial number. UDM does resolve the symbolic names when they are found for the volume serial number.
Catalog Entry Types
A catalog entry is defined as a specific type. UDM only supports the non-VSAM type entry. A catalog entry type can by any one of the following:
- Non-VSAM Data Set
- Generation Data Set
- Cluster
- Alternate Index
- VSAM Path
- Alias
- User Catalog Connector
- Tape Volume Catalog Library
- Tape Volume Catalog Volume
z/OS Allocation
Data set allocation is the process of obtaining access to the data set.
If the data set already exists, it resides on a device, such as a tape or, more likely, a disk. In order to allocate an existing data set, the device must be known. A volume serial name or number and a unit name or number represents an I/O device in z/OS.
The unit and volume serial number (volser) can be specified explicitly or specified implicitly (with a catalog entry).
Allocation can be performed with JCL or dynamically. Dynamic allocation requires allocation attributes to be specified by the user. UDM dynamic allocation of a data set that has been migrated by HSM (or similar three-party product) will result in the data set being recalled. UDM will wait until the recall is complete and then continue processing.