z/os v1r6.0 dfsms: using data setsoberhtom/mainframe/... · note before using this information and...

704
z/OS DFSMS: Using Data Sets SC26-7410-04

Upload: others

Post on 28-Jul-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

  • z/OS

    DFSMS:

    Using

    Data

    Sets

    SC26-7410-04

    ���

  • z/OS

    DFSMS:

    Using

    Data

    Sets

    SC26-7410-04

    ���

  • Note

    Before

    using

    this

    information

    and

    the

    product

    it

    supports,

    be

    sure

    to

    read

    the

    general

    information

    under

    “Notices”

    on

    page

    637.

    Fifth

    Edition,

    September

    2004

    This

    edition

    applies

    to

    Version

    1

    Release

    6

    of

    z/OS®

    (5694-A01),

    Version

    1

    Release

    6

    of

    z/OS.e

    (5655-G52),

    and

    to

    all

    subsequent

    releases

    and

    modifications

    until

    otherwise

    indicated

    in

    new

    editions.

    This

    edition

    replaces

    SC26-7410-03.

    IBM®

    welcomes

    your

    comments.

    A

    form

    for

    readers’

    comments

    may

    be

    provided

    at

    the

    back

    of

    this

    publication,

    or

    you

    may

    address

    your

    comments

    to

    the

    following

    address:

    International

    Business

    Machines

    Corporation

    Department

    55JA,

    Mail

    Station

    P384

    2455

    South

    Road

    Poughkeepsie,

    NY

    12601-5400

    United

    States

    of

    America

    FAX

    (United

    States

    &

    Canada):

    1+845+432-9405

    FAX

    (Other

    Countries):

    Your

    International

    Access

    Code

    +1+845+432-9405

    IBMLink™

    (United

    States

    customers

    only):

    IBMUSM10(MHVRCFS)

    Internet

    e-mail:

    [email protected]

    World

    Wide

    Web:

    http://www.ibm.com/servers/eserver/zseries/zos/webqs.html

    If

    you

    would

    like

    a

    reply,

    be

    sure

    to

    include

    your

    name,

    address,

    telephone

    number,

    or

    FAX

    number.

    Make

    sure

    to

    include

    the

    following

    in

    your

    comment

    or

    note:

    v

    Title

    and

    order

    number

    of

    this

    document

    v

    Page

    number

    or

    topic

    related

    to

    your

    comment

    When

    you

    send

    information

    to

    IBM,

    you

    grant

    IBM

    a

    nonexclusive

    right

    to

    use

    or

    distribute

    the

    information

    in

    any

    way

    it

    believes

    appropriate

    without

    incurring

    any

    obligation

    to

    you.

    ©

    Copyright

    International

    Business

    Machines

    Corporation

    1987,

    2004.

    All

    rights

    reserved.

    US

    Government

    Users

    Restricted

    Rights

    Use,

    duplication

    or

    disclosure

    restricted

    by

    GSA

    ADP

    Schedule

    Contract

    with

    IBM

    Corp.

    http://www.ibm.com/servers/eserver/zseries/zos/webqs.html

  • Contents

    Figures

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . xiii

    Tables

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . xv

    About

    This

    Document

    .

    .

    .

    .

    .

    .

    .

    . xvii

    Major

    Divisions

    of

    This

    Document

    .

    .

    .

    .

    .

    . xvii

    Required

    product

    knowledge

    .

    .

    .

    .

    .

    .

    .

    . xvii

    Referenced

    documents

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . xviii

    Accessing

    z/OS

    DFSMS

    documents

    on

    the

    Internet

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . xviii

    Using

    LookAt

    to

    look

    up

    message

    explanations

    xviii

    Accessing

    z/OS

    licensed

    documents

    on

    the

    Internet

    xix

    Summary

    of

    Changes

    .

    .

    .

    .

    .

    .

    .

    . xxi

    Summary

    of

    Changes

    for

    SC26-7410-04

    z/OS

    Version

    1

    Release

    6

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . xxi

    New

    Information

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . xxi

    Changed

    Information

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . xxi

    Summary

    of

    Changes

    for

    SC26-7410-03

    z/OS

    Version

    1

    Release

    5

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . xxi

    New

    Information

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . xxi

    Changed

    Information

    .

    .

    .

    .

    .

    .

    .

    .

    . xxii

    Moved

    Information

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . xxii

    Summary

    of

    Changes

    for

    SC26-7410-02

    z/OS

    Version

    1

    Release

    3

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . xxii

    New

    Information

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . xxii

    Changed

    Information

    .

    .

    .

    .

    .

    .

    .

    .

    . xxiii

    Part

    1.

    All

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    . 1

    Chapter

    1.

    Working

    with

    Data

    Sets

    .

    .

    . 3

    Data

    Storage

    and

    Management

    .

    .

    .

    .

    .

    .

    .

    . 3

    System-Managed

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    . 4

    Distributed

    File

    Manager

    .

    .

    .

    .

    .

    .

    .

    .

    . 4

    Access

    Methods

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 4

    Basic

    Direct

    Access

    Method

    .

    .

    .

    .

    .

    .

    .

    . 4

    Basic

    Partitioned

    Access

    Method

    .

    .

    .

    .

    .

    .

    . 5

    Basic

    Sequential

    Access

    Method

    .

    .

    .

    .

    .

    .

    . 5

    Data-in-Virtual

    (DIV)

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 5

    Indexed

    Sequential

    Access

    Method

    .

    .

    .

    .

    .

    . 5

    Object

    Access

    Method

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 6

    Queued

    Sequential

    Access

    Method

    .

    .

    .

    .

    .

    . 6

    Virtual

    Storage

    Access

    Method

    .

    .

    .

    .

    .

    .

    . 6

    Access

    to

    z/OS

    UNIX

    Files

    .

    .

    .

    .

    .

    .

    .

    . 7

    Selection

    of

    an

    Access

    Method

    .

    .

    .

    .

    .

    .

    . 7

    Direct

    Access

    Storage

    Device

    (DASD)

    Volumes

    .

    .

    . 8

    DASD

    Labels

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 8

    Track

    Format

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 8

    Track

    Overflow

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 9

    VSAM

    Record

    Addressing

    .

    .

    .

    .

    .

    .

    .

    .

    . 9

    Actual

    and

    Relative

    Addressing

    with

    Non-VSAM

    Access

    Methods

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 10

    Magnetic

    Tape

    Volumes

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 11

    Using

    Magnetic

    Tape

    Labels

    .

    .

    .

    .

    .

    .

    .

    . 11

    Specifying

    the

    File

    Sequence

    Number

    .

    .

    .

    .

    . 12

    Identifying

    Unlabeled

    Tapes

    .

    .

    .

    .

    .

    .

    .

    . 14

    Using

    Tape

    Marks

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 14

    Data

    Management

    Macros

    .

    .

    .

    .

    .

    .

    .

    .

    . 15

    Data

    Set

    Processing

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 16

    Allocating

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 16

    Processing

    Data

    Sets

    through

    Programs

    .

    .

    .

    . 17

    Using

    Access

    Methods

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 17

    Using

    Addressing

    Modes

    .

    .

    .

    .

    .

    .

    .

    .

    . 18

    Using

    Hiperspace

    and

    Hiperbatch

    .

    .

    .

    .

    .

    . 18

    Processing

    VSAM

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    . 18

    Processing

    PDSs,

    PDSEs,

    and

    UNIX

    Directories

    19

    Processing

    Sequential

    Data

    Sets

    and

    Members

    of

    PDSEs

    and

    PDSs

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 19

    Processing

    UNIX

    Files

    with

    an

    Access

    Method

    . 20

    Processing

    EXCP,

    EXCPVR,

    and

    XDAP

    Macros

    21

    Distributed

    Data

    Management

    (DDM)

    Attributes

    .

    . 21

    Virtual

    I/O

    for

    Temporary

    Data

    Sets

    .

    .

    .

    .

    .

    . 22

    Data

    Set

    Names

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 22

    Catalogs

    and

    Volume

    Table

    of

    Contents

    .

    .

    .

    .

    . 23

    VTOC

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 24

    Catalogs

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 24

    Data

    Set

    Names

    and

    Metadata

    .

    .

    .

    .

    .

    .

    . 24

    Security

    of

    Data

    Set

    Names

    .

    .

    .

    .

    .

    .

    .

    . 25

    Chapter

    2.

    Using

    the

    Storage

    Management

    Subsystem

    .

    .

    .

    .

    .

    .

    . 27

    Using

    Automatic

    Class

    Selection

    Routines

    .

    .

    .

    . 29

    Allocating

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 30

    Allocating

    Data

    Sets

    with

    JCL

    .

    .

    .

    .

    .

    .

    . 30

    Allocating

    System-Managed

    Data

    Sets

    with

    the

    Access

    Method

    Services

    ALLOCATE

    Command

    . 32

    Allocating

    Data

    Sets

    with

    the

    TSO

    ALLOCATE

    Command

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 33

    Allocating

    Data

    Sets

    with

    Dynamic

    Allocation

    .

    . 34

    Chapter

    3.

    Allocating

    Space

    on

    Direct

    Access

    Volumes

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 35

    Specification

    of

    Space

    Requirements

    .

    .

    .

    .

    .

    . 35

    Blocks

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 35

    Average

    Record

    Length

    .

    .

    .

    .

    .

    .

    .

    .

    . 36

    Tracks

    or

    Cylinders

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 36

    Absolute

    Track

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 37

    Additional

    Space-Allocation

    Options

    .

    .

    .

    .

    . 37

    Maximum

    Data

    Set

    Size

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 37

    Maximum

    Size

    on

    One

    Volume

    .

    .

    .

    .

    .

    .

    . 37

    Maximum

    Number

    of

    Volumes

    .

    .

    .

    .

    .

    .

    . 37

    Maximum

    VSAM

    Data

    Set

    Size

    .

    .

    .

    .

    .

    .

    . 37

    Primary

    and

    Secondary

    Space

    Allocation

    without

    the

    Guaranteed

    Space

    Attribute

    .

    .

    .

    .

    .

    .

    .

    . 38

    Multivolume

    VSAM

    Data

    Sets

    .

    .

    .

    .

    .

    .

    . 38

    Multivolume

    Non-VSAM

    Data

    Sets

    .

    .

    .

    .

    . 38

    Extended-Format

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    . 38

    Allocation

    of

    Data

    Sets

    with

    the

    Guaranteed

    Space

    Attribute

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 39

    ©

    Copyright

    IBM

    Corp.

    1987,

    2004

    iii

  • Guaranteed

    Space

    with

    DISP=NEW

    or

    MOD

    .

    . 39

    Guaranteed

    Space

    for

    VSAM

    .

    .

    .

    .

    .

    .

    . 39

    Guaranteed

    Space

    with

    DISP=OLD

    or

    SHR

    .

    .

    . 40

    Guaranteed

    Space

    with

    Extended-Format

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 40

    Guaranteed

    Space

    Example

    .

    .

    .

    .

    .

    .

    .

    . 40

    Allocation

    of

    Data

    Sets

    with

    the

    Space

    Constraint

    Relief

    Attributes

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 41

    Extension

    to

    Another

    DASD

    Volume

    .

    .

    .

    .

    .

    . 41

    Examples

    of

    Dynamic

    Volume

    Count

    When

    Defining

    a

    Data

    Set

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 42

    Examples

    of

    Dynamic

    Volume

    Count

    When

    Allocating

    an

    Existing

    Data

    Set

    .

    .

    .

    .

    .

    .

    . 43

    Multiple

    Volume

    Considerations

    for

    Sequential

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 43

    Additional

    Information

    on

    Space

    Allocation

    .

    .

    . 44

    Chapter

    4.

    Backing

    Up

    and

    Recovering

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 45

    Using

    REPRO

    for

    Backup

    and

    Recovery

    .

    .

    .

    .

    . 46

    Using

    EXPORT

    and

    IMPORT

    for

    Backup

    and

    Recovery

    of

    VSAM

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    . 47

    Structure

    of

    an

    Exported

    Data

    Set

    .

    .

    .

    .

    .

    . 48

    EXPORT

    and

    IMPORT

    Commands

    .

    .

    .

    .

    . 48

    Writing

    a

    Program

    for

    Backup

    and

    Recovery

    .

    .

    . 48

    Using

    Concurrent

    Copy

    for

    Backup

    and

    Recovery

    49

    Updating

    a

    Data

    Set

    After

    Recovery

    .

    .

    .

    .

    .

    . 49

    Synchronizing

    Catalog

    and

    VSAM

    Data

    Set

    Information

    During

    Recovery

    .

    .

    .

    .

    .

    .

    .

    . 49

    Handling

    an

    Abnormal

    Termination

    .

    .

    .

    .

    . 50

    Using

    VERIFY

    to

    Process

    Improperly

    Closed

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 50

    CICS

    VSAM

    Recovery

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 52

    Chapter

    5.

    Protecting

    Data

    Sets

    .

    .

    .

    . 53

    z/OS

    Security

    Server

    (RACF)

    .

    .

    .

    .

    .

    .

    .

    . 53

    RACF

    Protection

    for

    VSAM

    Data

    Sets

    .

    .

    .

    . 53

    Generic

    and

    Discrete

    Profiles

    for

    VSAM

    Data

    Sets

    54

    RACF

    Protection

    for

    Non-VSAM

    Data

    Sets

    .

    .

    . 54

    Hiding

    Data

    Set

    Names

    .

    .

    .

    .

    .

    .

    .

    .

    . 55

    Data

    Set

    Password

    Protection

    .

    .

    .

    .

    .

    .

    .

    . 55

    Passwords

    for

    VSAM

    Data

    Sets

    .

    .

    .

    .

    .

    .

    . 56

    Passwords

    for

    Non-VSAM

    Data

    Sets

    .

    .

    .

    .

    . 59

    User-Security-Verification

    Routine

    .

    .

    .

    .

    .

    .

    . 60

    Erasure

    of

    Residual

    Data

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 60

    Erasing

    DASD

    Data

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 60

    Erasing

    Tape

    Data

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 61

    Authorized

    Program

    Facility

    and

    Access

    Method

    Services

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 62

    Access

    Method

    Services

    Cryptographic

    Option

    .

    . 63

    Data

    Enciphering

    and

    Deciphering

    .

    .

    .

    .

    . 63

    REPRO

    ENCIPHER

    and

    DECIPHER

    on

    ICSF

    .

    . 66

    Part

    2.

    VSAM

    Data

    Sets

    .

    .

    .

    .

    .

    . 69

    Chapter

    6.

    Organizing

    VSAM

    Data

    Sets

    73

    VSAM

    Data

    Formats

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 73

    Data

    Set

    Size

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 73

    Control

    Intervals

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 74

    Control

    Information

    Fields

    .

    .

    .

    .

    .

    .

    .

    . 74

    Compressed

    Control

    Information

    Field

    .

    .

    .

    . 75

    Control

    Areas

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 76

    Spanned

    Records

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 76

    Selection

    of

    VSAM

    Data

    Set

    Types

    .

    .

    .

    .

    .

    .

    . 77

    Entry-Sequenced

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    . 78

    Simulated

    VSAM

    Access

    to

    UNIX

    files

    .

    .

    .

    . 80

    Key-Sequenced

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    . 81

    Linear

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 84

    Fixed-Length

    Relative-Record

    Data

    Sets

    .

    .

    .

    . 85

    Variable-Length

    Relative-Record

    Data

    Sets

    .

    .

    . 86

    Summary

    of

    VSAM

    Data

    Set

    Types

    .

    .

    .

    .

    . 86

    Extended-Format

    VSAM

    Data

    Sets

    .

    .

    .

    .

    .

    .

    . 87

    Restrictions

    on

    Defining

    Extended-Format

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 88

    VSAM

    Data

    Striping

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 88

    Compressed

    Data

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 92

    Access

    to

    Records

    in

    a

    VSAM

    Data

    Set

    .

    .

    .

    .

    . 93

    Access

    to

    Entry-Sequenced

    Data

    Sets

    .

    .

    .

    .

    . 94

    Access

    to

    Key-Sequenced

    Data

    Sets

    .

    .

    .

    .

    . 94

    Access

    to

    Linear

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    . 95

    Access

    to

    Fixed-Length

    Relative-Record

    Data

    Sets

    95

    Access

    to

    Variable-Length

    Relative-Record

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 95

    Access

    to

    Records

    through

    Alternate

    Indexes

    .

    .

    . 96

    Alternate

    Index

    Structure

    for

    a

    Key-Sequenced

    Data

    Set

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 96

    Alternate

    Index

    Structure

    for

    an

    Entry-Sequenced

    Data

    Set

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 98

    Building

    of

    an

    Alternate

    Index

    .

    .

    .

    .

    .

    .

    . 98

    Automatic

    Upgrade

    of

    Alternate

    Indexes

    .

    .

    . 99

    Data

    Compression

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 99

    Chapter

    7.

    Defining

    VSAM

    Data

    Sets

    101

    Using

    Cluster

    Names

    for

    Data

    and

    Index

    Components

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 102

    Defining

    a

    Data

    Set

    with

    Access

    Method

    Services

    102

    Naming

    a

    Cluster

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 102

    Specifying

    Cluster

    Information

    .

    .

    .

    .

    .

    . 104

    Using

    Access

    Method

    Services

    Parameters

    .

    .

    . 104

    Allocating

    Space

    for

    VSAM

    Data

    Sets

    .

    .

    .

    . 106

    Calculating

    Space

    for

    the

    Data

    Component

    of

    a

    KSDS

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 109

    Calculating

    Space

    for

    the

    Index

    Component

    .

    . 110

    Using

    ALTER

    to

    Modify

    Attributes

    of

    a

    Component

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 110

    Using

    ALTER

    to

    Rename

    Data

    Sets

    .

    .

    .

    .

    . 110

    Defining

    a

    Data

    Set

    with

    JCL

    .

    .

    .

    .

    .

    .

    .

    . 111

    Loading

    a

    VSAM

    Data

    Set

    .

    .

    .

    .

    .

    .

    .

    .

    . 111

    Using

    REPRO

    to

    Copy

    a

    VSAM

    Data

    Set

    .

    .

    . 112

    Using

    a

    Program

    to

    Load

    a

    Data

    Set

    .

    .

    .

    .

    . 113

    Reusing

    a

    VSAM

    Data

    Set

    as

    a

    Work

    File

    .

    .

    . 114

    Copying

    and

    Merging

    Data

    Sets

    .

    .

    .

    .

    .

    .

    . 115

    Defining

    Alternate

    Indexes

    .

    .

    .

    .

    .

    .

    .

    .

    . 117

    Naming

    an

    Alternate

    Index

    .

    .

    .

    .

    .

    .

    .

    . 117

    Specifying

    Alternate

    Index

    Information

    .

    .

    .

    . 117

    Building

    an

    Alternate

    Index

    .

    .

    .

    .

    .

    .

    . 119

    Maintaining

    Alternate

    Indexes

    .

    .

    .

    .

    .

    .

    . 119

    Defining

    a

    Path

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 120

    Defining

    a

    Page

    Space

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 121

    Checking

    for

    Problems

    in

    Catalogs

    and

    Data

    Sets

    122

    iv

    z/OS

    V1R6.0

    DFSMS:

    Using

    Data

    Sets

  • Listing

    Catalog

    Entries

    .

    .

    .

    .

    .

    .

    .

    .

    . 122

    Printing

    the

    Contents

    of

    Data

    Sets

    .

    .

    .

    .

    . 123

    Deleting

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 123

    Chapter

    8.

    Defining

    and

    Manipulating

    VSAM

    Data

    Sets:

    Examples

    .

    .

    .

    .

    . 125

    Example

    of

    Defining

    a

    VSAM

    Data

    Set

    .

    .

    .

    .

    . 126

    Examples

    of

    Defining

    Temporary

    VSAM

    Data

    Sets

    128

    Example

    1:

    Defining

    a

    Temporary

    VSAM

    Data

    Set

    Using

    ALLOCATE

    .

    .

    .

    .

    .

    .

    .

    .

    . 128

    Example

    2:

    Creating

    a

    Temporary

    Data

    Set

    with

    Default

    Parameter

    Values

    .

    .

    .

    .

    .

    .

    .

    . 129

    Examples

    of

    Defining

    Alternate

    Indexes

    and

    Paths

    129

    JCL

    Statements

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 129

    Commands

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 130

    Chapter

    9.

    Processing

    VSAM

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 133

    Creating

    an

    Access

    Method

    Control

    Block

    .

    .

    .

    . 134

    Creating

    an

    Exit

    List

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 134

    Opening

    a

    Data

    Set

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 135

    Creating

    a

    Request

    Parameter

    List

    .

    .

    .

    .

    .

    . 136

    Manipulating

    the

    Contents

    of

    Control

    Blocks

    .

    .

    . 138

    Generating

    a

    Control

    Block

    .

    .

    .

    .

    .

    .

    .

    . 138

    Testing

    the

    Contents

    of

    ACB,

    EXLST,

    and

    RPL

    Fields

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 138

    Modifying

    the

    Contents

    of

    an

    ACB,

    EXLST,

    or

    RPL

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 139

    Displaying

    the

    Contents

    of

    ACB,

    EXLST,

    and

    RPL

    Fields

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 139

    Requesting

    Access

    to

    a

    Data

    Set

    .

    .

    .

    .

    .

    .

    . 139

    Inserting

    and

    Adding

    Records

    .

    .

    .

    .

    .

    .

    . 140

    Retrieving

    Records

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 142

    Updating

    Records

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 144

    Deleting

    Records

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 145

    Deferring

    and

    Forcing

    Buffer

    Writing

    .

    .

    .

    . 145

    Retaining

    and

    Positioning

    Data

    Buffers

    .

    .

    .

    . 145

    Processing

    Multiple

    Strings

    .

    .

    .

    .

    .

    .

    .

    . 146

    Making

    Concurrent

    Requests

    .

    .

    .

    .

    .

    .

    . 147

    Using

    a

    Path

    to

    Access

    Records

    .

    .

    .

    .

    .

    . 147

    Making

    Asynchronous

    Requests

    .

    .

    .

    .

    .

    . 148

    Ending

    a

    Request

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 149

    Closing

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 149

    Operating

    in

    SRB

    or

    Cross-Memory

    Mode

    .

    .

    .

    . 150

    Using

    VSAM

    Macros

    in

    Programs

    .

    .

    .

    .

    .

    . 151

    Chapter

    10.

    Optimizing

    VSAM

    Performance

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 155

    Optimizing

    Control

    Interval

    Size

    .

    .

    .

    .

    .

    .

    . 155

    Control

    Interval

    Size

    Limitations

    .

    .

    .

    .

    .

    . 155

    Data

    Control

    Interval

    Size

    .

    .

    .

    .

    .

    .

    .

    . 157

    Index

    Control

    Interval

    Size

    .

    .

    .

    .

    .

    .

    .

    . 158

    How

    VSAM

    Adjusts

    Control

    Interval

    Size

    .

    .

    . 158

    Optimizing

    Control

    Area

    Size

    .

    .

    .

    .

    .

    .

    .

    . 159

    Advantages

    of

    a

    Large

    Control

    Area

    Size

    .

    .

    . 160

    Disadvantages

    of

    a

    Large

    Control

    Area

    Size

    .

    . 160

    Optimizing

    Free

    Space

    Distribution

    .

    .

    .

    .

    .

    . 160

    Selecting

    the

    Optimal

    Percentage

    of

    Free

    Space

    162

    Altering

    the

    Free

    Space

    Specification

    When

    Loading

    a

    Data

    Set

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 163

    Determining

    I/O

    Buffer

    Space

    for

    Nonshared

    Resource

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 164

    Obtaining

    Buffers

    Above

    16

    MB

    .

    .

    .

    .

    .

    . 164

    Tuning

    for

    System-Managed

    Buffering

    .

    .

    .

    . 165

    Allocating

    Buffers

    for

    Concurrent

    Data

    Set

    Positioning

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 170

    Allocating

    Buffers

    for

    Direct

    Access

    .

    .

    .

    .

    . 170

    Allocating

    Buffers

    for

    Sequential

    Access

    .

    .

    . 173

    Allocating

    Buffers

    for

    a

    Path

    .

    .

    .

    .

    .

    .

    . 174

    Acquiring

    Buffers

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 174

    Using

    Index

    Options

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 175

    Increasing

    Virtual

    Storage

    for

    Index

    Set

    Records

    175

    Avoiding

    Control

    Area

    Splits

    .

    .

    .

    .

    .

    .

    . 175

    Putting

    the

    Index

    and

    Data

    on

    Separate

    Volumes

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 175

    Obtaining

    Diagnostic

    Information

    .

    .

    .

    .

    .

    . 176

    Migrating

    from

    the

    Mass

    Storage

    System

    .

    .

    .

    . 176

    Using

    Hiperbatch

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 176

    Chapter

    11.

    Processing

    Control

    Intervals

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 177

    Access

    to

    a

    Control

    Interval

    .

    .

    .

    .

    .

    .

    .

    . 178

    Structure

    of

    Control

    Information

    .

    .

    .

    .

    .

    .

    . 179

    CIDF—Control

    Interval

    Definition

    Field

    .

    .

    . 180

    RDF—Record

    Definition

    Field

    .

    .

    .

    .

    .

    .

    . 180

    User

    Buffering

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 184

    Improved

    Control

    Interval

    Access

    .

    .

    .

    .

    .

    . 185

    Opening

    an

    Object

    for

    Improved

    Control

    Interval

    Access

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 185

    Processing

    a

    Data

    Set

    with

    Improved

    Control

    Interval

    Access

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 185

    Fixing

    Control

    Blocks

    and

    Buffers

    in

    Real

    Storage

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 186

    Control

    Blocks

    in

    Common

    (CBIC)

    Option

    .

    .

    . 186

    Chapter

    12.

    Sharing

    VSAM

    Data

    Sets

    189

    Subtask

    Sharing

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 190

    Building

    a

    Single

    Control

    Block

    Structure

    .

    .

    . 190

    Resolving

    Exclusive

    Control

    Conflicts

    .

    .

    .

    . 191

    Preventing

    Deadlock

    in

    Exclusive

    Control

    of

    Shared

    Resources

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 193

    Cross-Region

    Sharing

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 195

    Cross-Region

    Share

    Options

    .

    .

    .

    .

    .

    .

    . 195

    Read

    Integrity

    During

    Cross-Region

    Sharing

    .

    . 196

    Write

    Integrity

    During

    Cross-Region

    Sharing

    197

    Cross-System

    Sharing

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 198

    Control

    Block

    Update

    Facility

    (CBUF)

    .

    .

    .

    .

    . 199

    Considerations

    for

    CBUF

    Processing

    .

    .

    .

    .

    . 200

    Checkpoints

    for

    Shared

    Data

    Sets

    .

    .

    .

    .

    .

    . 201

    Techniques

    of

    Data

    Sharing

    .

    .

    .

    .

    .

    .

    .

    .

    . 201

    Cross-Region

    Sharing

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 201

    Cross-System

    Sharing

    .

    .

    .

    .

    .

    .

    .

    .

    . 203

    User

    Access

    to

    VSAM

    Shared

    Information

    .

    .

    . 204

    Chapter

    13.

    Sharing

    Resources

    Among

    VSAM

    Data

    Sets

    .

    .

    .

    .

    .

    .

    . 205

    Provision

    of

    a

    Resource

    Pool

    .

    .

    .

    .

    .

    .

    .

    . 205

    Building

    a

    Resource

    Pool:

    BLDVRP

    .

    .

    .

    .

    . 205

    Connecting

    a

    Data

    Set

    to

    a

    Resource

    Pool:

    OPEN

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 209

    Contents

    v

  • Deleting

    a

    Resource

    Pool

    Using

    the

    DLVRP

    Macro

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 209

    Management

    of

    I/O

    Buffers

    for

    Shared

    Resources

    210

    Deferring

    Write

    Requests

    .

    .

    .

    .

    .

    .

    .

    . 210

    Relating

    Deferred

    Requests

    by

    Transaction

    ID

    211

    Writing

    Buffers

    Whose

    Writing

    is

    Deferred:

    WRTBFR

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 211

    Accessing

    a

    Control

    Interval

    with

    Shared

    Resources

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 213

    Restrictions

    and

    Guidelines

    for

    Shared

    Resources

    214

    Chapter

    14.

    Using

    VSAM

    Record-Level

    Sharing

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 217

    Controlling

    Access

    to

    VSAM

    Data

    Sets

    .

    .

    .

    .

    . 217

    Accessing

    Data

    Sets

    Using

    DFSMStvs

    and

    VSAM

    Record-Level

    Sharing

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 217

    Record-Level

    Sharing

    CF

    Caching

    .

    .

    .

    .

    . 218

    Using

    VSAM

    RLS

    with

    CICS

    .

    .

    .

    .

    .

    .

    . 219

    Using

    VSAM

    RLS

    Outside

    of

    CICS

    .

    .

    .

    .

    . 222

    Read

    Sharing

    of

    Recoverable

    Data

    Sets

    .

    .

    .

    . 222

    Read-Sharing

    Integrity

    across

    KSDS

    CI

    and

    CA

    Splits

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 222

    Read

    and

    Write

    Sharing

    of

    Nonrecoverable

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 222

    Using

    Non-RLS

    Access

    to

    VSAM

    Data

    Sets

    .

    . 223

    Comparing

    RLS

    Access

    and

    Non-RLS

    Access

    223

    Requesting

    VSAM

    RLS

    Run-Mode

    .

    .

    .

    .

    . 226

    Using

    VSAM

    RLS

    Read

    Integrity

    Options

    .

    .

    . 226

    Using

    VSAM

    RLS

    with

    ESDS

    .

    .

    .

    .

    .

    .

    .

    . 227

    Specifying

    Read

    Integrity

    .

    .

    .

    .

    .

    .

    .

    .

    . 228

    Specifying

    a

    Timeout

    Value

    for

    Lock

    Requests

    .

    . 228

    Chapter

    15.

    Checking

    VSAM

    Key-Sequenced

    Data

    Set

    Clusters

    for

    Structural

    Errors

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 229

    EXAMINE

    Command

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 229

    Types

    of

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 229

    EXAMINE

    Users

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 229

    How

    to

    Run

    EXAMINE

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 230

    Deciding

    to

    Run

    INDEXTEST,

    DATATEST,

    or

    Both

    Tests

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 230

    Skipping

    DATATEST

    on

    Major

    INDEXTEST

    Errors

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 230

    Examining

    a

    User

    Catalog

    .

    .

    .

    .

    .

    .

    .

    . 230

    Understanding

    Message

    Hierarchy

    .

    .

    .

    .

    . 231

    Controlling

    Message

    Printout

    .

    .

    .

    .

    .

    .

    . 231

    Samples

    of

    Output

    from

    EXAMINE

    Runs

    .

    .

    .

    . 232

    INDEXTEST

    and

    DATATEST

    Tests

    of

    an

    Error-Free

    Data

    Set

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 232

    INDEXTEST

    and

    DATATEST

    Tests

    of

    a

    Data

    Set

    with

    a

    Structural

    Error

    .

    .

    .

    .

    .

    .

    .

    .

    . 232

    INDEXTEST

    and

    DATATEST

    Tests

    of

    a

    Data

    Set

    with

    a

    Duplicate

    Key

    Error

    .

    .

    .

    .

    .

    .

    .

    . 233

    Chapter

    16.

    Coding

    VSAM

    User-Written

    Exit

    Routines

    .

    .

    .

    .

    .

    . 235

    Guidelines

    for

    Coding

    Exit

    Routines

    .

    .

    .

    .

    .

    . 235

    Programming

    Guidelines

    .

    .

    .

    .

    .

    .

    .

    .

    . 236

    Multiple

    Request

    Parameter

    Lists

    or

    Data

    Sets

    237

    Return

    to

    a

    Main

    Program

    .

    .

    .

    .

    .

    .

    .

    . 237

    IGW8PNRU

    Routine

    for

    Batch

    Override

    .

    .

    .

    . 238

    Register

    Contents

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 238

    Programming

    Considerations

    .

    .

    .

    .

    .

    .

    . 238

    EODAD

    Exit

    Routine

    to

    Process

    End

    of

    Data

    .

    .

    . 239

    Register

    Contents

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 239

    Programming

    Considerations

    .

    .

    .

    .

    .

    .

    . 240

    EXCEPTIONEXIT

    Exit

    Routine

    .

    .

    .

    .

    .

    .

    . 240

    Register

    Contents

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 240

    Programming

    Considerations

    .

    .

    .

    .

    .

    .

    . 240

    JRNAD

    Exit

    Routine

    to

    Journalize

    Transactions

    .

    . 241

    Register

    Contents

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 241

    Programming

    Considerations

    .

    .

    .

    .

    .

    .

    . 241

    LERAD

    Exit

    Routine

    to

    Analyze

    Logical

    Errors

    .

    . 247

    Register

    Contents

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 248

    Programming

    Considerations

    .

    .

    .

    .

    .

    .

    . 248

    RLSWAIT

    Exit

    Routine

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 248

    Register

    Contents

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 249

    Request

    Environment

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 249

    SYNAD

    Exit

    Routine

    to

    Analyze

    Physical

    Errors

    250

    Register

    Contents

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 250

    Programming

    Considerations

    .

    .

    .

    .

    .

    .

    . 250

    Example

    of

    a

    SYNAD

    User-Written

    Exit

    Routine

    251

    UPAD

    Exit

    Routine

    for

    User

    Processing

    .

    .

    .

    . 252

    Register

    Contents

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 253

    Programming

    Considerations

    .

    .

    .

    .

    .

    .

    . 254

    User-Security-Verification

    Routine

    .

    .

    .

    .

    .

    . 255

    Chapter

    17.

    Using

    31-Bit

    Addressing

    Mode

    with

    VSAM

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 257

    VSAM

    Options

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 257

    Chapter

    18.

    Using

    Job

    Control

    Language

    for

    VSAM

    .

    .

    .

    .

    .

    .

    .

    . 259

    Using

    JCL

    Statements

    and

    Keywords

    .

    .

    .

    .

    . 259

    Data

    Set

    Name

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 259

    Disposition

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 259

    Creating

    VSAM

    Data

    Sets

    with

    JCL

    .

    .

    .

    .

    .

    . 260

    Temporary

    VSAM

    Data

    Sets

    .

    .

    .

    .

    .

    .

    . 262

    Examples

    Using

    JCL

    to

    Allocate

    VSAM

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 263

    Retrieving

    an

    Existing

    VSAM

    Data

    Set

    .

    .

    .

    .

    . 266

    Migration

    Consideration

    .

    .

    .

    .

    .

    .

    .

    .

    . 266

    Keywords

    Used

    to

    Process

    VSAM

    Data

    Sets

    .

    . 266

    Chapter

    19.

    Processing

    Indexes

    of

    Key-Sequenced

    Data

    Sets

    .

    .

    .

    .

    .

    . 269

    Access

    to

    a

    Key-Sequenced

    Data

    Set

    Index

    .

    .

    . 269

    Access

    to

    an

    Index

    with

    GETIX

    and

    PUTIX

    .

    . 269

    Access

    to

    the

    Index

    Component

    Alone

    .

    .

    .

    . 269

    Prime

    Index

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 270

    Index

    Levels

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 271

    Format

    of

    an

    Index

    Record

    .

    .

    .

    .

    .

    .

    .

    .

    . 273

    Header

    Portion

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 273

    Free

    Control

    Interval

    Entry

    Portion

    .

    .

    .

    .

    . 275

    Index

    Entry

    Portion

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 275

    Key

    Compression

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 276

    Index

    Update

    Following

    a

    Control

    Interval

    Split

    279

    Index

    Entries

    for

    a

    Spanned

    Record

    .

    .

    .

    .

    . 280

    vi

    z/OS

    V1R6.0

    DFSMS:

    Using

    Data

    Sets

    ||

  • Part

    3.

    Non-VSAM

    Data

    Sets

    and

    UNIX

    Files

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 281

    Chapter

    20.

    Selecting

    Record

    Formats

    for

    Non-VSAM

    Data

    Sets

    .

    .

    .

    .

    .

    . 287

    Format

    Selection

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 287

    Fixed-Length

    Record

    Formats

    .

    .

    .

    .

    .

    .

    .

    . 288

    Standard

    Format

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 289

    Restrictions

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 289

    Variable-Length

    Record

    Formats

    .

    .

    .

    .

    .

    .

    . 290

    Format-V

    Records

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 290

    Spanned

    Format-VS

    Records

    (Sequential

    Access

    Method)

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 292

    Spanned

    Format-V

    Records

    (Basic

    Direct

    Access

    Method)

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 294

    Undefined-Length

    Record

    Format

    .

    .

    .

    .

    .

    . 296

    ISO/ANSI

    Tapes

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 297

    Character

    Data

    Conversion

    .

    .

    .

    .

    .

    .

    .

    . 297

    Format-F

    Records

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 298

    Format-D

    Records

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 300

    ISO/ANSI

    Format-DS

    and

    Format-DBS

    Records

    302

    Format-U

    Records

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 305

    Record

    Format—Device

    Type

    Considerations

    .

    .

    . 305

    Using

    Optional

    Control

    Characters

    .

    .

    .

    .

    . 306

    Using

    Direct

    Access

    Storage

    Devices

    (DASD)

    307

    Using

    Magnetic

    Tape

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 307

    Using

    a

    Printer

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 308

    Using

    a

    Card

    Reader

    and

    Punch

    .

    .

    .

    .

    .

    . 309

    Using

    a

    Paper

    Tape

    Reader

    .

    .

    .

    .

    .

    .

    .

    . 310

    Chapter

    21.

    Specifying

    and

    Initializing

    Data

    Control

    Blocks

    .

    .

    .

    .

    .

    .

    .

    . 311

    Processing

    Sequential

    and

    Partitioned

    Data

    Sets

    312

    Using

    OPEN

    to

    Prepare

    a

    Data

    Set

    for

    Processing

    317

    Filling

    in

    the

    DCB

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 318

    Specifying

    the

    Forms

    of

    Macros,

    Buffering

    Requirements,

    and

    Addresses

    .

    .

    .

    .

    .

    .

    . 320

    Coding

    Processing

    Methods

    .

    .

    .

    .

    .

    .

    . 320

    Selecting

    Data

    Set

    Options

    .

    .

    .

    .

    .

    .

    .

    .

    . 321

    Block

    Size

    (BLKSIZE)

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 321

    Data

    Set

    Organization

    (DSORG)

    .

    .

    .

    .

    .

    . 327

    Key

    Length

    (KEYLEN)

    .

    .

    .

    .

    .

    .

    .

    .

    . 328

    Record

    Length

    (LRECL)

    .

    .

    .

    .

    .

    .

    .

    .

    . 328

    Record

    Format

    (RECFM)

    .

    .

    .

    .

    .

    .

    .

    . 328

    Write

    Validity

    Check

    Option

    (OPTCD=W)

    .

    .

    . 329

    DD

    Statement

    Parameters

    .

    .

    .

    .

    .

    .

    .

    . 329

    Changing

    and

    Testing

    the

    DCB

    and

    DCBE

    .

    .

    . 330

    Using

    the

    DCBD

    Macro

    .

    .

    .

    .

    .

    .

    .

    .

    . 331

    Changing

    an

    Address

    in

    the

    DCB

    .

    .

    .

    .

    . 331

    Using

    the

    IHADCBE

    Macro

    .

    .

    .

    .

    .

    .

    . 332

    Using

    CLOSE

    to

    End

    the

    Processing

    of

    a

    Data

    Set

    332

    Issuing

    the

    CHECK

    Macro

    .

    .

    .

    .

    .

    .

    .

    . 332

    Closing

    a

    Data

    Set

    Temporarily

    .

    .

    .

    .

    .

    . 332

    Using

    CLOSE

    TYPE=T

    with

    Sequential

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 333

    Releasing

    Space

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 334

    Managing

    Buffer

    Pools

    When

    Closing

    Data

    Sets

    335

    Opening

    and

    Closing

    Data

    Sets:

    Considerations

    335

    Parameter

    Lists

    with

    31-Bit

    Addresses

    .

    .

    .

    . 335

    Open

    and

    Close

    of

    Multiple

    Data

    Sets

    at

    the

    Same

    Time

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 335

    Factors

    to

    Consider

    When

    Allocating

    Direct

    Access

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 336

    Guidelines

    for

    Opening

    and

    Closing

    Data

    Sets

    336

    Open/Close/EOV

    Errors

    .

    .

    .

    .

    .

    .

    .

    . 336

    Installation

    Exits

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 337

    Positioning

    Volumes

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 338

    Releasing

    Data

    Sets

    and

    Volumes

    .

    .

    .

    .

    .

    . 338

    Processing

    End-of-Volume

    .

    .

    .

    .

    .

    .

    .

    . 338

    Positioning

    During

    End-of-Volume

    .

    .

    .

    .

    . 339

    Forcing

    End-of-Volume

    .

    .

    .

    .

    .

    .

    .

    .

    . 340

    Managing

    SAM

    Buffer

    Space

    .

    .

    .

    .

    .

    .

    .

    . 341

    Constructing

    a

    Buffer

    Pool

    .

    .

    .

    .

    .

    .

    .

    .

    . 342

    Building

    a

    Buffer

    Pool

    .

    .

    .

    .

    .

    .

    .

    .

    . 343

    Building

    a

    Buffer

    Pool

    and

    a

    Record

    Area

    .

    .

    . 343

    Getting

    a

    Buffer

    Pool

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 344

    Constructing

    a

    Buffer

    Pool

    Automatically

    .

    .

    . 344

    Freeing

    a

    Buffer

    Pool

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 344

    Constructing

    a

    Buffer

    Pool:

    Examples

    .

    .

    .

    . 345

    Controlling

    Buffers

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 346

    Queued

    Access

    Method

    .

    .

    .

    .

    .

    .

    .

    .

    . 346

    Basic

    Access

    Method

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 347

    QSAM

    in

    an

    Application

    .

    .

    .

    .

    .

    .

    .

    . 347

    Exchange

    Buffering

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 349

    Choosing

    Buffering

    Techniques

    and

    GET/PUT

    Processing

    Modes

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 350

    Using

    Buffering

    Macros

    with

    Queued

    Access

    Method

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 350

    RELSE—Release

    an

    Input

    Buffer

    .

    .

    .

    .

    .

    . 350

    TRUNC—Truncate

    an

    Output

    Buffer

    .

    .

    .

    . 350

    Using

    Buffering

    Macros

    with

    Basic

    Access

    Method

    351

    GETBUF—Get

    a

    Buffer

    from

    a

    Pool

    .

    .

    .

    .

    . 351

    FREEBUF—Return

    a

    Buffer

    to

    a

    Pool

    .

    .

    .

    . 351

    Chapter

    22.

    Accessing

    Records

    .

    .

    . 353

    Accessing

    Data

    with

    READ

    and

    WRITE

    .

    .

    .

    . 353

    Using

    the

    Data

    Event

    Control

    Block

    (DECB)

    .

    . 353

    Grouping

    Related

    Control

    Blocks

    in

    a

    Paging

    Environment

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 353

    Using

    Overlapped

    I/O

    with

    BSAM

    .

    .

    .

    .

    . 353

    Reading

    a

    Block

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 355

    Writing

    a

    Block

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 356

    Ensuring

    I/O

    Initiation

    with

    the

    TRUNC

    Macro

    356

    Testing

    Completion

    of

    a

    Read

    or

    Write

    Operation

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 356

    Waiting

    for

    Completion

    of

    a

    Read

    or

    Write

    Operation

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 357

    Handling

    Exceptional

    Conditions

    on

    Tape

    .

    .

    . 358

    Accessing

    Data

    with

    GET

    and

    PUT

    .

    .

    .

    .

    .

    . 359

    GET—Retrieve

    a

    Record

    .

    .

    .

    .

    .

    .

    .

    .

    . 359

    PUT—Write

    a

    Record

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 359

    PUTX—Write

    an

    Updated

    Record

    .

    .

    .

    .

    . 360

    PDAB—Parallel

    Input

    Processing

    (QSAM

    Only)

    360

    Analyzing

    I/O

    Errors

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 363

    SYNADAF—Perform

    SYNAD

    Analysis

    Function

    363

    SYNADRLS—Release

    SYNADAF

    Message

    and

    Save

    Areas

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 364

    Device

    Support

    Facilities

    (ICKDSF):

    Diagnosing

    I/O

    Problems

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 364

    Contents

    vii

  • Limitations

    with

    Using

    SRB

    or

    Cross-Memory

    Mode

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 364

    Chapter

    23.

    Sharing

    Non-VSAM

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 365

    Enhanced

    Data

    Integrity

    for

    Shared

    Sequential

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 368

    Setting

    Up

    the

    Enhanced

    Data

    Integrity

    Function

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 369

    Synchronizing

    the

    Enhanced

    Data

    Integrity

    Function

    on

    Multiple

    Systems

    .

    .

    .

    .

    .

    .

    . 370

    Using

    the

    START

    IFGEDI

    Command

    .

    .

    .

    . 370

    Bypassing

    the

    Enhanced

    Data

    Integrity

    Function

    for

    Applications

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 371

    Diagnosing

    Data

    Integrity

    Warnings

    and

    Violations

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 371

    PDSEs

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 374

    Direct

    Data

    Sets

    (BDAM)

    .

    .

    .

    .

    .

    .

    .

    .

    . 374

    Factors

    to

    Consider

    When

    Opening

    and

    Closing

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 375

    Control

    of

    Checkpoint

    Data

    Sets

    on

    Shared

    DASD

    Volumes

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 375

    System

    Use

    of

    Search

    Direct

    for

    Input

    Operations

    377

    Chapter

    24.

    Spooling

    and

    Scheduling

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 379

    Job

    Entry

    Subsystem

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 379

    SYSIN

    Data

    Set

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 380

    SYSOUT

    Data

    Set

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 380

    Chapter

    25.

    Processing

    Sequential

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 383

    Creating

    a

    Sequential

    Data

    Set

    .

    .

    .

    .

    .

    .

    .

    . 383

    Retrieving

    a

    Sequential

    Data

    Set

    .

    .

    .

    .

    .

    .

    . 384

    Concatenating

    Data

    Sets

    Sequentially

    .

    .

    .

    .

    . 385

    Concatenating

    Like

    Data

    Sets

    .

    .

    .

    .

    .

    .

    . 386

    Concatenating

    Unlike

    Data

    Sets

    .

    .

    .

    .

    .

    . 390

    Modifying

    Sequential

    Data

    Sets

    .

    .

    .

    .

    .

    .

    . 392

    Updating

    in

    Place

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 392

    Using

    Overlapped

    Operations

    .

    .

    .

    .

    .

    .

    . 392

    Extending

    a

    Data

    Set

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 393

    Achieving

    Device

    Independence

    .

    .

    .

    .

    .

    .

    . 393

    Device-Dependent

    Macros

    .

    .

    .

    .

    .

    .

    .

    . 394

    DCB

    and

    DCBE

    Subparameters

    .

    .

    .

    .

    .

    . 395

    Improving

    Performance

    for

    Sequential

    Data

    Sets

    395

    Limitations

    on

    Using

    Chained

    Scheduling

    with

    Non-DASD

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 396

    DASD

    and

    Tape

    Performance

    .

    .

    .

    .

    .

    .

    . 397

    Determining

    the

    Length

    of

    a

    Block

    when

    Reading

    with

    BSAM,

    BPAM,

    or

    BDAM

    .

    .

    .

    .

    .

    .

    .

    . 398

    Writing

    a

    Short

    Format-FB

    Block

    with

    BSAM

    or

    BPAM

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 399

    Using

    Hiperbatch

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 400

    Processing

    Extended-Format

    Sequential

    Data

    Sets

    400

    Characteristics

    of

    Extended-Format

    Data

    Sets

    400

    Allocating

    Extended-Format

    Data

    Sets

    .

    .

    .

    . 401

    Allocating

    Compressed-Format

    Data

    Sets

    .

    .

    . 402

    Opening

    and

    Closing

    Extended-Format

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 403

    Reading,

    Writing,

    and

    Updating

    Extended-Format

    Data

    Sets

    Using

    BSAM

    and

    QSAM

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 403

    Concatenating

    Extended-Format

    Data

    Sets

    with

    Other

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 404

    Extending

    Striped

    Sequential

    Data

    Sets

    .

    .

    .

    . 404

    Migrating

    to

    Extended-Format

    Data

    Sets

    .

    .

    . 404

    Chapter

    26.

    Processing

    a

    Partitioned

    Data

    Set

    (PDS)

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 407

    Structure

    of

    a

    PDS

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 407

    PDS

    Directory

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 408

    Allocating

    Space

    for

    a

    PDS

    .

    .

    .

    .

    .

    .

    .

    .

    . 411

    Calculating

    Space

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 411

    Allocating

    Space

    with

    SPACE

    and

    AVGREC

    .

    . 412

    Creating

    a

    PDS

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 412

    Creating

    a

    PDS

    Member

    with

    BSAM

    or

    QSAM

    413

    Converting

    PDSs

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 413

    Copying

    a

    PDS

    or

    Member

    to

    Another

    Data

    Set

    413

    Adding

    Members

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 414

    Processing

    a

    Member

    of

    a

    PDS

    .

    .

    .

    .

    .

    .

    . 416

    BLDL—Construct

    a

    Directory

    Entry

    List

    .

    .

    . 416

    DESERV

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 417

    FIND—Position

    to

    the

    Starting

    Address

    of

    a

    Member

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 420

    STOW—Update

    the

    Directory

    .

    .

    .

    .

    .

    .

    . 421

    Retrieving

    a

    Member

    of

    a

    PDS

    .

    .

    .

    .

    .

    .

    . 422

    Modifying

    a

    PDS

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 426

    Updating

    in

    Place

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 426

    Rewriting

    a

    Member

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 429

    Concatenating

    PDSs

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 429

    Sequential

    Concatenation

    .

    .

    .

    .

    .

    .

    .

    . 429

    Partitioned

    Concatenation

    .

    .

    .

    .

    .

    .

    .

    . 429

    Reading

    a

    PDS

    Directory

    Sequentially

    .

    .

    .

    .

    . 430

    Chapter

    27.

    Processing

    a

    Partitioned

    Data

    Set

    Extended

    (PDSE)

    .

    .

    .

    .

    .

    . 431

    Advantages

    of

    PDSEs

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 431

    PDSE

    and

    PDS

    Similarities

    .

    .

    .

    .

    .

    .

    .

    . 433

    PDSE

    and

    PDS

    Differences

    .

    .

    .

    .

    .

    .

    .

    . 433

    Structure

    of

    a

    PDSE

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 433

    PDSE

    Logical

    Block

    Size

    .

    .

    .

    .

    .

    .

    .

    .

    . 434

    Reuse

    of

    Space

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 434

    Directory

    Structure

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 435

    Relative

    Track

    Addresses

    (TTR)

    .

    .

    .

    .

    .

    . 435

    Processing

    PDSE

    Records

    .

    .

    .

    .

    .

    .

    .

    .

    . 436

    Using

    BLKSIZE

    with

    PDSEs

    .

    .

    .

    .

    .

    .

    . 437

    Using

    KEYLEN

    with

    PDSEs

    .

    .

    .

    .

    .

    .

    . 437

    Reblocking

    PDSE

    Records

    .

    .

    .

    .

    .

    .

    .

    . 437

    Processing

    Short

    Blocks

    .

    .

    .

    .

    .

    .

    .

    .

    . 438

    Processing

    SAM

    Null

    Segments

    .

    .

    .

    .

    .

    . 439

    Allocating

    Space

    for

    a

    PDSE

    .

    .

    .

    .

    .

    .

    .

    . 439

    PDSE

    Space

    Considerations

    .

    .

    .

    .

    .

    .

    . 439

    Summary

    of

    PDSE

    Storage

    Requirements

    .

    .

    . 442

    Defining

    a

    PDSE

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 442

    Creating

    a

    PDSE

    Member

    .

    .

    .

    .

    .

    .

    .

    .

    . 443

    Creating

    a

    PDSE

    Member

    with

    BSAM

    or

    QSAM

    443

    Adding

    or

    Replacing

    PDSE

    Members

    Serially

    444

    Adding

    or

    Replacing

    Multiple

    PDSE

    Members

    Concurrently

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 445

    viii

    z/OS

    V1R6.0

    DFSMS:

    Using

    Data

    Sets

    ||

  • Copying

    a

    PDSE

    or

    Member

    to

    Another

    Data

    Set

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 446

    Processing

    a

    Member

    of

    a

    PDSE

    .

    .

    .

    .

    .

    .

    . 446

    Establishing

    Connections

    to

    Members

    .

    .

    .

    . 446

    Using

    the

    BLDL

    Macro

    to

    Construct

    a

    Directory

    Entry

    List

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 447

    Using

    the

    BSP

    Macro

    to

    Backspace

    a

    Physical

    Record

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 448

    Using

    the

    Directory

    Entry

    Services

    .

    .

    .

    .

    . 448

    Using

    the

    FIND

    Macro

    to

    Position

    to

    the

    Beginning

    of

    a

    Member

    .

    .

    .

    .

    .

    .

    .

    .

    . 455

    Using

    ISITMGD

    to

    Determine

    Whether

    the

    Data

    Set

    Is

    System

    Managed

    .

    .

    .

    .

    .

    .

    .

    .

    . 456

    Using

    the

    NOTE

    Macro

    to

    Provide

    Relative

    Position

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 457

    Using

    the

    POINT

    Macro

    to

    Position

    to

    a

    Block

    457

    Switching

    between

    Members

    .

    .

    .

    .

    .

    .

    . 458

    Using

    the

    STOW

    Macro

    to

    Update

    the

    Directory

    459

    Retrieving

    a

    Member

    of

    a

    PDSE

    .

    .

    .

    .

    .

    .

    . 460

    Sharing

    PDSEs

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 462

    Sharing

    within

    a

    Computer

    System

    .

    .

    .

    .

    . 462

    Sharing

    Violations

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 462

    Multiple

    System

    Sharing

    of

    PDSEs

    .

    .

    .

    .

    . 463

    Normal

    or

    Extended

    PDSE

    Sharing

    .

    .

    .

    .

    . 465

    Modifying

    a

    Member

    of

    a

    PDSE

    .

    .

    .

    .

    .

    .

    . 466

    Updating

    in

    Place

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 466

    Extending

    a

    PDSE

    Member

    .

    .

    .

    .

    .

    .

    .

    . 466

    Deleting

    a

    PDSE

    Member

    .

    .

    .

    .

    .

    .

    .

    . 467

    Renaming

    a

    PDSE

    Member

    .

    .

    .

    .

    .

    .

    .

    . 467

    Reading

    a

    PDSE

    Directory

    .

    .

    .

    .

    .

    .

    .

    .

    . 467

    Concatenating

    PDSEs

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 468

    Sequential

    Concatenation

    .

    .

    .

    .

    .

    .

    .

    . 468

    Partitioned

    Concatenation

    .

    .

    .

    .

    .

    .

    .

    . 468

    Converting

    PDSs

    to

    PDSEs

    and

    Back

    .

    .

    .

    .

    . 469

    PDSE

    to

    PDS

    Conversion

    .

    .

    .

    .

    .

    .

    .

    . 470

    Restrictions

    on

    Converting

    PDSEs

    .

    .

    .

    .

    . 470

    Improving

    Performance

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 470

    Recovering

    Space

    in

    Fragmented

    PDSEs

    .

    .

    .

    . 470

    PDSE

    Address

    Spaces

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 470

    Chapter

    28.

    Processing

    z/OS

    UNIX

    Files

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 473

    Accessing

    the

    z/OS

    UNIX

    File

    System

    .

    .

    .

    .

    . 473

    Characteristics

    of

    UNIX

    Directories

    and

    Files

    474

    Access

    Methods

    Used

    .

    .

    .

    .

    .

    .

    .

    .

    . 474

    Using

    HFS

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 475

    Creating

    HFS

    Data

    Sets

    .

    .

    .

    .

    .

    .

    .

    .

    . 475

    Creating

    Additional

    Directories

    .

    .

    .

    .

    .

    . 476

    Creating

    z/OS

    UNIX

    Files

    .

    .

    .

    .

    .

    .

    .

    .

    . 477

    Creating

    a

    UNIX

    File

    with

    BSAM

    or

    QSAM

    .

    . 477

    Creating

    a

    UNIX

    File

    Using

    JCL

    .

    .

    .

    .

    .

    . 479

    JCL

    Parameters

    for

    UNIX

    Files

    .

    .

    .

    .

    .

    . 480

    Creating

    a

    Macro

    Library

    in

    a

    UNIX

    Directory

    481

    Managing

    UNIX

    Files

    and

    Directories

    .

    .

    .

    .

    . 482

    Specifying

    Security

    Settings

    for

    UNIX

    Files

    and

    Directories

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 482

    Editing

    UNIX

    Files

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 483

    Using

    ISHELL

    to

    Manage

    UNIX

    Files

    and

    Directories

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 484

    Copying

    UNIX

    Files

    or

    Directories

    .

    .

    .

    .

    . 485

    Services

    and

    Utilities

    for

    UNIX

    Files

    .

    .

    .

    .

    .

    . 486

    Services

    and

    Utilities

    Cannot

    be

    Used

    with

    UNIX

    Files

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 487

    z/OS

    UNIX

    Signals

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 487

    z/OS

    UNIX

    Fork

    Service

    .

    .

    .

    .

    .

    .

    .

    . 487

    SMF

    Records

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 488

    Reading

    UNIX

    Files

    Using

    BPAM

    .

    .

    .

    .

    .

    . 488

    Using

    Macros

    for

    UNIX

    Files

    .

    .

    .

    .

    .

    .

    . 488

    BLDL—Constructing

    a

    Directory

    Entry

    List

    .

    . 488

    CHECK—Checking

    for

    I/O

    Completion

    .

    .

    . 489

    CLOSE—to

    Close

    the

    DCB

    .

    .

    .

    .

    .

    .

    .

    . 489

    FIND—Positioning

    to

    the

    Starting

    Address

    of

    a

    File

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 489

    READ—Reading

    a

    UNIX

    File

    .

    .

    .

    .

    .

    .

    . 490

    STOW

    DISC—Closing

    a

    UNIX

    File

    .

    .

    .

    .

    . 490

    Concatenating

    UNIX

    Files

    and

    Directories

    .

    .

    .

    . 490

    Sequential

    Concatenation

    .

    .

    .

    .

    .

    .

    .

    . 490

    Partitioned

    Concatenation

    .

    .

    .

    .

    .

    .

    .

    . 491

    Chapter

    29.

    Processing

    Generation

    Data

    Groups

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 493

    Data

    Set

    Organization

    of

    Generation

    Data

    Sets

    .

    . 494

    Absolute

    Generation

    and

    Version

    Numbers

    .

    .

    . 494

    Relative

    Generation

    Number

    .

    .

    .

    .

    .

    .

    .

    . 495

    Programming

    Considerations

    for

    Multiple-Step

    Jobs

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 495

    Cataloging

    Generation

    Data

    Groups

    .

    .

    .

    .

    . 496

    Submitting

    Multiple

    Jobs

    to

    Update

    a

    Generation

    Data

    Group

    .

    .

    .

    .

    .

    .

    .

    .

    . 496

    Naming

    Generation

    Data

    Groups

    for

    ISO/ANSI

    Version

    3

    or

    Version

    4

    Labels

    .

    .

    .

    .

    .

    .

    .

    . 497

    Creating

    a

    New

    Generation

    .

    .

    .

    .

    .

    .

    .

    .

    . 498

    Allocating

    a

    Generation

    Data

    Set

    .

    .

    .

    .

    .

    . 498

    Passing

    a

    Generation

    Data

    Set

    .

    .

    .

    .

    .

    .

    . 501

    Rolling

    In

    a

    Generation

    Data

    Set

    .

    .

    .

    .

    .

    . 501

    Controlling

    Expiration

    of

    a

    Rolled-Off

    Generation

    Data

    Set

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 502

    Creating

    an

    ISAM

    Data

    Set

    as

    Part

    of

    a

    Generation

    Data

    Group

    .

    .

    .

    .

    .

    .

    .

    .

    . 502

    Retrieving

    a

    Generation

    Data

    Set

    .

    .

    .

    .

    .

    .

    . 502

    Reclaiming

    Generation

    Data

    Sets

    .

    .

    .

    .

    .

    .

    . 503

    Turning

    on

    GDS

    Reclaim

    Processing

    .

    .

    .

    .

    . 503

    Turning

    off

    GDS

    Reclaim

    Processing

    .

    .

    .

    .

    . 503

    Building

    a

    Generation

    Data

    Group

    Index

    .

    .

    .

    . 504

    Chapter

    30.

    Using

    I/O

    Device

    Control

    Macros

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 505

    Using

    the

    CNTRL

    Macro

    to

    Control

    an

    I/O

    Device

    505

    Using

    the

    PRTOV

    Macro

    to

    Test

    for

    Printer

    Overflow

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . 506

    Using

    the

    SETPRT

    Macro

    to

    Set

    Up

    the

    Printer

    .

    . 506

    Using

    the

    BSP

    Macro

    to

    Backspace

    a

    Magnetic

    Tape

    or

    Direct

    Access

    Volume

    .

    .

    .

    .

    .

    .

    .

    . 507

    Using

    the

    NOTE

    Macro

    to

    Return

    the

    Relative

    Address

    of

    a

    Block

    .

    .

    .

    .

    .