• Aucun résultat trouvé

It System/360

N/A
N/A
Protected

Academic year: 2022

Partager "It System/360"

Copied!
314
0
0

Texte intégral

(1)

Systems Reference Library

IBM System/360 Operating System:

System Programmer's Guide

~his publication consists of self-contained chapters, each of which provides information on how to modify, extend, or implement capabilities of the IBE system/360 operating System control program. It is designed primarily for system programmers responsible for maintaining, updating, and extending the operating system features.

Topics:

Catalog and VTOC Maintenance Adding SVC Routines

Message Routing Exit Routines Adding Accounting Routines

IECDSECT, IEFJFCBN. and IEFUCBOB Macro Instructions

The Must Complete Function of ENQ/DEQ The EXCP ~acro Instruction

The XDAP Macro Instruction The Tracing Routine

Implementing Data Set Protection PRESRES Volume Characteristic List Residency Options and Link Pack Area Job Queue Format

System Macro Instructions

Adding System Output Writer Routines Output separation

System Reader, Initiator, and Writer Cataloged Procedures

Writing Rollout/Rollin Appendages

Adding a UCS Image to the System Library The Shared Direct Access Device Option The ~irne Slicing Facility

Graphic Job Processor Procedures

Satellite Graphic Job Processor Procedures

File No. 5360-20

Order No. GC28-6550-9

OS

(2)

Preface

This publication consists of self-contained chapters, each of which provides

information on how to modify, extend, or implement capabilities of the IBM

System/360 Operating System control program. Although the information in one chapter is sometimes related to information in another, all chapters have been written as separate and complete units. It is assumed that users of this publication are thoroughly familiar with the design of the operating system and its features. Each chapter contains its own introductory section and list of prerequisite

publications. This organization has been used to reduce cross-referencing and to facilitate the addition of new chapters.

Ninth Edition (June, 1971)

This is a major revision of, and obsoletes, GC28-6550-8 and Technical Newsletter GN28-2437, GN28-2452, and GN28-2456.

Changes to the text and changes to illustrations are indicated by a vertical line to the left of the change.

This edition applies to release 20.1 of IBM System/360 Operating system, and to all subsequent releases until otherwise

indicated in new editions or Technical Newsletters. Changes are continually made to the information herein; before using this publication in connection with the operation of IBM systems, consult the latest IBM System/360 SRL Newsletter, Order No. GN20-0360, for the editions that are current and applicable.

Requests for copies of IBM publications should be made to your IBM representative or to the branch office serving your locality.

A form for readers' comments is provided at the back of this publication. If the form has been removed, comments may be addressed to IBM Corporation, Programming Systems

Publications, Department D58, PO Box 390, Poughkeepsie, N. Y.

12602

I

© Copyright International Business Machines Corporation 1966,1967,1968,1969,1970 , 1971

(3)

SUMMARY OF MAJOR CHANGES

I

Release 20.1 (GC28-6550-9) Release 20 (GC28-6550-8)

MAINTAINING THE CATALOG AND THE VOLUME TABLE OF How to Read a Block From the Catalog • • • •

Contents

• 11

• 11 12 CONTENTS • • • • • • 15

• 16 -By Specifying the Name of an Index Level or Data set • • • 16 -By Specifying the Name of a Generation Data Set

-By Specifying a Name Using an Alias -By specifying by TTR • • • • • • How to Build an Index • •

• • • • • 17

• • • • • 18 . . • . . • • . . 18

• • • • • • • 19

• • • • • • • • • 20 How to Build a Generation Index •

How to Delete an Index • • • • • • 20

How to Assign an Alias • • • • • How to Delete an Alias • • • • •

Connect Control Volumes Disconnect Control Volumes • Catalog a Data Set • • • • •

Remove Data Set References From the Catalog

• • • • • 21

• • • • • 21

• • • • • 21

0 22

• • • • • 23

• 23 How to

How to How to How to How to How to

Recatalog a Data Set • • • • • • • • • • • • • • • • 24 Read a Data Set Control Block From the Volume Table of

Contents • • • • • • •

How to Delete a Data Set • • • • • • • • • • • • How to Rename a Data Set • • • • • • • • • • • • How to Share Space on a Volume Initialized Under DOS Catalog and VTOC Macro Instructions • • • • • • • • • •

Return Codes of Catalog and VTOC Macro Instructions • Appendix A: Catalog Block Entries • • • • • •

Control Entries • • • • • • • • •

Pointer Entries • • • • • • • • • • '. • • • • • • • The Volume Control Block Contents • • • • •

Appendix B: Device Code Designations

• • • • • 25

• • • • • 25

• • • • • 27

• • 28

• • • • • 29

• • • • • 30

• • • • • 31

• 31

• • • • • 32

• • • • • 34

• • 35 ADDING SVC ROUTINES TO THE CONTROL PROGRAM • • • • • 37 Wri ting SVC Routines 0 38 Characteristics of SVC Routines • • • • • • • • • • • • • 38 Programming Conventions for SVC Routines • 38 Inserting SVC Routines Into the Control Program • • . • • • • 43 Specifying SVC Routines • • • • • • • • • • • • • 43 Inserting SVC Routines During the System Generation Process • • • 43 MESSAGE ROUTING EXIT ROUTINES • • • • • • •

Characteristics of MCS • • • • • • • • Writing a WTO/wTOR Exit Routine • • • • •

Programming Conventions for SVC Routines • • • • Messages That Don't Use Routing Codes •

Adding a WTO/wTOR Exit Routine to the Control Program • Inserting the WTO/WTOR Exit Routine •

HANDLING ACCOUNTING INFORMATION • . Accounting Routines • • • • • •

Prerequisite Actions • • • • Accounting Routine Conventions

CSECT Name and Entry Point

Register Saving and Restoring • •

Input Available to Accounting Routines • • • • Output From Accounting Routines • • • • •

Inserting an Accounting Routine Into the Control Program Appendix: Accounting Data set Writer • • • • • • • • • • •

· · · · ·

45

· · · · ·

46

· · · · ·

46

· · · · ·

47

· · · · ·

49

· · · · ·

49

· · · · ·

49

• • • • • 51 52

• 52

• 52

• 52

• • 52

• 53

• • • • • 55

• 56

• • • • • 58

Contents 3

(4)

IECDSECT. IEFJFCBN.. AND IEFUCBOB MACRO INSTRUCTIONS • • IECDSECT Macro Instruction

IECDSECT Macro Definition • • IEFUCBOB Macro Instruction

IEFUCBOB Macro Definition • • IEFJFCBN Macro Instruction •

IEFJFCBN Macro Definition • • • • • • THE MUST COMPLETE FUNCTION

Requesting the Must Complete Function Operating Characteristics '. • • • • • Programming Notes • • • • • • • • • • • Terminating the Must Complete Function

EXECUTE CHANNEL PROGRAM (EXCP) MACRO INSTRUCTION Use of EXCP in System and Problem Programs

