Modernization Hub

Directory

PDS/PDSE
Enhanced Definition

In the context of IBM z/OS, a **Directory** is a control block structure within a Partitioned Data Set (PDS) or Partitioned Data Set Extended (PDSE) that serves as an index to the members contained within that data set. It stores essential information about each member, enabling the system to quickly locate and access specific programs, data, or JCL procedures. A **directory** in z/OS primarily refers to a structure within the z/OS UNIX System Services (USS) file system (zFS or HFS) that organizes files and other directories in a hierarchical manner, analogous to folders on other operating systems. In traditional z/OS data sets, the closest functional equivalent is a **Partitioned Data Set (PDS)** or **PDS/E**, which acts as a container for multiple members.

Key Characteristics

    • Member Indexing: Contains an entry for each member, including its name, its starting location (Track and Record, or TTR), and other attributes like creation date, modification date, and user data (if present).
    • PDS vs. PDSE Differences: For PDSs, the directory is a fixed-size area allocated at data set creation, specified in directory blocks. For PDSEs, the directory is dynamically managed and can expand as needed, eliminating the "directory full" problem common with PDSs.
    • Access Method: Primarily managed and accessed by the Basic Partitioned Access Method (BPAM) and other system services. Programs use macros like FIND to locate members within the directory.
    • Efficiency: Allows for direct access to individual members without scanning the entire data set, crucial for performance in libraries containing thousands of programs or procedures.
    • User Data: Each directory entry can optionally store up to 56 bytes of user-defined data, often used by compilers or utilities to store version numbers, compile dates, or other metadata.

Use Cases

    • Program Libraries: Locating and loading executable programs (load modules) from SYS1.LINKLIB, STEPLIB, or JOBLIB concatenations for execution.
    • Source Code Management: Identifying and retrieving specific COBOL, PL/I, or Assembler source code members from development libraries for editing or compilation.
    • JCL Procedure Libraries (PROCLIBs): The operating system uses the directory to find and execute JCL procedures (PROCs) invoked within job streams.
    • Utilities and Tools: ISPF (Interactive System Productivity Facility) uses directory information extensively to display member lists, allow browsing, editing, and management of PDS/PDSE members.
    • System Libraries: Critical for the functioning of z/OS, as system components and utilities reside in PDS/PDSEs (e.g., SYS1.MACLIB, SYS1.PARMLIB, SYS1.PROCLIB).

Related Concepts

The directory is an intrinsic component of a Partitioned Data Set (PDS) or **

Related Vendors

IBM

646 products

SDS

31 products

Tone Software

14 products

Trax Softworks

3 products

Related Categories

Operating System

154 products

Tools and Utilities

519 products

Administration

395 products

Files and Datasets

168 products

Automation

222 products

Browse and Edit

64 products