EXCP Requirements • • • • • Channel Program • • • • • '.

Control Blocks • • • •

Channel Program Execution • • • • • Interruption Handling and Error Recovery Procedures • Appendages • • • • • • ~ • • • • • ~ • • ~

Start Input/Output (SIO) Appendage • • • • • • Program Controlled Interruption (PCI) Appendage End-of-Extent Appendage • • • • • • • • • • •

Channel End Appendage. • • • • • • • Abnormal End Appendage • • '. • EXCP Programming Specifications • • • • •

Macro Instructions • • '. • • • • • .• .• .•

DCB -- Define Data Control Block for EXCP OPEN -- Initialize Data Control Block.

EXCP -- Execute Channel Program • • • • EOV -- End of Volume • • • • • • • • CLOSE -- Restore Data Control Block • Control Block Fields • • • • •

Input/Output Block Fields • • • • • • Event Control Block Fields

Data Extent Block Fields

Appendix: RESTORE and PURGE Macro Instruction RESTORE Macro Instruction • • • • • • • • • • • • PURGE Macro Instruction • • • '. • • • • •

• 61

• 62

• 62

• 67

• 67

• 70

• 70

• 73

• 74

• 75

• 75

• 76

• 77

• 78

• • • • • 79

• • • • • 79

• • • • • 80

• 81

• • • • • 82

• 83

• • • • • 86

• 86

• • • • • 86

• 87

• 87

• • • • • 89

• • .• • • 89

• • • • • 89

• • • • • 96

• 96

• 97

• 98

• 98

• 98 .100 .101

• • 102 .102

• • ' • • • 103 ATLAS -- Assign an Alternate Track and Copy Data From the Defective Track • • • • • • • • • • •

ATLAS Macro Instruction • • • • Use of ATLAS '. • • • • '. • • .•

Operation of the ATLAS program Return Codes ,. • • •

EXECUTE DIRECT ACCESS PROGRAM (XDAP) MACRO INSTRUCTION Requirements for Execution of Direct Access Program XDAP Programming specifications • • '. ,. •

.108 .108 .109 .110 .110 .115

• • • • • 116 ,.117 The XDAP Control Block • • • • • • • • • • • • .119

Input/Output Block (lOB)

XDAP Options • • • • • • • •

. I. .

Appendix: CVT Macro Instruction • • '. .. • .. .• ..

HOW TO USE THE TRACING ROUTINE III DATA SET PROTECTION • '. • • • • •

DATA SET PROTECTION • • • • • • '. • • • • Password Data set Characteristics and Record Format Creating Protected Data Sets • • • • • • • • • Protection Feature Operating Characteristics

4 System Programmer's Guide (Release 20.1)

• • • • .120

• • • 121

• .. .• .. • .124 .125 .129 .130

• • • 130

• • • '. .131 .132

(5)

Using the PROTECT Macro Instruction to Maintain the Password Data

Set . . . . . . . . . . .133 Password Data set Characteristics and Record Format When You Use

the PROTECT Macro • • • • • • • • • • • • • • Programming Conventions for the PROTECT Macro Instruction •

.133 .134 THE PRESRES VOLUME CHARACTERISTICS LIST •

PRESRES Entry Format • • • • • Operational Characteristics • • RESIDENT ROUTINES OPTIONS • • •

.139 .140 .141

• • • • .143 Section 1: Nucleus Resident Library Routines (PCP and MFT)

The Resident BLDL Table Option • • • • • • .146

• • '. • .147 Selecting Entries for the Resident BLDL Table •

Table Size • • . • • • • • Frequency of Use • • • • List IEABLDO 0 • • • • • • • • •

Suggested Starter List for MVT

I

Suggested Starter List f or Time Sharing Resident Reenterable Modules Options

The Resident Access Method Modules Option Considerations for Use • • • • • • List IEAIGGOO • • • • • • • • • • • • • •

.147

• • • • • 147

• • • • • 147 .148

• • • • 148

• • • • • 148 .149 .149

• • • • • • • 149

• • • • .151 Resident Link Library Modules Option (MFT)

How to Include the Resident Link Library Option The Resident SVC Routines Option

.152 in Your System .152 Storage Requirements • • • • • • • • • • •

List IEARSVO 0 • • • • • • • • • • • • • • • • The Resident Error Recovery Procedure Option

storage Requirements • • • • • Creating Parameter Library Lists

Example • • • • • • • • • • • • • • • • • Example of the ERP option list • • • • Section 2: Using the Link Pack Area (MVT)

Procedure for Using the Link Pack Area List Specification • • • • •

Operational Characteristics • • Programming Notes • • • • • • •

Example of Link Pack Area Specification • Section 3: The Link Library List • • • • • JOB QUEUE FORMAT • • • • • • • • • • • • • The Resident Job Queue Option (PCP Only)

Operational Characteristics • • • • • Determining Resident Job Queue Size MVT Job Queue Formatting • • • • •

Logical Track Size -- JOBQFMT • • • •

Reserving Initiator Queue Records -- JOBQLMT • • • • Number of Generation Data Groups

Number of Passed Data Sets • • • • •

Number of I/O Devices for Passed Data Sets • • • • Number of Volumes • • • • • • • • •

Number of System Messages • • • • •

Use of Automatic Restart • • • • • • • • Reserving Write-to-Programmer Queue Records - JOBQWTP Reserving Queue Records for Cancellation -- JOBQTMT •

Number of Devices • • • • • Number of Jobs • • • • •

SYSTEM MACRO INSTRUCTIONS

System Macro Instructions in This Publication • •

• • • • • • .153 .153 .154 .154

• • • • • 155 .155 .156

• • • 156 .157 .157

• • • • • 158 .159 .160 .160 .162 .163 .164

• • • • .164 .164 .166 .167

• .167 .168

• • • • • • .168 .168

• • • 168 .168

• • • 169

• • • • .170

• .171

• .171 .171

• • .173 .174 Locate Device Characteristics (DEVTYPE) Macro Instruction •

Device Characteristics Information • .175

.175 .177 .178 Output for Each Device Type • • • • •

Exceptional Returns • • • • • • • •

Contents 5

(6)

How to Read a Job Fi Ie Control Block • • '. • • • • • • • • • • • 179 OPEN -- Prepare the Data Control Block for Processing (S) • • • • • 179 RDJFCB -- Read a Job File Control Block (S) • • • • • • • .180 Programming Notes • • • • • • • • • • • • • • • • • • • • • • • • 181 CIRE -- Create IRB for Asynchronous Exit Processing • • • • • 182 SYNCH -- Synchronous Exits to Processing Program .183

SYNCH Macro Definition • • • • .183

STAE -- specify Task Asynchronous Exit • • • • • • • • • .184 Programming Notes • ' . . • • • • • '. • • • • • • • ,.186 Scheduling of STAE and STAI Exit and Retry Routines • • • • • 187 ATTACH -- Create a New Task • • • • '. • • '. • • • • '. '. '. .190

I ~~~iB _=- ~p~n. o~ ~1~S,~

:Y:1:

I~~E:I~

• • • • • • • • : ,:

i~~

WRITING SYSTEM OUTPUT WRITER ROUTINES • • • • • Output Writer Functions • • • • • • • • •

Conventions to be Followed • • • • • •

General Processing Performed by Standard Output Appendix: Control Character Transformations

Card Punch Uni t • • • • • • • • • • • • Printer Unit • • • •

OUTPUT SEPARATION • • • • • Functions of the IBM Output Separator •

Punch-Destined Output • • • • • • • • • • •

Writer

Printer-Destined output • • • • • • • • • • Creating an Output Separator Program • • • • •

Programming Considerations • • • • • output From the separator Program • • • • • ,.

Using the Block Character Routine •

output Separators -- PCP • • • • • • • • • • • • • • • Modifying or Adding Output separators •

• • 193 .194 .194

• • • • .196 .200

• • • • .200

• . . . 200 .203 .204 .204 .205 .205 .206 .207 .207 .208 .209 SYSTEM READER, INITIATOR, AND WRITER CATALOGED PROCEDURES • • '. • .. .. 211 Reader/Interpreter Procedures. • • • • • • • • • • • • .213 The EXEC Sta tement • • • • • • • • • • • • • • 216 The PARM Field in the EXEC Statement of the Reader/Initiator • • 216 DD Statement for the Input Stream. • • • • • • • • • • • 220 DD Statement for the Procedure Library • • • • • 221 DD Statement for the CPP Data Set. • • .221 Reader/Interpreter Procedure Used by Restart • • • • • 223 The EXEC Statement • • • • • • • • • • • • • • • • • • • 223 DD Statement for the Input Stream • • • '. .225 DD Statement for the Procedure Library • • • • • • .225 DD Statement for the CPP Data set • • .225 Initiator Procedures • • • • • • • • • __ ~ _ • • • • • 226 The EXEC Statement • • • • • • • • • • • • • • 226

Additional Initiator Facilities • .227

Mounting Control Volumes in MVT • • • • • • • • • • 227

Initiator Action • • • • '. • • .. .227

DD Statement Formats .228

Dedicated Data Sets (MVT) '. ,. .228

How to Dedicate a Data Set .229

How to Get to Use a Dedicated Data Set .230 Procedure INITD • • • • • • • • • • • • • • • • 231 The EXEC Statement • '. • • • • • '. • • • 232 DD Statements for the Dedicated Utility Data Sets • • • • • • 233 DD Statement for the Loadset Data set • • • • • • • • • '. '. .233 Use of Dedicated Data Sets By Processor Programs for Utility Data sets • • • • • • • • • • • • • • • • • • • • • • • • • • .234

.234

• • 235 .236 System Library Data Sets as Dedicated Data Sets •

Disposition of Temporary Dedicated Data Sets Output Writer Procedures • • • • • •

System Output Writer • • • • • The EXEC Statement • • • • 6 System Programmer's Guide (Release 20.1)

• • • • • 236

• • • • • 236

(7)

DD statement for the OUTPUT Data Set • • • • • • • • • • • • • Direct SYSOUT Wri ter -- The Synchronous system output vlri ter Job

.237

• 239 .239 .241 The EXEC Statement • • • • •

The DD statement

Optional SYSABEND Data Set

Cataloging the Procedure • • • • • • .243

.244 Example of the Use of Symbolic Parameters in Cataloged Reader,

Writer and Initiator Procedures • .246

.247 .247 Automatic SYSIN Batching (ASB) • • • •

The PROC Statement • • • • • • • • The EXEC Statement • • • • •

SYSIN and SYSOUT Data Blocking

Blocking the Procedure Library • • • • • WRITING ROLLOUT/ROLLIN INSTALLATION APPENDAGES

Linkage To User Appendages • • • • • Appendage I: lEAQAPGl • • • • • • • • • Appendage II: lEAQAPG2 • •

Appendage III: IEAQAPG3 Appendage IV: lEAQAPG4. • • Sample Coding of Appendages • • General Flow of Rollout Processing

• • • 248

• • • • • 250

• .252 .253 .254 .255 .255 .255 .256 .256 .256 ADDING A UNIVERSAL CHARACTER SET IMAGE OR FORMS CONTROL BUFFER

LMAGE TO THE IMAGE LIBRARY • • • • • • • .259 HOW TO ADD A FORM CONTROL BUFFER LMAGE TO THE IMAGE LIBRARY. .263 THE SHARED DIRECT ACCESS STORAGE DEVICE OPTION

system Configuration • • • • Devices That Can Be Shared • • • • Volume/Device Status • • • • • Volume Handling • • • • • • • • • •

Sharing Application Data Sets • • • • • • Reserving Devices • • • • • • •

The SMC Parameter of the ENQ Macro Instruction RESERVE Macro Instruction • • • • • •

The EXTRACT Macro Instruction • Releasing Devices • • • • • • •

Preventing Interlocks • • • • • Volume Assignment • •

Program Libraries • • • • • • • • • • • Appendix • • • • • • •

Providing the Unit Control Block Address to RESERVE • RES and DEQ Subroutines •

THE TIME SLICING FACILITY • Prerequisite Actions

System Initialization Time

How to Invoke the Time Slice Facility Using the Time Slice Facility • • • • • •

Operating Characteristics • • • • . • •

Effect of system Tasks on Time-Slice Groups • GRAPHIC JOB PROCESSOR PROCEDURES • • • • • • •

Initialization of the Operating System for GJP • • • • The GFX Procedure • • • • • • • • •

The GJP Procedure • • • • • • • • • • • • • • • • • •

• • • • • 265 .266 .266

• • • • • 268 .268

• • • • • 268 .269 .269

• .270 .271 .271 .271 .271 .272

• • • • .273 .273 .275 .277 .278 .279 .279 .280 .281 .281

Cataloging GFX and GJP Procedures • • • • • • • • • •

Cataloging and Allocating Space for Data Sets Used by GJP •

.283 .284 .284 .285 .286 .286 Writing Cataloged Procedures to be Invoked Through the Graphic Job

Processor • • • • • • • • • • • • • • • • • • • • • • • • • • Preparation of User-Written Accounting Routines • • • • • • • Buffer storage Considerations for 2250 Display Unit, Model 3

.287 .288 .291

Contents 7

(8)

SATELLITE GRAPHIC JOB PROCESSOR PROCEDURES • • • • • • Writing Cataloged Procedures to be Invoked Through SGJP

Preparation of User-Written Accounting Routines • • '.

• .293

• • • • • 294 Initialization Requirements for the System/360 Operating System

.295 .297 .298 .299 .300

The GFX Procedure • • • • • • • '. •

The SGJP Procedures • • • • • • • • • • • '. • The GJP Procedures • • '. • •

Cataloging the Procedures • • • • • • • .• • . . . 302 Cataloging and Allocating Space for Data Sets Used by SGJP .303

INDEX • • .. .. • • • • • • • .305

8 System Programmer's Guide (Release 20.1)

(9)

Illustrations

Figures

Figure CVl. Catalog and VTOC Macro Instructions • • • • • • • • • • 29 Figure CV2. Return Codes of Catalog and VTOC Macro Instructions • • 30 Figure ACT 1. Accounting Information Available to User • 54 Figure 1. Data Control Block Format for EXCP (After OPEN) • 91 Figure 2. Input/Output Block Format • • • • • • • • • • • • • • • 99 Figure 3. Event Control Block After Posting of Completion Code • • 101 Figure ATLAS 1. Error Locations and Return Codes if CCHH is in the Count Area Field • • • • • • • • • • • • • • • • • • • .112 Figure ATLAS 2. Error Locations and Return Codes if CCHHRKDD is in the Count Area Field • • • • • • • • • • • • • • • • • • 113 Figure 4. Event Control Block After Posting of Completion Code • • 119 Figure 5. The XDAP Channel Programs • • • • • • • • • 121 Figure PSWD1. Password Record • • • • • • • • • • • • 131 Figure PSWD2. Parameter List for Add Function • • • • • 135 Figure PSWD3. Parameter List for Replace Function .136 Figure PSWD4. Parameter List for Delete Function .137 Figure PSWD5. Parameter List for List Function • • • • • 138 Figure RRO 1. Resident Routines Options - PCP .145 Figure RRO 2. Resident Routines options - MFT • • • • • • • • • • 145 Figure RRO 3. Resident Routines Options - MVT • • • • • 145 Figure 6. General Logic of Standard Output Writer • • • • • 197 Figure 7. Symbolic Representation of Record Formats .201 Figure 8. Data Blocking Accepted by Processors Under MVT and MFT .251 Figure 9. General Flow of Rollout/Rollin Processing .257 Figure 10. General Shared DASD Environment • • • • • .267 Figure 11. Statements in the GFX Cataloged Procedure • • • • • 298 Figure 12. Statements in the SGJP Cataloged Procedures .299 Figure 13. Statement in the Cataloged Procedure Used for Each

Telecommunications Line Used With SGJP (Part 1 of 2) • • • • • • 300

Tables

1. Programming Conventions for SVC Routines • • • • • • • 39 2. Programming Conventions for WTO/wTOR Exit Routine • 47 Table

Table Table Table Table Table Table

PASS1. Return Codes from The PROTECT Macro • • • • • • • .138 3. Parameter List Referred to by Register 1 • • • • • • .195 4. Control Character Translation for Punch Unit Output .200 5. Control Character Translation for Printer Unit Output • • 202 6. Operator Conunand Groups • • • • • • • • • • • • • • • • .219

Illustrations 9

(10)
(11)

Summary of Major Changes

Release 20.1

(GC28-6550-9)

.---,,------.---, Item

TSO

Description

- - - -

The PURGE parameter list has a fourth word that can be used to purge a list of TCBs.

START command The START command can now be used to start a problem program.

Chapter Affected

Execute Channel Program

System Reader, Initiator, and Writer Cataloged Procedures

+ - - - f - - - 1 - - - 1

7094 Emulator Change to the ASB procedure for 7094 Emulator

System Reader, Initiator, and Writer Cataloged Procedures

--- - - - + - - - 1 FORTRAN G Change to data blocking for System Reader, Initiator, and Writer

FORTRAN G Cataloged Procedures

-1

t---r.--- -- - -- - - + - - - - Change to STAE retry routine System Macro Instructions

STAE

procedure

~---1'------ - - - - - 4 PROTECT Additional return code for PROTECT Data Set Protection

instruction

~---_+---4

3211 Printer New device dependent information for the 3211 Printer

3330 and 2305 New device dependent information Direct Access for the 3330 and 2305 Direct

Access Devices

IECDSECT, IEFJFCBN, and IEFUCBOB Macro Instructions

Execute Direct Access Program (XDAP) Macro Instructions

System Macro Instructions

Writing System Output Writers Routines Output Separation

System Reader, Initiator, and writer Cataloged Procedures

Adding a Universal Character Set Image to the System Library

Maintaining the Catalog and the Volume Table of Contents

Execute Direct Access Program (XDAP) Macro Instructions

The Shared Direct Access Storage Device Option

Summary of Major Changes 11

(12)

Release 20

(GC28-6550-8)

r---T---T---,

lItem I Description IChapter Affected I

~---+---+---1 IPROTECT Macro IA new macro instruction that can be used to IData Set I I Instruction I maintain the password data set has been added. I Protection. I

~---+---+---~

ISTAE Macro ITwO new parameters have been added. I System Macro I

I Instruction I I Instructions. I

~---+---+---~

IASCII I The macro definitions for the UCB and JFCB I IECDSECT,IEFJFCBN, I I Ihave been modified to include ASCII. In land IEFUCBOB Macro I I laddition, restrictions against using ASCII I Instructions. I

I Idata sets in the reader input stream have beenl I

I I added. I System Reader, I

I I I Initiator, and I

I I IWriter Cataloged I

I I I Procedures. I

~---t---+---~

IModels 155/165 INew devices have been added to the device type I System Macro I

I I characteristics description. I Instructions. I

~---+--~---+---~

IDedicated Data Sets IAdditional information on the disposition I System Reader, 1

I lof dedicated data sets, by IInitiator, and I

I lallocation/termination, has been added. IWriter Cataloged I

1 I I Procedures. I

~---+---+---~

IDirect System IThe description of the direct system output I System Reader, I loutput Writer Iwriter procedure has been changed to omit the IInitiator, and I

I Iseparator function. IWriter Cataloged 1

1 I I Procedures. I

~---+---+---~

12150 Console IThe 2150 console has been removed from the I System Macro I I Idevice type characteristics description. I Instructions. I

~---+---+---~

ISYS1&MANX and IAddition of SYS1.MANX and SYS1.MANY to list IThe Shared I ISYS1.MANY lof data sets that cannot be shared. I Direct-Access I

I I IDevice Option. I

~---+---+---~

IGSP Routines IAddition of reenterable GSP routines to group IResident Routines I I lof modules that can be put in the MFT link I Option. I

I I pack area. I I

~---+---+---~

ISystem Management IModifications to the MDL= and OPI= I System Management I

IFacilities I parameters. IFacilities. I

~---+---+---i IProcedure INITD IRemoval of ABEND DD statement from INITD ISystem Reader, I

I I procedure. IInitiator, and 1

1 L _____________________ L ______________________________________________ L __________________ I I Writer Routines. J I

12 System Programmer's Guide (Release 20.1)

(13)

Maintaining the Catalog and the _ Volume Table of Contents ~~

Adding SVC Routines to the C o n t r o 4 . Program

Message Routing Exit

Routines---~~.

Handling Accounting

InfOrmatiOn--~~.

IECDSECT, IEFJFCBN, and • IEFUCBOB Macro Instructions

---~~

The Must Complete Function

---~~.

Execute Channel Program (EXCP) ~.

Macro Instruction

Execute Direct Access program ____ ~~.. ..

(XDAP) Macro Instruction

How to Use the Tracing

Routine---~~.

Implementing Data Set

protection--~~.

The PRESRES Volume --~~

..

Characteristics List

Resident Routines Options

---~~.

Job Queue

Format---~~_

System Macro Instructions

---~~_

Writing System Output Writer _

-~~

.

Routines

Output Separation - - - -..

~~_

System Reader, Initiator, and Write~_

.---"..-

...

Cataloged Procedures

Writing Rollout/Rollin Installation _ _ ~~

Appendages

Adding a Universal Character set~_

Image to the System Library

The Shared Direct Access Device _ _ ~~_.

Option

The Time Slicing Facility

---~~_

Graphic Job Processor

procedures~_

Satellite Graphic Job processor _ _ _ ~~.

Procedures

Index - - - -..

~~_

(14)
(15)

Maintaining the Catalog and the Volume Table of Contents

This chapter provides detailed information on how to maintain and modify the catalog and volume table of contents.

Before reading this chapter, you should be familiar with the information contained in the prerequisite publications listed below.

Documentation of the internal logic of the routines used to maintain and modify the catalog and volume table of contents can be obtained through your IBM Branch Office.

PREREQUISITE PUBLICATIONS

The IBM system/360 Operating System:

Assembler Language publication (GC28-6514) contains the information necessary to code programs in the assembler language.

'I'he IBM System/360 Operating System:

supervisor and Data Management Services publication (GC28-6646) contains a general description of the structure of catalog indexes, as well as a brief discussion of the volume table of contents (VTOC).

The IBM System/360 Operating System:

system Control Blocks publication (GC28-6628) contains format and field descriptions of the system control blocks referred to in this chapter.

RECOMMENDED PUBLICATIONS

The IBM System/360 Operating System:

Utilities publication (GC28-6586) describes how to maintain and modify the catalog and the volume table of contents through the use of utility programs.

Maintaining the Catalog and the Volume Table of Contents 15

eig

(16)

Maintaining the Catalog and the Volume Table of Contents

This chapter describes how to maintain and modify the catalog and the volume table of contents through the use of macro instruction~ Most of the maintenance and modification functions can ~ be performed using

utility statements. The utility statements are described in the publication IBM systern/360 Operating system: utilities.

The functions you can perform using the macro instructions are described in text, and the formats of the macro instructions are

tabulated on a fold-out sheet (Figure CV1) at the back of this chapter.

The chart on the fold-out sheet associates the function described in text with the macro instructions needed to perform the function. You should keep the fold-out sheet open when reading the text.

The functions that are described in text are as follows:

• How to read a block from the catalog.

• How to build an index.

• How to build a generation index.

• How to delete an index.

• How to assign an alias.

• How to delete an alias.

• How to connect control volumes.

• How to disconnect control volumes.

• How to catalog a data set.

• How to remove data set references from the catalog.

• How to recatalog a data set.

• How to read a data set control block from the volume table of contents.

• How to delete a data set.

• How to rename a data set.

Accompanying the function descriptions in text are coding examples and programming notes; exceptional-return condition codes for the macro instructions are tabulated on the back of the fold-out sheet (Figure CV2).

HOW TO READ A BLOCK FROM THE CATALOG

To read either an index block or a block indicating the volumes on which a data set is stored (volume-list block), you use the LOCATE and CAMLST macro instructions. There are two ways to specify the block that you want read into main storage~ by using the name of the index level or data set, or by using the block's location relative to the beginning of the catalog (TTR).

-By specifying the Name of an Index Level or Data set

If you specify an index level name, the first block of the named index is read into main storage, and an exceptional return code is set. Index block formats are contained in Appendix A of this chapter.

If you specify a data set name, a 256-byte volume-list block is read into main storage. The block contains up to 20 volume pointers, each of which points to a volume on which pa~t of the data set is stored. The first two bytes of the block contain the number of ,volume pointers., for the data set. Each ~lume pointer is a 12-byte fi~ld that conta1ns a

4-byte device code,

a

6-byte volume serial number, and a 2-byte data set sequence number. (Device codes are contained in Appendix B of this chapter. )

16 System Programmer's Guide (Release 20.1)

(17)

If the named data set is stored on more than 20 volumes, bytes 253-255 of the block contain the relative track address of the next block of volume pointers. Byte 255 contains a binary zero.

Example: In the following example, the list of volumes that contain data set A.B is read into main storage. The search for the volume-list block starts on the system residence volume.

r---T---T---,

I

Name

I

Operation

I

operand

I

~---+---+---i

I I

LOCATE

1

INDAB READ VOLUME-LIST BLOCK FOR

I I

Check Exceptional Returns CATALOGED DATA SET A.B INTOl 1 INDAB I CAMLST I NAME,AB, ,LOCAREA MAIN STORAGE AREA NAMED 1 I AB I DC 1 CL44'A.B· LOCAREA. LOCAREA ALSO I

I

LOCAREA

I

DS

I

OD CONTAINS 3-BYTE TTR AND

I

I I

DS

I

265C 6-BYTE SERIAL NUMBER

I

L _________ ~ __________ ~ _________________________________________________ J

The LOCATE macro instruction points to the CAMLST macro instruction.

NAME, the first operand of CAMLST, specifies that the system is to search the catalog for a volume-list block by using the name of a data set. AB, the second operand, specifies the main storage location of a 44-byte area into which you have placed the fully qualified name of a data set. LOCAREA, the fourth operand, specifies a 265-byte area you have reserved in main storage.

After execution of these macro instructions, the 265-byte area contains: the 2.56-~e volume-list block for data set A.B, the 3-b

r

te

relative track-~ess (TTR) of the block following the one read 1n 0

main storage, and the ~;byte serial number of the volume on which the block was found. -~

If a code of 4 is returned in register 15 indicating that the

required control volume was not mounted, bytes 260-265 of the work area will contain the volume serial number of this required volume. If LOCATE finds an old CVOL pointer entry, and the CVOL is not mounted, binary zeros will be returned in bytes 253-256 of the work area.

However, if a new CVOL pointer entry is found, the four-byte device code of the CVOL will be returned in those bytes.

-By specifying the Name of a Generation Data Set

You specify the name of a generation data set by using the fully qualified generation index name and the relative generation number of the data set. The value of a relative generation number reflects the position of a data set in a generation data group. The following values can be used:

• Zero - specifies the latest data set cataloged in a generation data group.

• Negative number - specifies a data set cataloged before the latest data set.

• positive number - specifies a data set not yet cataloged in the generation data group.

When you use zero or a negative number as the relative generation number, a volume-list block is read into main storage and the relative generation number is replaced by the absolute generation name.

Maintaining the Catalog and the Volume Table of Contents 17

(18)

When you use a positive number as the relative generation number, an absolute generation name is created and replaces the relative generation number. A volume-list block is not read, since none exists for these data sets.

Example: In the following example, the list of volumes that contain generation data set A.PAY(-3) is read into main storage. The search for the volume-list block starts on the system residence volume.

r---T---T---,

I

Name

I

Operation

I

Operand

I

~---+---+---~

I I

LOCATE

I

INDGX READ VOLUME- LIST BLOCK FOR

I I

Check Exceptional Returns DATA SET A.PAY(-3) INTO

I I

INDGX

I

CAMLST

I

NAME, APAY, , LOCAREA MAIN STORAGE AREA NAMED

I I

APAY

I

DC

I

CL44'A.PAY(-3)' LOCAREA. LOCAREA ALSO CON-

I

I

LOCAREA

I

DS

I

OD TAINS 3-BYTE TTR AND

I

I I

DS

I

26SC 6-BYTE SERIAL NUMBER

I

L _________ ~ __________ i -________________________________________________ J

The LOCATE macro instruction points to the CAMLST macro instruction.

NAME, the first operand of CAMLST, specifies that the system is to search the catalog for a volume-list block by using the name of a data set. APAY, the second operand, specifies the main storage location of a 44-byte area into which you have placed the name of the generation index and the relative generation number of a data set in the generation data group. LOCAREA, the fourth operand, specifies a 26S-byte area you have reserved in main storage.

After execution of these macro instructions, the 26S-byte area

contains: the 256~byte volume-list block for generation data set A.PAY (-3), the 3-byte relative track address (TTR) of the block following the one read into main storage, and the 6-byte serial number of the volume on which the block was found. In addition, the system will hav~

replaced the relative generation number that you specified in your 44-byte area with the data set's absolute generation name.

-By specifying a Name Using an Alias

For each of the preceding functions, you can specify an alias as the first name in the qualified name of an index level, data set, or

generation data set. Each function is performed exactly as previously described, with one exception: the alias name specified is replaced by the true name.

-By specifying by TTR

You can read any block in the catalog by specifying, in the form TTR, the identification of the block and its location relative to the

beginning of the catalog. TT is the number of tracks from the beginning of the catalog" R is the record number of the desired block on the

track. (Formats of each type of catalog block are contained in Appendix A of this chapter.)

Example: In the following example, the block at the location indicated

by

TTR is read into main storage. The specified block is in the catalog on the system residence volume.

18 System Programmer's Guide (Release 20.1)

(19)

r---T---T---,

I

Name

I

Operation

I

Operand I

r---+---+---~

I I

LOCATE

I

BLK READ A BLOCK INTO MAIN I

I Check Exceptional Returns STORAGE AREA NAMED LOCAREA I

I

BLK

I

CAMLST I BLOCK, TTR, , LOCAREA I

I

TTR

I

DC

I

H' 5' RELATIVE TRACK 5 I

I

I DC

I

X' 03' BLOCK 3 ON TRACK I

I

LOCAREA

I

OS

I

00 LOCAREA ALSO CONTAINS 3-BYTEI

I I

OS

I

26SC TTR AND 6-BYTE SERIAL NO.

I

L _________ i __________ i __________________________________ _______________ J

The LOCATE macro instruction points to the CAMLST macro instruction.

BLOCK, the first operand of CAMLST, specifies that the system is to search the catalog for the block indicated by TTR, the second operand.

LOCAREA, the fourth operand, specifies a 265-byte area you have reserved in main storage.

After execution of these macro instructions, the 265-byte area contains: the ~~6-byte index blockL the 3-byte relative track address

(TTR) of the block following the one read into main storage, and the

_6~byte serial number of the volume on which the block was found.

HOW TO BUILD AN INDEX

To build a new index structure and add i t to the catalog, you must

create each level of the index separately. You create each level of the index by using the INDEX and CAMLST macro instructions.

These two macro instructions can also be used to add index levels to existing index structures.

Example: In the following example, index structure A.B.C is built on the control volume whose serial number is 000045.

r---T---T---,

I

Name

I

Operation

I

Operand I

~---+---+---i

I

INDEX

I

INDEXA BUILD INDEX A I

Check Exceptional RetUrns I

I

INDEX

I

INDEXB BUILD INDEX STRUCTURE A.B

I

Check Exceptional Returns I

I

INDEX

I

INDEXC BUILD INDEX STRUCTURE A.B.CI

Check Exceptional Returns I

INDEXA

I

CAMLST

I

BLDX, ALEVEL, VOLNUM I

INDEXB

I

CAMLST

I

BLDX, BLEVEL, VOLNUM I

INDEXC

I

CAMLST

I

BLDX,CLEVEL,VOLNUM I

VOLNUM

I

DC

I

CL6'00004S' VOLUME SERIAL NUMBER

I

ALEVEL

I

DC

I

CL2' A' INDEX STRUCTURE NAMES

I

BLEVEL

I

DC

I

CL4' A. B ' FOLLOWED BY BLANKS

I

CLEVEL

I

DC

I

CL6'A.B.C' WHICH DELIMIT FIELDS I

L _________ i __________ i _________________________________ ________________ J

Each INDEX macro instruction points to an associated CAMLST macro instruction. BLDX, the first operand of CAMLST, specifies that an index level be built. The second operand specifies the main storage location of an area into which you have placed the fully qualified name of an index level. The third operand specifies the main storage location of an area into which you have placed the 6-byte serial number of the volume on which the index level is to be built.

Maintaining the Catalog and the Volume Table of Contents 19

(20)

HOW TO BUILD A GENERATION INDEX

You build a generation index by using the INDEX and CAMLST macro

instructions. ' All higher levels of the index must exist. If the higher levels of the index are not in the catalog. you must build them. How to build an index has been explained previously. In the following example, the generation index D is built on the control volume whose serial

number is 00004S. The higher level indexes A.B.C already exist. When the number of generation data sets in the generation index D exceeds four, the oldest data set in the group is uncataloged and scratched.

r---T---T---,

'Name ,Operation, Operand ,

~---+---+---1

, 'INDEX J GENINDX BUILD GENERATION INDEX

I

I

Check Exceptional Returns

I

I

GENINDX ,CAMLST ,BLDG,DLEVEL.VOLNUM"DELETE,,4

I

'DLEVEL 'DC , CLS'A.B.C.D' BLANK DELIMITER

I

'VOLNUM

I

DC

I

CL6'00004S'

I

L _________ ~ __________ ~ _________________________________________________ J

The INDEX macro instruction points to the CAMLST macro instruction.

BLDG, the first operand of CAMLST. specifies that a generation index be built. DLEVEL, the second operand. specifies the main storage location of an area into which you have placed the fully qualified name of a

generation index. VOLNUM, the third operand, specifies the wain storage location of an area into which you have placed the 6-byte serial number of the volume on which the generation index is to be built. DELETE, the fifth operand, specifies that all data sets dropped from the generation data group are to be deleted. The final operand, 4, specifies the number of data sets that are to be maintained in the generation data group.

HOW TO DELETE AN INDEX

You can delete any number of index levels from an existing index

structure. Each level of the index is deleted separately. You delete each level of the index by using the INDEX and CAMLST macro

instructions.

If an index level either has an alias" or has other index levels or data sets cataloged under it, i t cannot be deleted.

Example: In the following example, index level C is deleted from index structure A.B.Ce The search for the index level starts on the system residence volume.

r---T---T---,

I

Name

I

operationJ Operand

I

~---+---t---~

I I

INDEX 'DELETE DELETE INDEX LEVEL C FROM

I I

Check Exceptional Returns INDEX STRUCTURE A.B.C

I

'DELETE

I

CAMLST ,DLTX,LEVELC ,

I

LEVELC

I

DC

I

CL6'A.B.C' ONE BLANK FOR DELIMITER

I

L _________ ~ __________ ~ _________________________________________________ J

The INDEX macro instruction points to the CAMLST macro instruction.

DLTX, the first operand of CAMLST, specifies that an index level be deleted. LEVELC, the second operand, specifies the main storage

location of an area into which you have placed the fully qualified name of the index structure whose lowest level is to be deleted.

20 system Programmer's Guide (Release 20.1)

(21)

HOW TO ASSIGN AN ALIAS

You assign an alias to an index level by using the INDEX and CAMLST macro instructions. An alias can be assigned only to a high level index; e.g., index A of index structure A.B.C can have an alias, but index B cannot. Assigning an alias to a high level index effectively provides aliases for all data sets cataloged under that index.

Example: In the following example, index level A is assigned an alias of X. The search for the index level starts on the system residence volume •

• ---T---T---,

I

Name

I

Operation

I

Operand

I

~---+---+---~

I

' I N D E X ' ALIAS BUILD AN ALIAS FOR A HIGH,

I

Check Exceptional Returns LEVEL INDEX

I

I

ALIAS

I

CAMLST ,BLDA,DSNAME, , DSALIAS ,

'DSNAME 'DC , CLS'A' MUST BE S-BYTE FIELDS

I

I

DSALIAS

I

DC

I

CLS IX' ,

L _________ ~ __________ ~ ________________________________________________ J

The INDEX macro instruction points to the CAMLST macro instruction.

BLDA, the first operand of CAMLST, specifies that an alias be built,.

DSNAME. the second operand, specifies the main storage location of an S-byte area into which you have placed the name of the high level index to be assigned an alias. DSALIAS, the fourth operand" specifies the main storage location of an 8-byte area into which you have placed the alias to be assigned.

HOW TO DELETE AN ALIAS

You delete an alias previously assigned to a high level index by using the INDEX and CAMLST macro instructions.

Example: In the following example, alias X, previously assigned as an alias for index level A, is deleted. The search for the alias starts on the system residence volume •

• ---T---T---,

I

Name 'Operation' Operand

I

~---+---+---~

, 'INDEX

I

DELALIAS DELETE AN ALIAS FOR A

I

, Check Exceptional Returns HIGH LEVEL INDEX

I

, DELALIAS' CAMLST

I

DLTA, ALIAS

I

I

ALIAS

I

DC , CLS'X' MUST BE S-BYTE FIELD

I

L _________ ~ __________ i _________________________________________________ J

The INDEX macro instruction points to the CAMLST macro instruction.

DLTA. the first operand of CAMLST, specifies that an alias be deleted.

ALIAS, the second operand, specifies the main storage location of an S-byte area into which you have placed the alias to be deleted.

HOW TO CONNECT CONTROL VOLUMES

You connect two control volumes by using the INDEX and CAMLST macro instructions. If a control volume is to be connected to the system residence volume. you need supply only the serial number of the volume to be connected and the name of a high level index associated with the volume to be connected.

Maintaining the Catalog and the Volume Table of Contents 21

-

(22)

If a control volume is to be connected to a control volume other than the system residence volume, you must supply the serial numbers of both volumes and the name of a high level index associated with the volume to be connected.

The result of connecting control volumes is that the volume serial number of the control volume connected and the name of a high level index are entered into the volume index of the volume to which i t was connected. This entry is called a control volume pointer. A control volume pointed to by a control volume cannot, in turn, point to another control volume.

Example: In the following example, the control volume whose serial number is 001555 is connected to the control volume numbered 000155.

The name of the high level index is HIGHINDX.

r---T---T---,

I

Name

I

Operation

I

Operand

I

~---+---t---~

I I

INDEX

I

CONNECT CONNECT TWO CON- 1

I

Check Exceptional Returns TROL VOLUMES WHOSE

I I

CONNECT

I

CAMLST

I

LNKX,INDXNAME,OLDCVOL,NEWCVOL SERIAL NUMBERS ARE 1 1 INDXNAMEI DC 1 CL8'HIGHINDX' 000155 AND 001555.1

I

OLDCVOL

I

DC

I

CL6'000155' 1

1 NEWCVOL 1 DC 1 X'30002001' 2311 DISK STORAGE 1

I I

DC

I

CL6'001555'

I

l _________ i __________ i _________________________________________________ J

The INDEX macro instruction points to the CAMLST macro instruction.

LNKX, the first operand of CAMLST, specifies that control volumes be connected. INDXNAME, the second operand, specifies the main storage location of an 8-byte area into which you have placed the name of the high level index of the volume to be connected. OLDCVOL, the third operand, specifies the main storage location of a 6-byte area into which you have placed the serial number of the volume to which you are

connecting. NEWCVOL, the fourth operand, specifies the main storage location of a 10-byte area into which you have placed the 4-byte binary device code of the volume to be connected followed by the 6-byte area to contain the volume serial number of the volume to be connected.

HOW TO DISCONNECT CONTROL VOLUMES

You disconnect two control volumes by using the INDEX and CAMLST macro instructions. If a control volume is to be disconnected from the system residence volume, you need supply only the name of the high level index associated with the volume to be disconnected.

If a control volume is to be disconnected from a control volume other than the system residence volume, you must supply, in addition to the name of the high level index, the serial number of the control volume from which you want to disconnect.

The result of disconnecting control volumes is that the control

volume pointer is removed from the volume index of the volume from which you are disconnecting.

Example: In the following example, the control volume that contains the high level index HIGHINDX is disconnected from the system residence volume.

22 System Programmer's Guide (Release 20.1)

(23)

r---T---T---,

\ Name \ Operationl Operand 1

~---+---t---~

1 \

INDEX

1

DISCNECT DISCONNECT TWO CONTROL VOLUMES I

I Check Exceptional Returns I

I

DISCNECTI CAMLST

I

DRPX,INDXNAME I

\ IN DXNAME\ DC \ CL8 'HIGHINDX' MUST BE 8-BYTE FIELD

I

L _________ ~ __________ i _________________________________________________ J

The INDEX macro instruction points to the CAMLST macro instruction.

DRPX, the first operand of CAMLST, specifies that control volumes be disconnected. INDEXNAME, the second operand, specifies the main storage location of an 8-byte area into which you have placed the name of the high level index of the control volume to be disconnected.

HOW TO CATALOG A DATA SET

You catalog a data set by using the CATALOG and CAMLST macro

instructions. All index levels required to catalog the data set must exist in the catalog, or an exceptional return code is set.

You must build a complete volume list in main storage. This volume list consists of volume pointers for all volumes on which the data set is stored. The first two bytes of the list indicate the number of volume pointers that follow. Each 12-byte volume pointer consists of a

4-byte device code, a 6-byte volume serial number, and a 2-byte data set sequence number. The sequence number is always zero for direct access volumes. (Device codes are contained in Appendix B of this chapter.) Example: In the following example, the data set named A.B.C is

cataloged under an existing index structure A.B. The data set is stored on two volumes.

r---T---T---,

\ Name 1 Operation 1 Operand \

~---+---t---~

\ 1

CATALOG

1

ADDABC CATALOG DATA SET A.B.C. THE

1 I

Check Exceptional Returns INDEX STRUCTURE A.B. EXISTS I

I ADDABC

I

CAMLST

1

CAT,DSNAME"VOLUMES I

I DSNAME I DC \ CL6' A • B. C' ONE BLANK FOR DELIMITER 1

I VOLUMES I DC 1 H' 2' TWO VOLUMES I

I \

DC

I

X'30002001' 2311 DISK STORAGE I

I

I DC

I

CL6 '000014' VOLUME SERIAL NUMBER I

I I

DC

I

H' 0 ' DATA SET SEQUENCE NUMBER I

1 I

DC

I

X'30002001' 2311 DISK STORAGE I

1 1

DC

1

CL6'0000lS' VOLUME SERIAL NUMBER

I

1 I

DC

1

H' 0' SEQUENCE NUMBER

1

L _________ ~ __________ i -________________________________________________ J

The CATALOG macro instruction points to the CAMLST macro instruction.

CAT, the first operand of CAMLST, specifies that a data set be cataloged. DSNAME" the second operand, specifies the main storage location of an area into which you have placed the fully qualified name of the data set to be cataloged. VOLUMES, the fourth operand, specifies the main storage location of the volume list you have built.

HCM TO REMOVE DATA SF!' REFERENCES FROM THE CATALOG

You remove data se~ references from the catalog by using the CATALOG and CAMLST macro instructions.

Example: In the following example, references to data set A.B.C are removed from the catalog.

Maintaining the Catalog and the Volume Table of Contents 23

(24)

r---T---~---,

I

Narne

I

Operation

I

Operand

I

~---+---+---~---~

I I

CATALOG

I

REMOVE I REMOVE REFERENCES TO DATA

I I

Check Exceptional Returns SET A.B.C FROM THE CATALOG

I

I

REMOVE

I

CAMLST

I

UNCAT, DSNAME

I

I

DSNAME

I

DC

I

CL6'A.B.C' ONE BLANK FOR DELIMITER

I

L _________ ~ __________ ~ _________________________________________________ J

The CATALOG macro instruction points to the CAMLST macro instruction.

UNCAT, the first operand of CAMLST, specifies that references to a data set be removed from the catalog. DSNAME, the second operand, specifies the main storage location of an area into which you have placed the fully qualified name of the data set whose references are to be removed.

HOW TO RECATALOG A DATA SET

You recatalog a cataloged data set by using the CATALOG and CAMLST macro instructions. Recataloging is usually performed when new volume

pointers must be added to the volume list of a data set.

You must build a complete volume list in main storage. This volume list consists of volume pointers for all volumes on which the data set is stored. The first two bytes of the list indicate the number of volume pointers that follow. Each 12-byte volume pointer consists of a

4-byte device code, a 6-byte volume serial number, and a 2-byte data set sequence number. The sequence number is always zero for direct access volumes. (Device codes are contained in Appendix B of this chapter.) Example: In the following example, the data set named A.B.C is

recataloged. A new volume pointer is added to the volume list, which previously contained only two volume pointers.

r---T---T---,

I

N arne

I

Operation

I

Opera nd

I

~---+---+---~

I

CATALOG

I

RECATLG RECATALOG DATA SET A.B.C, Check Exceptional Returns ADDING A NEW VOLUME

RECATLG DSNAME VOLUMES

POINTER TO THE VOLUME CAMLST RECAT,DSNAME"VOLUMES LIST.

DC CL6'A.B.C' ONE BLANK FOR DELIMITER

DC H ' 3 I THREE VOLUMES

DC X'30002001' 2311 DISK STORAGE

DC CL6'000014' VOLUME SERIAL NUMBER

DC H I 0 ' SEQUENCE NUMBER

DC X'30002001' 2311 DISK STORAGE

DC CL6'OOOOlS' VOLUME SERIAL NUMBER

DC H'O' SEQUENCE NUMBER

DC X' 30002001 ' 2311 DISK STORAGE

DC CL6'000016' VOLUME SERIAL NUMBER

DC H' 0' SEQUENCE NUMBER

---~---~--- The CATALOG macro instruction points to the CAMLST macro instruction.

RECAT, the first operand of CAMLST" specifies that a data set be recataloged. DSNAME, the second operand, specifies the main storage location of an area into which you have placed the fully qualified name of the data set to be recataloged. VOLUMES, the fourth operand,

specifies the main storage location of the volume list you have built.

24 system Programmer's Guide (Release 20.1)

Références

Documents relatifs

In the first part, by combining Bochner’s formula and a smooth maximum principle argument, Kr¨ oger in [15] obtained a comparison theorem for the gradient of the eigenfunctions,

This paragraph is devoted to evaluate the use of the ordinary differ- ential system (1.2) as an algorithm to obtain approximate solutions to the partial differential equation

PROGRAMMING NOTES: If the SIC operand is specified, characters assigned the translation code (00) in the Character Translation Table, as well as characters

The description of the standard form of the SETPRT macro instruction provides the explanation of the function- of each operand. The format description

We study linear inhomogeneous kinetic equations with an external confining potential and a collision operator with several local conservation laws (local density, momentum and

Afin d'éviter de relever le défi d'une prospective très large sur l'agriculture mondiale dans son contexte économique, nous avons décidé de structurer notre prospective de telle

The instruction times for the floating-point instruc- tions depend upon the number of hexadecimal digits that are preshifted and postshifted, as well as the number of

Two versions of minimalist self-regulatory skill instruction were compared to a control group that was merely taught procedural skills to operate the search engine.. Acquired skills