Upload
pradeepgowda89
View
217
Download
0
Embed Size (px)
Citation preview
8/13/2019 l1 Mfcics Mvs Student Guide
1/97
Patni Computer Systems Ltd
MVS
Student Guide
Copyright 2008 Patni Computer Systems Ltd., Akruti, MIDC Cross Road No. 21, Andheri (E), Mumbai
400 093. All rights reserved. No part of this publication can be reproduced in any way, including but not
limited to photocopy, photographic, magnetic, or other record, without the prior agreement and written
permission of Patni Computer Systems.
Patni Computer Systems considers information included in this document to be Confidential and
Proprietary
8/13/2019 l1 Mfcics Mvs Student Guide
2/97
MVS
Copyright 2008 by Patni
Table of Contents
1 INTRODUCTION................................................................................................................................1
2 OPERATING SYSTEM CONCEPTS..................................................................................................2
2.1 OPERATING SYSTEM IMPORTANCE AND NEED ...............................................................................2
2.2 POSITION OF OS IN A SYSTEM ........................................................................................................2
3 COMPUTING ENVIRONMENT..........................................................................................................4
3.1 KEY CONCEPTS AND TERMINOLOGY................................................................................................4
3.2 DATA PROCESSING .......................................................................................................................4
3.3 MULTI-PROGRAMMING ...................................................................................................................5
3.4 MULTI-PROGRAMMING OVERHEADS................................................................................................6
3.5 RELEVANCE OF MULTI-PROGRAMMING ............................................................................................6
3.6 MULTI-PROCESSING ......................................................................................................................6
3.7 SPOOLING ....................................................................................................................................7
3.8 VIRTUAL STORAGE ........................................................................................................................7
3.9 MEMORY MANAGEMENT.................................................................................................................8
4 CHARACTERISTICS FEATURES OF MVS ....................................................................................10
5 IBM OPERATING SYSTEMS ..........................................................................................................11
5.1 IBM FAMILIES OF OPERATING SYSTEMS........................................................................................11
5.2 MVS EVOLUTION ........................................................................................................................12
5.3 MULTIPROGRAMMING W ITH FIXED TASK (MFT)..............................................................................14
5.4 MULTIPROGRAMMING W ITH VARIABLE TASKS (MVT) ......................................................................15
5.5 SYSTEM 370 I/O ARCHITECTURE ..................................................................................................19
6 KEY TERMINOLOGY ......................................................................................................................21
6.1 CACHE MEMORY .........................................................................................................................21
6.2 CHANNELS ..................................................................................................................................21
6.3 CHANNEL - I /ODEVICE CONNECTIVITY ..........................................................................................21
6.4 I/O DEVICES ...............................................................................................................................21
6.5 DATA COMMUNICATION NETWORK ................................................................................................22
6.6 DATA COMMUNICATION EQUIPMENT ..............................................................................................23
7 TYPICAL MAINFRAME CONFIGURATION ....................................................................................26
7.1 A SMALL MAINFRAME CONFIGURATION .........................................................................................26
7.2 MVS CONCEPTS AND TERMINOLOGY ............................................................................................27
7.3 RSM (REAL STORAGE MANAGER)................................................................................................307.4 ASM (AUXILIARY STORAGE MANAGER).........................................................................................30
7.5 VSM (VIRTUAL STORAGE MANAGER)............................................................................................30
7.6 VIRTUAL STORAGE LAYOUT..........................................................................................................31
8 MVS FUNCTIONS ...........................................................................................................................33
8.1 DATA MANAGEMENT OVERVIEW ...................................................................................................33
8.2 TYPES OF DATA ..........................................................................................................................33
8.3 DATASET ORGANIZATION .............................................................................................................33
8/13/2019 l1 Mfcics Mvs Student Guide
3/97
MVS
Copyright 2008 by Patni
8.4 NON-VSAM DATASETS ORGANIZATION..........................................................................................34
8.5 DATASET ORGANIZATION .............................................................................................................34
8.6 VSAM DATASETS ORGANIZATION..................................................................................................36
8.7 DATA ORGANIZATION - SALIENT POINTS........................................................................................36
8.8 DATA SET NAMING RULES ...........................................................................................................36
8.9 MVS DATASETS ..........................................................................................................................378.10 DATA MANAGEMENT ....................................................................................................................39
8.11 HOW DATASETS ARE ACCESSED? .................................................................................................40
9 JOB MANAGEMENT OVERVIEW...................................................................................................41
9.1 WHAT IS A JOB?..........................................................................................................................41
9.2 JOB MANAGEMENT FUNCTIONS ....................................................................................................41
9.3 STAGES OF JOB ..........................................................................................................................41
9.4 JOB MANAGEMENT ......................................................................................................................42
9.5 JOB SCHEDULING ........................................................................................................................43
10 DATASET ALLOCATION AND JOB STEP EXECUTION ...............................................................46
11 MVS TOOLS OVERVIEW................................................................................................................48
11.1 JOB MANAGEMENT TOOLS ...........................................................................................................48
11.2 WHY AND WHAT OF JCL? ............................................................................................................49
11.3 JES - JOB ENTRY SYSTEM...........................................................................................................49
11.4 MVS TOOLS OVERVIEW ...............................................................................................................50
11.5 COMPONENTS OF JOB OUTPUT.....................................................................................................53
11.6 VTAM VIRTUAL TELECOMMUNICATIONSACCESS METHOD...........................................................54
11.7 CICS CUSTOMER INFORMATION CONTROL PROGRAM (OPTIONAL COMPONENT) ............................55
11.8 DB2 - DATABASE 2 (OPTIONAL COMPONENT).................................................................................55
11.9 RACF - RESOURCEACCESS CONTROL FACILITY ...........................................................................55
11.10 SMF - SYSTEM MANAGEMENT FACILITY.....................................................................................55
11.11 LANGUAGE TRANSLATORS / LINKAGE EDITOR / LOADER ..............................................................5611.12 UTILITIES ................................................................................................................................56
11.13 AN INTRODUCTION TO TSO ......................................................................................................56
12 INTERACTIVE SYSTEM PRODUCTIVITY FACILITY (ISPF) ..........................................................58
12.1 PRIMARY OPTIONS MENU ............................................................................................................58
12.2 TERMINATION PANEL ...................................................................................................................60
12.3 KEY MAPPING .............................................................................................................................60
12.4 BROWSING DATASETS (OPTION 1)................................................................................................61
12.5 BROWSE COMMANDS...................................................................................................................62
12.6 EDITING DATASETS (OPTION 2) ....................................................................................................62
12.7 STANDARD EDITING COMMANDS ....................................................................................................62
12.8 EDIT PROFILES ...........................................................................................................................6312.9 PROFILE SETTINGS......................................................................................................................64
12.10 EDIT MODES............................................................................................................................64
12.11 ADVANCED EDIT OPTIONS ........................................................................................................65
12.12 SHIFTING TEXT SOURCE............................................................................................................65
12.13 UTILITIES MENU .......................................................................................................................66
12.14 LIBRARY UTILITY......................................................................................................................67
12.15 DATASET UTILITY .....................................................................................................................68
12.16 NEW DATASET ALLOCATION.......................................................................................................68
8/13/2019 l1 Mfcics Mvs Student Guide
4/97
MVS
Copyright 2008 by Patni
12.17 RENAMING DATASET ................................................................................................................69
12.18 DATASET INFORMATION ............................................................................................................69
12.19 ALLOCATING DATASETS............................................................................................................70
12.20 MOVE / COPY ..........................................................................................................................71
12.21 MOVE / COPY- 2 ......................................................................................................................72
12.22 DSLIST UTILITY ......................................................................................................................7312.23 DSLIST DATASET SELECTION ..................................................................................................73
12.24 DSLIST COMMANDS................................................................................................................74
12.25 PRIMARY COMMANDS...............................................................................................................74
12.26 RESET ....................................................................................................................................75
13 DIFFERENCES BETWEEN TEST AND PRODUCTION ENVIRONMENTS .................................76
14 INTRODUCTION TO FILE-AID........................................................................................................77
14.1 F.1 BROWSE...............................................................................................................................77
14.2 F.1 BROWSE SCREEN ..................................................................................................................79
14.3 F.2 EDIT .....................................................................................................................................82
14.4 F.3 UTILITIES...........................................................................................................................83
15 APPENDIX A (BIBLIOGRAPHY/REFERENCES).........................................................................92
8/13/2019 l1 Mfcics Mvs Student Guide
5/97
MVS
Copyright 2008 by Patni
Day-Wise Schedule
Day 1
Computing Environment -Key Concepts & terminology, Typical IBM MF site.
IBM Operating Systems -
IBM families of OS
IBM Hardware
MVS Implementation
MVS Functions
Data Management Overview
Job Management Overview
MVS Tools Overview
Lab session
Demo on ISPF
Familiarizing with various options of ISPF editor on PCCICS
Assignments ISPF editor
Differences between Test and Production Environment
Introduction to File-Aid (This just gives an introduction to File-Aid and refer to IBM
Manual for further details)
8/13/2019 l1 Mfcics Mvs Student Guide
6/97
MVS
Copyright 2008 by Patni Page 1 of 97
1 INTRODUCTION
Before you begin to work on the Mainframe environment, which by default means IBM Mainframe,
you need to have a basic idea of the IBM mainframe operating system. Today, it is know as MVS, which
expands to Multiple Virtual Storage.
The MVS operating system has evolved over many years and has adapted to the changing technology
and modern day requirements. Since the user base of MVS is very large, a change is not easy to
Implement. The costs of the Mainframes are very high and the customer base is mostly made up of
long-term customers with huge application and large databases to support. Most of these applications
are also Mission Critical applications. It is therefore imperative that any change to MVS also be
backward compatible.
MVS is designed to work with many hundreds of users working together, located in the same locality or
across continents. The MVS operating System was created by IBM and is said to propriety OS. It has
the capacity to supports a large number of peripherals like disks, tapes, printers, Network devices etc.The applications on these Legacy systems are typically where there is a huge amount of data and a
large user base. Examples are banking sector, Insurance Sector, Newspapers, Material and Inventory,
Airlines, Credit Card System, Billing, Accounting, Shipping and others. Companys that own these
mainframes are typically those that are very big inherently or have to deal with vast amounts of data,
which has to be processed fast.
8/13/2019 l1 Mfcics Mvs Student Guide
7/97
MVS
Copyright 2008 by Patni Page 2 of 97
2 OPERATING SYSTEM CONCEPTS
2.1 OPERATING SYSTEM IMPORTANCE AND NEED
An OS controls the computer and acts as an intermediary between the user of a computer and
the computer hardware. The OS basically programs the task of scheduling the use of the
computer. Sophisticated OSs increase the efficiency of use of the computer and hence reduce
the cost of using the computer.
2.2 POSITION OF OS IN A SYSTEM
Users
Users
Application Programs
Utilities
Loaders
Linkers Compilers
OS manages
Memory Device
Information Processor
Hardware
8/13/2019 l1 Mfcics Mvs Student Guide
8/97
MVS
Copyright 2008 by Patni Page 3 of 97
The main functions of the Operating System are:
Keeping track of the resources namely memory, I/O devices, processor and information.
Decides who gets what resource, and how much?
Allocate the resources when needed.
Reclaim the resources back after it has been used, so that they may be allocated subsequently.
8/13/2019 l1 Mfcics Mvs Student Guide
9/97
MVS
Copyright 2008 by Patni Page 4 of 97
3 COMPUTING ENVIRONMENT
3.1 KEY CONCEPTS AND TERMINOLOGY
Command Processing
Command Issue Mode
This how a user (programmer / end-user) interacts with the computer E.g. To edit a program, toexecute a program
On-line Mode - Using TerminalBatch Mode - Using Punched Cards or JCLs
Command Execution Mode
All computer commands can be executed in two modes
Foreground - Terminal is locked while the command is being executedBackground - Terminal is free while the command is being executed
3.2 DATA PROCESSING
How Business applications are executed
On-line
End User performs business functions
Application programs work interactively with End User
Execution is in foreground mode
Database is immediately updated to reflect the changes
Typically used for transaction processing, queries, master updates functions
Batch
Application programs are executed in background mode
Periodic business functions are executed automatically
As and when business functions are triggered by End User
Operations department is responsible for monitoring the execution
A command file is created to execute these functions
8/13/2019 l1 Mfcics Mvs Student Guide
10/97
MVS
Copyright 2008 by Patni Page 5 of 97
One command file may consist of multiple programs / system utilities
Typically used for bulk transaction processing, report printing, periodic processing (e.g. invoice generation,payroll calculation)
Time Sharing
1. Resource Sharing
2. Multiple Users compete for computer resources at the same time
3. At any given point in time only one user can have control of the resources
4. What should be the basis of sharing?
First come first served?
Priority based?
Who so ever can grab it - Law of Jungle?
Equal - Democratically?
Need based?
Usually combination of 2 and 4 is used i.e. all are equal but some are more equal!!!
Time Slice
Each user is given control of resources for a pre-defined period - time slice
The control is passed on to next in queue user at the end of time slice (even if first users
work is incomplete)
If the user requires I/O before the time slice is over, the control is handed over to the next
user (since CPU cannot do anything until I/O is complete)
Priority
Each user / function is assigned a priority level
The higher priority users are serviced first in a round robin fashion
Only if the higher priority users are in wait state for I/O completion the users in the lower
priority are serviced
Time Sharing typically refers to sharing of resources in an interactive processing mode.
3.3 MULTI-PROGRAMMING
Why Multi-Programming?
The program has CPU based and Non-CPU based instructions
CPU is kept waiting during the non-CPU based instructions execution
E.g. I/O operations (Disk, Terminal, Printer)
8/13/2019 l1 Mfcics Mvs Student Guide
11/97
MVS
Copyright 2008 by Patni Page 6 of 97
This results in wastage of CPU time - a precious resource
Multi-programming results in better CPU utilization
How does it Work?
Multiple programs are kept ready for execution
CPU can execute only one program at any given point in time
If the currently executing program requires I/O, it is put in a wait state
Another program is immediately taken for execution
On completion of I/O the program again becomes ready for execution
This results in an illusion that multiple programs are being executed simultaneously, hence
multiprogramming.
3.4 MULTI-PROGRAMMING OVERHEADS
Program Queue Management
Program Status Management
Context Switching during Changeover
Multiple programs must be in main memory
Management of Common Resource Sharing (e.g. Printer)
It is critical to determine optimum level of Multi-programming to maintain certain service level.
3.5 RELEVANCE OF MULTI-PROGRAMMING
Multi-programming is applicable even for single user system
Multi-programming is a must for multi-user system
3.6 MULTI-PROCESSING
There are multiple CPUs (processors) in one machine
These work together under single operating system
Each CPU executes a separate program
O/S assigns programs to each CPU
Essentially CPU is treated as an allocable device!!!!!
8/13/2019 l1 Mfcics Mvs Student Guide
12/97
MVS
Copyright 2008 by Patni Page 7 of 97
3.7 SPOOLING
Why Spooling?
Multiple programs may need same printer at the same time
May result in intermixing of output Exclusive access to a program will hold other programs
Printer is much slower, results in longer wait state
How it is implemented?
Output to printer is intercepted and written to a disk i.e. spooled
On completion of program spooled output is queued for Printing
This queue is processed by O/S print routine
The O/S print routine is multi-programmed along with application programs
3.8 VIRTUAL STORAGE
Why Virtual Storage?
Required to enable execution of programs with are larger than the main memory size
What is Virtual Storage?
Technique to simulate large amount of main storage
Reality is main storage is much less
E.g. Real main storage is 16MB but virtual storage is 2GB
How Virtual Storage is implemented?
Program executable code is generated assuming virtual storage size
Only part of the program is loaded in main memory
Address translation mechanism is used to map virtual address to actual address
Feasible because only the instruction currently being executed and the corresponding data needto be in the main storage
Advantages of Virtual Storage
Main memory can be shared by multiple programs
8/13/2019 l1 Mfcics Mvs Student Guide
13/97
MVS
Copyright 2008 by Patni Page 8 of 97
Enables effective use of the limited main storage
Overheads of Virtual Storage
Address mapping
Keeping track of what is in memory and what is not
Data/Instructions need to be brought in main memory as an when required
Remove from main memory what is not currently required (to make room for instructions of
other program)
Memory Management
3.9 MEMORY MANAGEMENT
Problem: - Any thing that is to be executed must be in memory. (Memory limitation)
Solution: - 1. Place task in real memory
2. Place task in virtual memory
1. Real Memory implementation:
Code and data are in real memory
Size of code and data limited by size of installed memory
Good performance, low overhead
Possible wastage of memory
2. Virtual memory implementation:
Based on assumption for a task, not all code & data is needed in real memory all the time
Implemented on a combination of real plus auxiliary storage
Operating system takes responsibility of bringing rest part of tasks in real memory when required
8/13/2019 l1 Mfcics Mvs Student Guide
14/97
8/13/2019 l1 Mfcics Mvs Student Guide
15/97
MVS
Copyright 2008 by Patni Page 10 of 97
4 CHARACTERISTICS FEATURES OF MVS
1) VIRTUAL STORAGE: The use of virtual storage increases the number of storage locations available
to hold programs and data.
2) MULTIPROGRAMMING: Multiprogramming simply reclaims the CPU during idle periods to let other
programs execute.
3) SPOOLING: To provide shared access to printer devices.
4) BATCH PROCESSING: When batch processing is used, work is processed in units called Jobs. A
job may cause one or more programs to be executed in sequence. The system collectively
processes batch jobs.
5) TIMESHARING: In this system, each user has access to the system through a terminal device.
Instead of submitting jobs that are scheduled for later execution, the user enters commands that are
processed immediately.
Time-sharing is also called Online Processing because it lets users interact directly with the computer.
8/13/2019 l1 Mfcics Mvs Student Guide
16/97
MVS
Copyright 2008 by Patni Page 11 of 97
5 IBM OPERATING SYSTEMS
5.1 IBM FAMILIES OF OPERATING SYSTEMS
DOS - Disk Operating
System
For Small
System/360
DOS/VSE
(Virtual Storage
Extended)
VM/CMS - Virtual
MachineConversation Monitor
System
Simulates more than
one computer system
on single real machine
Supports both DOSand OS
OS - Operating System
For Full range
System/360
MVS
(Multiple Virtual
Storage)
8/13/2019 l1 Mfcics Mvs Student Guide
17/97
MVS
Copyright 2008 by Patni Page 12 of 97
5.2 MVS EVOLUTION
1995 MVS/ESA 5.2.2
1993 MVS/OPEN EDITION (POSIX)
1990 SYSTEM 390
1988 MVS/ESA 16 B
1981 MVS/XA 2 GB (31-bit)
1974 OS/VS2R2 (MVS) 16 MB (24-bit)
1972 OS/VS1 OS/VS2R1 (SVS) 16 MB
1970 SYSTEM 370
1966 OS/MFT OS/MVT 3 MB
1966 PRIMARY CONTROL PROGRAM (PCP)
8/13/2019 l1 Mfcics Mvs Student Guide
18/97
MVS
Copyright 2008 by Patni Page 13 of 97
PCP Primary Control Program
Basically a PrimerIntroduction of JCL-(JOB Control Language)(Became obsolete 1n1969
No MultiprogrammingNo PriorityNo SpoolingVery unreliable
1966 MFT Multi-programming with
Fixed number of Tasks
Limited multi-programmingSmall improvementover PCP
Storage allocated as perrequirement (region)No. of Jobs dependsupon storage req. andavailability
1967/68 MVTMulti-programming with
Variable number of Tasks
Reliable ComprehensivefeaturesPredecessor of MVS
Fixed Number of PartitionsOne Job per PartitionFixed Partition Size
Operating Systems for
System/360
1965
8/13/2019 l1 Mfcics Mvs Student Guide
19/97
MVS
Copyright 2008 by Patni Page 14 of 97
Single Contiguous Allocation
In the earlier OSs like OS/360 PCP (Primary Control Program), which was a batch Operating System,
where there is no multiprogramming, memory is allocated to a job as follows.
Area of memory available for use by the
program
The OS occupies a portion of the memory and the remaining area of the memory is allocated to the user
program. If the program is smaller than the remaining memory, then there is some unused space in thememory, which goes waste. On the other hand the program that does not fit in memory cannot be
executed at all.
Disadvantages
The memory is not fully utilized
CPU has to wait on the job when an I/O is being performed
Some portions of the program in the memory may not be accessed at all
Hence there is a poor utilization of memory and the CPU and the job size is limited to maximum memory
available, after use by the OS.
5.3 MULTIPROGRAMMING WITH FIXED TASK (MFT)
This type of memory management is also called Static Partition Specification.
Here the size of each partition is decided at the time of installation of the OS, this remains fixed after the
OS is loaded and cannot be changed. To change the size of the partition the OS must be reinstalled,
during which the changes are incorporated.
A Partition Status Table, which is shown in the figure, is used to keep track of the use of partitions.
Operating System
Memory area used by
this program
Allocated but not used
(Wasted)
8/13/2019 l1 Mfcics Mvs Student Guide
20/97
MVS
Copyright 2008 by Patni Page 15 of 97
Partition No Size Status
1 8K In use
2 32K In use
3 32K Not in use
4 120K Not in use
5 520K Not in use
When the user gives a job, he has to specify the maximum memory needed to run it. A partition of
sufficient size is then found and assigned.
This system is satisfactory when the size of the job is almost equal to the partition size. If the size of the
job is diverse then there might be considerable wastage of memory space.
For E.g.: When a job requires 33K, then partition 4 is used (see table) resulting in a colossal waste of
around 87K. At the time of execution of this 33K job, if another job of 80K is to be submitted, assumingpartition 5 (520K size) is already in use, the new job has to wait (as it can be accommodated only in
partition 4 or 5).
5.4 MULTIPROGRAMMING WITH VARIABLE TASKS (MVT)
Thus it becomes important that the appropriate partitions are to be allocated to the appropriate Jobs
depending upon the size, so that all partitions are effectively utilized with minimum space wastage.
This is called the Dynamic Specification. This implies that the partitions are created as and when job is
processed. Here again partition status tables are used.
When a job is to be processed, then a free contiguous area at least as large as the partition desired
must be found. Second, if the area found is large than required, it must be split into allocated and
unallocated portions of the system.
Migrating from Dos to OS was a major change
VM is not very popular
Today most of the sites use MVS
Major Handicaps
Limited and inefficient spooling
No Virtual Storage
Utilities to Overcome these Handicaps
HASP - Houston Automatic Spooling Priority
Developed unofficially (self initiative) by IBM employees
Distributed free to MVT/MFT users
Became very popular
8/13/2019 l1 Mfcics Mvs Student Guide
21/97
MVS
Copyright 2008 by Patni Page 16 of 97
Eventually owned and supported by IBM
ASP - Attached Support Processor
Developed (officially) by IBM
Intended for MVT
Several mainframes can work together under single O/S (predecessor of multi-processing?)
Provided better spooling capability
Relatively less takers
System 370
Announced in early 70s
Supported Virtual Storage
New Operating Systems OS/VS were introduced
OS/VS1 (Virtual System 1) - adopted from MFT
OS/VS2 (Virtual System 2)
Version SVS - Single Virtual Storage
Adopted from MVT (1972)
Version MVS - Multiple Virtual Storage Completely Rewritten (1974)
HASP and ASP were migrated to OS/VS2 under the names JES2 and JES3
MVS and its derivatives are the mainstay of IBM O/S now
8/13/2019 l1 Mfcics Mvs Student Guide
22/97
MVS
Copyright 2008 by Patni Page 17 of 97
1974 OS MVS/SP1 Multiple Virtual Storage
/VS2 System/37024 bit addressability
Greater reliability /
integrity / performance
Virtual storage limitationof 16MB - A serious
handicap for CICS
1983
Processors :
308x, 3090, 4381
1988
MVS MVS/SP3 Multiple Virtual Storage
/ESA Enterprise Systems ArchitectureESA/370
Processors :
ES/3090 E and S Models and later
4381 Models 90E, 92E, 93E and later
1990MVS MVS/SP4 Multiple Virtual Storage
/ESA Enterprise Systems ArchitectureESA/390
Processors :
ES/9000, ES/3090-9000T
ES/3090 J Models
32 bit addressability
Virtual storage of 2GB
Increased maximum number
of channels and Devices
Virtual storage of 16 Terra
Bytes
Virtual storage of 16 Terra
Bytes
MVS/XA
8/13/2019 l1 Mfcics Mvs Student Guide
23/97
MVS
Copyright 2008 by Patni Page 18 of 97
Input-Output Management
Problem: - Application should not worry about device characteristics. I/O device speed is 100 times
slower than CPU.
Solution: Let all I/O be handled by a specialized system-I/O Subsystem
2) I/O operation
P1
P2
P3
P1
Virtual Memory
Real Memory
File
Auxiliary Device
swapped out
swapped in I/O
Subsystem
OS
How is to be done is decided byI/O subsystem
Tells What to do
P2
8/13/2019 l1 Mfcics Mvs Student Guide
24/97
MVS
Copyright 2008 by Patni Page 19 of 97
5.5 SYSTEM 370 I/O ARCHITECTURE
Channel 0
Channel 1
Channel 2
Channel 3
Channel 4
Channel 5
Channel 6
Channel 7
Main
Storage
CP
U
8/13/2019 l1 Mfcics Mvs Student Guide
25/97
MVS
Copyright 2008 by Patni Page 20 of 97
STORAGE
CP CP
Channels
Devices
Channels
Provide paths between the processor & I/O devices
3090 processors can have a maximum of128 channels
A channel itself is a computer & executes I/O instructions called channel commands
I/O devices are connected to channels through an intermediate device called Control Unit.
Each channel can have up to 8 control units.
Control Unit
These are DASD units, can be connected to common control unit, and called String Controller.
String Controller can be connected to a channel directly or indirectly
A control unit called Storage Control connects string controllers to a channel.
8/13/2019 l1 Mfcics Mvs Student Guide
26/97
MVS
Copyright 2008 by Patni Page 21 of 97
6 KEY TERMINOLOGY
6.1 CACHE MEMORY
High speed memory buffer (faster than main memory)
Operates between CPU and main memory
Used to store frequently accessed storage locations (instructions)
Usually available on all processors
6.2 CHANNELS
Device Management Concept - Unique to IBM
Provides access path between CPU and I/O devices (DMA)
Up to eight control units can be connected to one channel
Up to eight I/O devices can be connected to one control unit
A channel is a small computer in itself with a set of instructions (Channel commands)
Channel controls the I/O device operations independent of CPU
Cannel processing can overlap CPU processing - improved performance
6.3 CHANNEL - I/O DEVICE CONNECTIVITY
Parallel architecture i.e. all bits of a byte are transmitted simultaneously Information transfer is in unit of two bytes
Sixteen data wires and additional control wires are required
Maximum length of 120 meters (400 feet)
Data speed of 4.5mbps
Use of copper results in heavy, expensive cabling
6.4 I/O DEVICES
Unit Record Devices - Each record is a single physical unit
Card Devices (now obsolete): Readers / Punches / Reader and Punches Printer
Impact Printers - 600 to 2000 LPM
Non-Impact Printers - 3800 sub-system, 20,000 LPM
Built-in control units for each device
Directly attached to channel
Magnetic Tape
High volume storage
8/13/2019 l1 Mfcics Mvs Student Guide
27/97
MVS
Copyright 2008 by Patni Page 22 of 97
Sequential processing
Normally used as back-up device
Also used for physical transfer of data
4 to 8 tape drives are connected to one control unit
DASD - Direct Access Storage Device
IBMs official name for Disk Non-removable - offers better reliability and are faster
Volume is a specific unit of storage. E.g. Disk pack or DASD, Tape
A group of DASDs of same type are connected together to form a String and are connected to a
string controller
Multiple string controller are connected to a storage controller
Storage controller is connected to channel
DASD unit
channelconnection
storage control
string controller1
string controller1
(1 - 128)
(1 - 8)
32
32
6.5 DATA COMMUNICATION NETWORK
Allows local and remote terminals access to the computer systems.
Components of data communication Host Computer - System/370 processor
Communications Controller - Attached to the channel
Devices (terminals and printers) are connected to the terminal controller (also known as
cluster controller)
Terminal controller is connected to communications controller
Terminal Controller managing Local terminals / printers can be connected directly to the channel
Modems and telecommunication lines (telephone line, Satellite Link)
Remote terminals / printers are connected to terminal controller (at local site)
8/13/2019 l1 Mfcics Mvs Student Guide
28/97
MVS
Copyright 2008 by Patni Page 23 of 97
Terminal controller is connected to modem
Modem is connected to telecommunications line
At the receiving end telecommunications line is connected to modem
Modem is connected to communication controller
3270 Information Display System
Sub-system of terminals, printers and controllers connected to Host computer
Locally through communications controller or directly to channel
Remotely through communications controller, modem and telecommunications line
A typical 3270 terminal controller (3274) controls up to 32 terminals / printers
Emulator programs (Shine Link, Erma Link) allow computers (typically PCs) to mimic 3270
devices
These are useful since they allow upload / download of data between MF and PC
6.6 DATA COMMUNICATION EQUIPMENT
Data Communication equipment lets an installation create a data communication network that lets users
at local terminals & remote terminals to access computer system
8/13/2019 l1 Mfcics Mvs Student Guide
29/97
MVS
Copyright 2008 by Patni Page 24 of 97
System/370 processor
channel
Host System
communication controller
modem modem
modem
terminal controller
terminalprinter
modem
terminal controller
terminalprinter
TelecommunicationLines
Remote System Remote System
8/13/2019 l1 Mfcics Mvs Student Guide
30/97
MVS
Copyright 2008 by Patni Page 25 of 97
At the center of the network is the host system, a system/370 processor
The control unit that attaches to the host systems channels is called a communication controller
It manages the communication function
Necessary to connect remote terminal system
Via modems and telecommunication lines
A modem is a device that translates digital signals from the computer equipment at the sending end into
audio signal that are transmitted over a telecommunication line, which can be telephone line, a satellite
link or some other type of connection. At the receiving end of the line, another modem converts those
audio signals back into digital signal.
8/13/2019 l1 Mfcics Mvs Student Guide
31/97
MVS
Copyright 2008 by Patni Page 26 of 97
7 TYPICAL MAINFRAME CONFIGURATION
With a variety of IBM Mainframe Processors and I/O devices, we can have a number of Mainframe
configurations. So one Mainframe configuration is different from the other.
7.1 A SMALL MAINFRAME CONFIGURATION
3420 Tape Drives (4) 3350 DASDs (24)
4381 Processor 8M
3279 Operator
Consoles (4)
Local 3270 System
Modems (3)
Remote 3270 Systems
3211 Printers
(2)
8/13/2019 l1 Mfcics Mvs Student Guide
32/97
8/13/2019 l1 Mfcics Mvs Student Guide
33/97
MVS
Copyright 2008 by Patni Page 28 of 97
Multiple Virtual Storage
MVS uses real storage and areas of DASD storage, called page-data sets, in combination to
simulate several virtual storage address spaces
Each address space provides an entire 16M range of addresses (2GB if XA is used)
As a result, to refer to a particular byte of Virtual Storage under MVS, we need to know two
things: (1) the address, which identifies a specific byte of storage within a 16M or 2GB address
space, and (2) the address space to which the address applies
When multiple virtual storages are used, the total amount of virtual storage that can be
simulated is almost limitless because MVS can create an almost unlimited number of address
spaces
However the size of an address (24 bits or 31 bits) still limits the size of each address space to
16MB or 2GB and also various factors such as the speed of the processor and the amount of
real storage installed effectively limit the number of address spaces that can be provided
A CPU can access only one address space at a time
When CPU is accessing instructions and data from a particular address space, that address
space is said to be in control of the CPU. So the program in that address space will continue to
execute until MVS intervenes and places the CPU under the control of another address space
Multiple Virtual Storage is how MVS implements multiprogramming. Each batch or time-sharing
user is given a separate address space. So each job or user can access up to 16M or 2GB of
virtual storage independent of any other job or user on the system
8/13/2019 l1 Mfcics Mvs Student Guide
34/97
MVS
Copyright 2008 by Patni Page 29 of 97
PAGING
The total amount of virtual storage that can be used under MVS is almost unlimited. As a
result, the amount of real storage present on a particular machine is nearly always less than
the amount of virtual storage being used
To provide for the larger amount of virtual storage MVS treats DASD storage as an
extension of real storage
MVS divides virtual storage into 4K sections called pages
Data is transferred between real and DASD storage one page at a time
As a result, real storage is divided into 4K sections called page frames, each of which can
hold one page of virtual storage
Similarly, the DASD areas used for virtual storage, called page data sets, are divided into 4Kpage slots, each of which holds one page of virtual storage
When a program refers to a storage location that isnt in real storage, a page fault occurs.
When there is a page fault, MVS locates the page that contains the needed data on DASD
and transfers it into real storage. This operation is called a page-in
Sometimes the new page can overlay data in a real storage page frame
In other cases, data in a page frame has to be moved to a page data set to make room for
the new page. This is called page-out
So the process of bringing a new page into real storage is called paging
At any given moment, page frames in real storage contain pages from more than one
address space
MVS keeps track of what pages are in what page frames by maintaining tables that reflects
the status of real storage and of each address space. The real storage frames that contain
those tables cannot be paged out; they must always remain in real storage as long as their
associated address spaces are active
Swapping
Depending on the amount of real storage a system has and the types of jobs it is processing,
MVS can efficiently multiprogram only a certain number of jobs at once
So using a process called swapping, MVS periodically transfers entire address spaces in and
out of virtual storage, so they are temporarily unavailable for processing
8/13/2019 l1 Mfcics Mvs Student Guide
35/97
8/13/2019 l1 Mfcics Mvs Student Guide
36/97
MVS
Copyright 2008 by Patni Page 31 of 97
7.6 VIRTUAL STORAGE LAYOUT
Local System QueueArea (LSQA)
Scheduler Work Area
User Region
System
System Queue
(SQA)
Pageable Link Pack(PLPA)
Common Service(CSA)
Users Private
Space
Nucleus
CommonArea
PrivateArea
SystemArea
Each Virtual Storage Address Space consists of a System Area, a Private Area and a Common Area.
System Area
It contains the nucleus load module, page frame table entries. Data blocks for system libraries
and so many other things
Nucleus and other contents of the System Area make up the resident part of the MVS system
control program
Its contents are mapped one for one into real storage frames at initialization time.
The size of System Area does not change once it is initialized
Common Area
It contains parts of the system control program, control blocks, tables and data areas
8/13/2019 l1 Mfcics Mvs Student Guide
37/97
MVS
Copyright 2008 by Patni Page 32 of 97
Private Area
The Private Area is made up of: Scheduler Work Area (SWA) System Region User Region
The user region is the space within Private Area that is available for running the users program
Scheduler Work Area
SWA contain control blocks that exist from task initiation to task termination
The information in SWA is created when a job is interpreted and used during job initiation and
execution
It is pageable and swappable
8/13/2019 l1 Mfcics Mvs Student Guide
38/97
MVS
Copyright 2008 by Patni Page 33 of 97
8 MVS FUNCTIONS
8.1 DATA MANAGEMENT OVERVIEW
Anything that needs to be stored and accessed on user request is a Data for MVS
8.2 TYPES OF DATA
Business Data
Database Indexed Files Flat Files
Application Components
Source Programs Executable Programs Screen Definitions Record Layout Definitions Command File Scripts
MVS (System Data)
O/S program User Information (ID, Password, Profile) Access Permissions
Temporary Data
O/S Built Data (e.g. task queues, segment table, page table) Spooled Output Work Files for Sort
8.3 DATASET ORGANIZATION
Dataset organization fall into two categories under MVS: VSAM and NON-VSAM
Non-VSAM provides four basic ways of organizing data stored in datasets
Physical Sequential
Indexed Sequential
Direct
8/13/2019 l1 Mfcics Mvs Student Guide
39/97
MVS
Copyright 2008 by Patni Page 34 of 97
Partitioned
VSAM provides four basic ways of organizing data stored in datasets
Entry Sequence Dataset - ESDS
Key Sequence Dataset - KSDS
Relative Record Dataset - RRDS
Linear Dataset - LDS
8.4 NON-VSAM DATASETS ORGANIZATION
Physical Sequential
Records are stored one after another in consecutive sequence
Can reside on just any type of I/O devices Appropriate when files records dont have to be retrieved at random
Indexed Sequential
Includes an index, which relates key field values to the location of their corresponding data
records
Direct
Permits random access of records
It doesnt use an index
To access record, the disk location address (By hashing) of that record to be specified
Partitioned
Consists of one or more members
Each of these members can be processed, as if it were a separate physical sequential file.
Names of members in a Partitioned dataset (PDS) is stored in a directory
8.5 DATASET ORGANIZATION
Partitioned Data Set - Salient Features
Commonly referred as PDS
Also known as Library
Used to store application components
PDS is divided into one or many members
8/13/2019 l1 Mfcics Mvs Student Guide
40/97
MVS
Copyright 2008 by Patni Page 35 of 97
Member name can be up to 8 characters long
There is no extension for member
Each member can be processed as an individual unit
Entire PDS can be processed as one unit
Each PDS contains a directory
Directory has an entry for each member in a PDS
- PDS Examples:
PAYROLL.TEST.SOURCE, PAYROLL.PROD.SOURCE,
INV.TEST.LOADLIB
Normally consists of 3 qualifiers called as
- PROJECT
- GROUP
- TYPE
Personal PDS start with high level qualifier as User ID
E.g. DA00T23.NEW.SOURCE
Member Name Examples
PAB0017, PAB0105, PAC0021 etc.
8/13/2019 l1 Mfcics Mvs Student Guide
41/97
8/13/2019 l1 Mfcics Mvs Student Guide
42/97
MVS
Copyright 2008 by Patni Page 37 of 97
First character of the qualifier must be alpha or national character
Last character of data set must not be .
First qualifier is called high-level qualifier
High-level qualifier has special significance
E.g. Data Set name PAYROLL.P9710.TRAN
Has three qualifiers
High-level qualifier is PAYROLL
Total length is 18
Dataset Tracking
Data Set Tracking Mechanisms
Label
Catalog
Label
DASD Label
Each DASD is labeled; called Volume Label (VOL1 label) DASD label contains Volume Serial Number and address of the VTOC file
Volume Serial Number
Each DASD is identified by a unique number, Volume Serial Number vol-ser
Vol Ser must be specified for accessing the Data Set (which is not cataloged)
Data Set Label
Each data set is a label record called File label or Data Set Control Block (DSCB) DSCB describes data sets name, its DASD location and other details
VTOC
VTOC - Volume Table Of Contents is a special file for each DASD VTOC contains the file labels for all data sets on the volume
8.9 MVS DATASETS
Label Processing
When a dataset is stored on disk or tape, MVS identifies it with special records called labels
There are 2 types of DASD labels: Volume, File Label
All DASD volumes must contain a volume label, often called a VOL1 label. This label is always
in the same place on a disk volume: the 3rd record of track zeros in cylinder zero
Volume label has 2 important functions
8/13/2019 l1 Mfcics Mvs Student Guide
43/97
MVS
Copyright 2008 by Patni Page 38 of 97
It identifies the volume by providing a volume serial no: VOL-SER. Every DASD volume must
have a unique six-characters VOL=SER
It contains the disk address of the VTOC
The VTOC (Volume Table of Contents) is a special file that contains the file labels for the
datasets on the volume
VTOC
VOL 1 Label
Format-4VTOC
Format-1FileA
Format-1File-B
Format-1File-C
Format-3File-B
Format-5Free Extents
Free Extents
File-A
File-B
File-C
Free Extent
File-B
Free Extent
Catalog
Obviates the need of specifying VOL SER and UNIT for the data set
Catalog Types
CVOL
VSAM
ICF (Integrated Cataloging Facility)
Catalog Features
Each MVS has only one Master Catalog and also functions as system catalog
Master Catalog is used by MVS for system data sets
User Catalog is used for user data sets
8/13/2019 l1 Mfcics Mvs Student Guide
44/97
MVS
Copyright 2008 by Patni Page 39 of 97
There can be multiple User Catalogs
Master Catalog contains one entry of each User Catalog
- VSAM data sets must be Cataloged
- Non-VSAM Data Sets may or may not be cataloged
- An Alias can be created for a Catalog
Usually, the high-level qualifier of a data set is same as the catalog name or catalog alias name
Multiple data sets can be cataloged in single user catalog
Alias helps to catalog data sets with different high-level qualifiers to be cataloged in a single
user catalog
Catalog Name VCAT.MPS800 Alias MMA2 MMA1
Data Set Name MMA2.CUSTOMER.MASTERMMA1.CUSTOMER.TRAN
8.10DATA MANAGEMENT
Data Management Functions (for Non-PDS)
Allocate
Process
- Add Records
- Modify Records
- Delete Records
De-allocate (delete)
Copy
Rename
Catalog
Additional Functions for PDS
Compress
Member Management
Create, Modify, Delete, Copy, Rename
8/13/2019 l1 Mfcics Mvs Student Guide
45/97
MVS
Copyright 2008 by Patni Page 40 of 97
How Data Management is achieved?
Interactively using MVS Commands
Executing MVS Utility Programs (batch mode)
Through Application Programs
- On-line Processing
- Batch Processing
MVS Concepts
8.11HOW DATASETS ARE ACCESSED?
Generally dataset goes through three phases when handled through program:
Allocation
Processing De-allocation
Allocation
The process of locating an existing dataset or space for a new dataset and preparing the system
control block needed to use the dataset is called Allocation
Allocation occurs at 3 levels
Unit is selected and allocated e.g. SYSALLDA-DASD, TAPE
Volume is allocated
Dataset on that volume is allocated
Processing
Processing involves 3 steps
Opening datasets
Processing I/O
Closing datasets
De-allocation
Each file is automatically de-allocated when step terminates. While de-allocating, disposition of dataset
can be decided, whether you want to retain the file or should be deleted.
8/13/2019 l1 Mfcics Mvs Student Guide
46/97
MVS
Copyright 2008 by Patni Page 41 of 97
9 JOB MANAGEMENT OVERVIEW
9.1 WHAT IS A JOB?
Simply put, job is an execution of one or more related programs in sequence
E.g. 1
A job of creating an executable module (load module) from a source program consists of compilation
and link editing a program.
Job - Salient Points
Executed in a background mode
Job details are specified using some command language
9.2 JOB MANAGEMENT FUNCTIONS
Receive the job into operating system
Schedule the job for processing by O/S
Execute the Job
Process the output
9.3 STAGES OF JOB
1. Job Preparation
User keys-in commands using Editor
Save as a member in PDS
2. Job Scheduling
Initiated using TSO SUBMIT command Not necessarily on FIFO basis
Prioritization is implemented using concept of class and priority code
3. Job Execution
4. End of execution (normal, erroneous)
Intimate the user
8/13/2019 l1 Mfcics Mvs Student Guide
47/97
MVS
Copyright 2008 by Patni Page 42 of 97
Job log management
Job output management
Printer output
Data set output
Erroneous Termination of job Type of execution errors
Incorrect commands (command syntax errors)
Required resources (Data Sets, Program Library, Program Load Module) not available
Violation of access permissions for data sets, program load module etc
Mismatch in data set status; as required by job and as it actually exists e.g. a create is issued for
a data set while data set which already exists
Program errors
Mismatch for Data set - Between program definition and actual characteristics
Infinite loop
Data Type mismatch - numeric variable contains non-numeric data
Any abnormal termination of program is called Abend
9.4 JOB MANAGEMENT
Definitions
JOB - Is an execution of one or more related programs in sequence
JOB STEP - Each program to be executed by a Job is called a job step
JCL (Job Control Language) - Is a set of control statements that provide the specifications necessary to
process a job
JES (Job Entry Subsystem):
Meant for job entry into system, also for job returning after completion
Shares the load on the operating system
Takes care of all inputs and outputs
Do simple basic syntax checking
Resource Initialization
Creation of address space
It is also known as Job Scheduler
Classified into
JES2-design for uni-processor environment
JES3-design for multiprocessing environment (Decided at the time of system initialization)
8/13/2019 l1 Mfcics Mvs Student Guide
48/97
8/13/2019 l1 Mfcics Mvs Student Guide
49/97
MVS
Copyright 2008 by Patni Page 44 of 97
If two or more jobs have same class & priority, they are executed in the order in which they are
submitted.
How Job Is Executed
Once an initiator has selected job for execution, it invokes a program called the interpreter. The
interpreter's job is to examine the job information passed to it by JES and create a series of controlblocks in the SWA, a part of the address spaces private area. Among other things, these control blocks
describes all of the datasets the job needs. Now initiator goes through 3 phases for each step of job.
Allocation (required resources are allocated). Processing (region is created and program is loaded and
executed). De-allocation (resources are released). This continues until there are no more job steps to
process. This continues until there are no more job steps to process. Then, the initiator releases the job
and searches the spool again for another job from the proper class to execute. As a users program to
execute, it can retrieve data that was included as part of job stream and stores in the JES spool
JES SPOOL INITIATOR
Job
JCL SYSIN
SYSOUT QUEUE O/P DATA INTERPRETORPROGRAMEXECUTIONSYSOUT
How The Jobs Output Is Processed
Like Jobs, SYSOUT data is assigned an output class that determines how the output will be handled
Common O/P classes are:
A - Printer
B - Card Punch O/P
X - Held O/P
[Held O/P stays on the sysout queue indefinitely; Usually, O/P is held so that it can be examined
from a TSO terminal]
How A Job Is Purged
8/13/2019 l1 Mfcics Mvs Student Guide
50/97
MVS
Copyright 2008 by Patni Page 45 of 97
After the jobs output has been processed, the job is purged from the system, i.e. JES spool
space, the job used, is freed so it can be used by other jobs and any JES control blocks
associated with the job are deleted
Once a job has been purged, JES no longer knows of its existence
8/13/2019 l1 Mfcics Mvs Student Guide
51/97
MVS
Copyright 2008 by Patni Page 46 of 97
10 DATASET ALLOCATION AND JOB STEP EXECUTION
SWA
control block
System Region
Allocation
Initiator
SWA
control block
System Region
Initiator
User Program
SWAcontrol block
System Region
Interpreter
Initiator
After initiator selects a job forexecution, it invokes theinterpreter, which builds therequired control blocks in theaddress spaces SWA.
For each job step, the initiatorinvokes allocation routines toallocate the units, volumes anddatasets required by the jobstep
After resource allocation, theinitiator creates a user region,loads the user program into itand transfers control to userprogram
8/13/2019 l1 Mfcics Mvs Student Guide
52/97
MVS
Copyright 2008 by Patni Page 47 of 97
SWA CONTROL BLOCK
INITIATOR
SYSTEM REGION
UNALLOCATION
When the user program completes, the initiator invokes Unallocation routine to Deallocate the resources
used by the job step
8/13/2019 l1 Mfcics Mvs Student Guide
53/97
MVS
Copyright 2008 by Patni Page 48 of 97
11 MVS TOOLS OVERVIEW
Tools are a set of sub-systems and facilities that;
Implement MVS functions
Are directly used by MVS user
These are essentially Software programs; system programs
Interactive Processing Tools (TSO - Time Sharing Option)
Used by the terminal user to invoke MVS facilities interactively
TSO internally treats each terminal user as a Job
Job Stream is created when terminal user logs in Each terminal user is given a separate address space
ISPF - Interactive System Productive Facility
Runs as part of TSO
Takes advantage of full screen (24 x 80) capability of 3270 terminals
Panels are provided for terminal users for issuing commands
Key Functions Implemented Using ISPF
Editor - Program Sources, Job Commands Data Management - PDS and Physical Sequential Data Set Management
Job Processing - Initiate Job, Check job log
Miscellaneous
PDF - Program Development Facility is Part of ISPF
11.1JOB MANAGEMENT TOOLS
Job Control Language (JCL)
Used to code job commands
Job Entry System (JES)
Manages the job before and after execution; receive, schedule, process output
Base Control Program (BCP)
Manages the job during execution
Simultaneous Peripheral Operations on-line (SPOOL)
Used for staging of input and output
8/13/2019 l1 Mfcics Mvs Student Guide
54/97
MVS
Copyright 2008 by Patni Page 49 of 97
11.2WHY AND WHAT OF JCL?
JCL is the most dreaded word for newcomer to IBM world
Why JCL?
Since the job is executed in background, without user interaction, all information required for the
execution must be supplied in advance
JCL is used to specify this control information
The most common information supplied through JCL is:
- To whom the job belongs (which user id)?
- What is the program / utility that is to be executed?
- Where (in which library / PDS) to find the load module of the program or utility?
- Where (which DASD volume / catalog, what data set name) to find the input data files for the
program / utility?
- Where should (which DASD volume, what data set name) the output files be created?
- The printer output should be directed to which printer?
What is JCL?
Stands for Job Control Language Connotation is; set for job commands stored as a MEMBER in a PDS e.g. JCL to execute a batch
program, JCL to compile and link a COBOL program, JCL to allocate a VSAM data set, JCL toSORT and MERGE two Physical Sequential Data Sets
Thus, JCL is nothing but a set of commands
- User keys-in commands using a editor
- Saves as PDS Member e.g. PAYROLL.TEST.JCL(PROG1JCL)
Good grasp of JCL is a must to be a versatile IBM programmer
11.3JES - JOB ENTRY SYSTEM
Introduction
8/13/2019 l1 Mfcics Mvs Student Guide
55/97
MVS
Copyright 2008 by Patni Page 50 of 97
Two versions of JES; JES2/JES3
- JES2 is primarily for single processor systems
- JES3 is for multiple processor systems
Each MVS system uses either JES2 or JES3
JES3 has additional scheduler functions than JES2 (e.g. schedule job at specific time of the day,
interdependent job scheduling)
11.4MVS TOOLS OVERVIEW
How Job Enters the System?
Job can enter the system from local or remote card readers (now obsolete) By starting a cataloged JCL procedure (e.g. when user logs in, a predefined set of commands
are executed as a batch job. These commands are stored as cataloged JCL procedure)
By interactive users thru SUBMIT command. Users can create a PDS member in which
commands are specified. On issuing SUBMIT command these are executed as a job.
We will focus on third approach
Input
On SUBMIT, internal reader reads the JCL and creates an input stream
JES2 reads the input stream, assigns a Job Number and places input stream in SPOOL data set(a message is sent to TSO user about the job number)
Job is put in the conversion queue
Conversion
Converter program analyzes JCL statements
Converts into converter / interpreter text
Checks for Syntax errors
- If any error, Job is queued for output processing
- If no error, Job is queued for processing
Processing
Selection based on job class and priority
Selected job is passed to Initiator
Initiator invokes Interpreter
8/13/2019 l1 Mfcics Mvs Student Guide
56/97
MVS
Copyright 2008 by Patni Page 51 of 97
Interpreter builds control blocks from converter / interpreter text in a Scheduler Work Area
(SWA)
- SWA is part of address spaces private area
- Control blacks describe the data sets required by the job
Initiator allocates resources required by the Job
- Initiator starts the program to be executed
- Builds the user region
- Loads the program in the user region
- Transfers control to the program
On completion of the program execution, initiator de-allocates the resources
The process of allocation / execution and de-allocation is repeated for each job step
8/13/2019 l1 Mfcics Mvs Student Guide
57/97
MVS
Copyright 2008 by Patni Page 52 of 97
Initiator Characteristics
Each initiator can handle one job at a time
There can be multiple initiators
Each initiator has a job class associated with it
System Operators can control the number of initiators and the class/es associated with each
initiatorInput Data
Input data to the users program can be specified in the job
Called in-stream data or SYSIN data
SYSIN data is read and stored in JES spool
SYSIN data is treated like a data coming from card reader
Output
Management of System Messages, User Data Sets that need to be Printed / Punched
Organized by output class and device set-up requirements User s program can produce output data that is stored in a JES spool; called SYSOUT data
Each SYSOUT data is assigned an output class
Output class indicates the printer selection
Held Output
- Special class (usually Z) is assigned to hold the output
- Held output remains in the SYSOUT indefinitely
- Usually used to verify before printing
- User can change the class and thus release the held output
Hard-Copy
Local or remote processing
Device Selection
Queue the output for print /punch
Purge
Release SPOOL and Job Queue space
Intimate TSO user about job completion
Job Output
Output is produced at each stage job processing
Includes output produced by;
8/13/2019 l1 Mfcics Mvs Student Guide
58/97
MVS
Copyright 2008 by Patni Page 53 of 97
- JES
- MVS
- Users program where SYSOUT is allocated as output device
Job output is available to user (you can see it dynamically) It can be viewed using ISPF
11.5COMPONENTS OF JOB OUTPUT
Component 1- Separator Page
First and last page of job output
Inserted by JES
Helps operator the segregate the job outputs when directed to printer
Component 2 part I Job Log
Messages produced by JES
Also displayed on operators console
If the job Abends, error messages are logged in Job Log
Component 2 part II Job Statistics
Summary information of system resources used by the job e.g.;
Number of JCL cards
Spool usage
Execution time
Component 3 - JCL Listing
List of JCL that was processed for the job
Should be same as what user has created
Component 4 - Message Log
Messages regarding job execution
Messages produced by MVS Includes details of
Resource Allocation
Program Execution
Resource De-allocation
Consists of Message label and message text
Message label starting with IEF indicates a MVS message
Installation specific messages
8/13/2019 l1 Mfcics Mvs Student Guide
59/97
MVS
Copyright 2008 by Patni Page 54 of 97
Component 5 - SYSOUT
Separate sub-component for each SYSOUT allocation
Each SYSOUT can have different characteristics e.g. class, record length etc.
11.6VTAM VIRTUAL TELECOMMUNICATIONS ACCESS METHOD
Telecommunications (TC) Access Method
Required to support terminal devices
Part of SNA System Network Architecture
Provides centralized control over all terminals attached to the system
VTAM Application programs (e.g. TSO, CICS IMS-DC) communicate with terminal devices via
VTAM
8/13/2019 l1 Mfcics Mvs Student Guide
60/97
MVS
Copyright 2008 by Patni Page 55 of 97
11.7CICS CUSTOMER INFORMATION CONTROL PROGRAM (OPTIONAL
COMPONENT)
Interactive applications are developed using CICS
CICS is a VTAM application program
Works with VTAM to support on-line functions
CICS implements multi-programming within itself
Multiple programs which are part of same application are executed within CICS address space
CICS selects one program at a time for execution
CICS itself is multi-programmed by MVS along with other programs
11.8DB2 - DATABASE 2 (OPTIONAL COMPONENT)
Database Management System
Relational Implementation
11.9RACF - RESOURCE ACCESS CONTROL FACILITY
Comprehensive Security Package
Though optional used by most of the installations
Users and Resources (e.g. Data Sets) are identified to RACF Whenever user tries to access a resource the security is checked by RACF
RACF is a set of routines
Invoked as and when required
11.10SMF - SYSTEM MANAGEMENT FACILITY
Keeps track of system usage
CPU, DASD I/O, Records Printed etc.
Data collected when job is executed
Stored in a special data sets
Used for billing
8/13/2019 l1 Mfcics Mvs Student Guide
61/97
8/13/2019 l1 Mfcics Mvs Student Guide
62/97
MVS
Copyright 2008 by Patni Page 57 of 97
List Datasets
Print Datasets
Copy Datasets
Delete Datasets
Rename Datasets
List Catalog Entries
List VTOC Entries Use AMS Services
Program Development functions
Create program.
Edit program.
Compile program.
Link edit a program.
View output.
Route output to a printer
Batch job functions
Submit Jobs
Monitor job
View output
Route output
Help
Help on TSO commands can be obtained by typing, HELP at the READY prompt.
8/13/2019 l1 Mfcics Mvs Student Guide
63/97
MVS
Copyright 2008 by Patni Page 58 of 97
12 INTERACTIVE SYSTEM PRODUCTIVITY FACILITY (ISPF)
Access to ISPF is gained by Keying ISPF at the READY prompt
This is done as default in the auto executed Clist at startup When this is entered you get the Primary Options Menu
12.1PRIMARY OPTIONS MENU
----------------------- ISPF/PDF PRIMARY OPTION MENU ------------------------
OPTION ===> pfshow USERID - DA0034T
0 ISPF PARMS - Specify terminal and user parameters TIME - 06:58
1 BROWSE - Display source data or output listings TERMINAL - 32782 EDIT - Create or change source data PF KEYS - 12
3 UTILITIES - Perform utility functions
4 FOREGROUND - Invoke language processors in foreground
5 BATCH - Submit job for language processing
6 COMMAND - Enter TSO Command, CLIST, or REXX exec
7 DIALOG TEST - Perform dialog testing
8 LM UTILITIES - Perform library administrator utility functions
9 IBM PRODUCTS - Additional IBM program development products
10 SCLM - Software Configuration and Library Manager
C CHANGES - Display summary of changes for this release
T TUTORIAL - Display information about ISPF/PDF
X EXIT - Terminate ISPF using log and list defaultsD DATACENTER - Perform Datacenter Defined Functions
S SDSF - Spool Display and Search Facility
U USER - Perform User Defined Functions
F1=HELP F2=SPLIT F3=END F4=RETURN F5=RFIND F6=RCHANGE
F7=UP F8=DOWN F9=SWAP F10=LEFT F11=RIGHT F12=RETRIEVE
8/13/2019 l1 Mfcics Mvs Student Guide
64/97
MVS
Copyright 2008 by Patni Page 59 of 97
PA/PF Key Map
PF1 ===> HELP Enter the Tutorial
PF2 ===> SPLIT Enter Split Screen Mode
PF3 ===> END Terminate the current operation
PF4 ===> RETURN Return to primary options menu
PF5 ===> RFIND Repeat find
PF6 ===> RCHANGE Repeat Change
PF7 ===> UP Move screen window up
PF8 ===> DOWN Move screen window down
PF9 ===> SWAP Activate the other logical screen in split screen mode
PF10 ===> LEFT Scroll screen left
PF11 ===> RIGHT Scroll screen right
PF12 ===> RETRIEVE Retrieve last command
PA1 ===> ATTENTION Interrupt Current operation
PA2 ==> RESHOW Redisplay the current screen
PF1 - PF12 Keys may be duplicated from PF13 to PF24 in 24 key mode.
Split Screen Mode and Tutorial (Help)
Entered by keying SPLIT on the command line
Or by positioning the cursor where required and pressing PF2
Context Sensitive help can be accessed by typing help on the command line or through the PF1 key
List and Log files
Some ISPF commands generate outputs. Printed output like this is collected and stored in a special
dataset call list dataset
Whether the list dataset is to be retained, printed and/or deleted can be specified as a default in the
setup panels
The ISPF operations done are recorded in a Log dataset. The disposition can be specified in the
defaults panel
User Profile
ISPF maintains a user profile
This profile contains default values of various entry panels.
Exiting ISPF
8/13/2019 l1 Mfcics Mvs Student Guide
65/97
8/13/2019 l1 Mfcics Mvs Student Guide
66/97
8/13/2019 l1 Mfcics Mvs Student Guide
67/97
MVS
Copyright 2008 by Patni Page 62 of 97
12.5 BROWSE COMMANDS
Cols - for displaying Columns
Scroll up, down, left right with PF7, PF8, PF10 and PF11 respectively. Set Scroll amount to CRSR, HALF, PAGE, n lines, max, DATA
Scroll by n lines, to top or bottom
Define/LOCATE {line number}/label.
FIND string {NEXT/PREV/FIRST/LAST/ALL}.
PF5 for repeat find and use of &.
Use of PF12 to recall last command.
Terminate Browse with PF3 Key.
FIND string {NEXT/PREV/FIRST/LAST/ALL} {CHAR/PREFIX/SUFFIX/WORD} col-1 col-2
Column limitation search
T text - for case insensitive search
X hex-string for a hex search
12.6 EDITING DATASETS (OPTION 2)
The Primary Editor entry is similar to that for Browse as regards concatenating datasets and dataset
selection
Labels can be defined as in browse but may be entered as line commands
Error messages may be removed by typing RESET on the command line
12.7 STANDARD EDITING COMMANDS
I/In Insert 1 or n lines.
D(n) Delete line or n lines.
DD Delete the block marked by the 2 DD line commands.
R(n) Repeat 1 or n lines.
RR Repeat the block marked by the 2 RR line commands.
C(n) Copy 1 or n lines.
CC Copy the block marked between the 2 CC line commands.
M(n) Move 1 or n lines.MM Move the block marked between the 2 CC line commands.
A(n) Copy or Move lines 1 or n times after this l ine.
B(n) Copy or Move lines 1 or n times before this line.
Creating datasets and exiting editor
8/13/2019 l1 Mfcics Mvs Student Guide
68/97
MVS
Copyright 2008 by Patni Page 63 of 97
To create a new member specify non-existent member name in the current PDS.
You can quit the editor without saving changes by the CANCEL command.
You can update the dataset with the save command
You can exit with implicit save with the END command or PF3 key.
12.8 EDIT PROFILES
Edit profiles control editing options
Normally editing a new dataset uses the default profile - the dataset type
To display the edit profile type PROFILE on the command line in the editor
To remove it from the screen type RESET.
This gives you a display as follows.
8/13/2019 l1 Mfcics Mvs Student Guide
69/97
MVS
Copyright 2008 by Patni Page 64 of 97
EDIT ---- DA0034T.TRG.JCL(JCL1) - 01.27 ---------------------- COLUMNS 001 072
COMMAND ===> SCROLL ===> CSR
****** ***************************** TOP OF DATA ******************************
=PROF> ....STD (FIXED - 150)....RECOVERY OFF....NUMBER ON STD..................
=PROF> ....CAPS ON....HEX OFF....NULLS ON STD....TABS ON STD....SETUNDO OFF....
=PROF> ....AUTOSAVE ON....AUTONUM OFF....AUTOLIST OFF....STATS ON..............
=PROF> ....PROFILE UNLOCK....IMACRO NONE....PACK OFF....NOTE ON................
=BNDS>
=COLS> ----+----1----+----2----+----3----+----4----+----5----+----6----+----7--
000100 //DA0034TA JOB LA2719,'PARAG',NOTIFY=DA0034T,
000200 // CLASS=A,MSGCLASS=X
000300 //*
000400 //COBRUN EXEC PGM=PROG11
000500 //STEPLIB DD DSN=DA0034T.TRG.LNK,DISP=SHR
000510 //*STEPLIB DD DSN=DA0034T.TRG.COBOL2,DISP=SHR
000600 //INVMAS DD DSN=DA0034T.TRG.INVMAS,DISP=SHR
000700 //OP1 DD SYSOUT=*
000710 //*OP1 DD DSN=DA0034T.TRG.EXE7,DISP=(NEW,CATLG,CATLG),
12.9PROFILE SETTINGS
To switch to a different profile key profile
To lock a profile, at the command line key PROFILE LOCK
Any changes made to the locked profile are not saved permanently. Caps, number Pack and STATS modes are set each time you begin an edit session
To define tab stops. Key TABS on the command line and place @ on the tabs line one character
before where you would like a tab stop. On the command line, Key TABS ON/OFF
If you omit the tabbing character hardware tabbing is assumed.
Line control Commands
Nonumber/NUM OFF turns off line numbering
NUM ON turns on line numbering
AUTONUM resequence line numbers on save
RENUM resequence line numbers
NUM ON COBOL checks for valid COBOL numbering NUM ON STD checks for standard line numbering
UNNUM removes line numbering.
12.10EDIT MODES
8/13/2019 l1 Mfcics Mvs Student Guide
70/97
8/13/2019 l1 Mfcics Mvs Student Guide
71/97
MVS
Copyright 2008 by Patni Page 66 of 97
Data shifts
Does not drop blank characters
Does not combine words by drooping spaces
Does not delete spaces within apostrophes
COPY [member] [AFTER/BEFORE label]
MOVE [member] [AFTER/BEFORE label] CREATE [member] [range]
REPLACE [member] [range]
Edit member-name to edit recursively
12.13 UTILITIES MENU
Option 3
------------------------- UTILITY SELECTION MENU ----------------------------
OPTION ===>
1 LIBRARY - Compress or print data set. Print index listing.
Print, rename, delete, browse, or edit members
2 DATASET - Allocate, rename, delete, catalog, uncatalog, or
display information of an entire data set
3 MOVE/COPY - Move, copy, or promote members or data sets
4 DSLIST - Print or display (to process) list of data set names
Print or display VTOC information
5 RESET - Reset statistics for members of ISPF library
6 HARDCOPY - Initiate hardcopy output
8 OUTLIST - Display, delete, or print held job output9 COMMANDS - Create/change an application command table
10 CONVERT - Convert old format menus/messages to new format
11 FORMAT - Format definition for formatted data Edit/Browse
12 SUPERC - Compare data sets (Standard Dialog)
13 SUPERCE - Compare data sets and Search-for strings (Extended Dialog)
14 SEARCH-FOR - Search data sets for strings of data (Standard Dialog)
8/13/2019 l1 Mfcics Mvs Student Guide
72/97
MVS
Copyright 2008 by Patni Page 67 of 97
12.14 LIBRARY UTILITY
Option 3.1
---------------------------- LIBRARY UTILITY --------------------------------
OPTION ===>
blank - Display member list B - Browse member
C - Compress data set P - Print member
X - Print index listing R - Rename member
L - Print entire data set D - Delete member
I - Data set information E - Edit member
S - Data set information (short)
ISPF LIBRARY:
PROJECT ===> DA0034T
GROUP ===> TRG ===> ===> ===>
TYPE ===> JCL
MEMBER ===> (If "P", "R", "D", "B", "E" or blank selected)NEWNAME ===> (If "R" selected)
OTHER PARTITIONED OR SEQUENTIAL DATA SET:
DATA SET NAME ===>
VOLUME SERIAL ===> (If not cataloged)
DATA SET PASSWORD ===> (If password protected)
8/13/2019 l1 Mfcics Mvs Student Guide
73/97
MVS
Copyright 2008 by Patni Page 68 of 97
12.15 DATASET UTILITY
Option 3.2
---------------------------- DATA SET UTILITY -------------------------------
OPTION ===> A
A - Allocate new data set C - Catalog data set
R - Rename entire data set U - Uncatalog data set
D - Delete entire data set S - Data set information (short)
blank - Data set information M - Enhanced data set allocation
ISPF LIBRARY:
PROJECT ===> DA0034T
GROUP ===> TRGTYPE ===> JCL
OTHER PARTITIONED OR SEQUENTIAL DATA SET:
DATA SET NAME ===>
VOLUME SERIAL ===> (If not cataloged, required for option "C")
DATA SET PASSWORD ===> (If password protected)
12.16 NEW DATASET ALLOCATION
Option 3.2.A
------------------------ ALLOCATE NEW DATA SET ------------------------------
COMMAND ===>
DATA SET NAME: DA0034T.TRG.JCLS
VOLUME SERIAL ===> BS3008 (Blank for authorized default volume)
GENERIC UNIT ===> (Generic group name or unit address)
SPACE UNITS ===> BLOCK (BLKS, TRKS, or CYLS) PRIMARY QUANTITY ===> 26 (In above units)
SECONDARY QUANTITY ===> 12 (In above units)
DIRECTORY BLOCKS ===> 0 (Zero for sequential data set)
RECORD FORMAT ===> FB
RECORD LENGTH ===> 150
BLOCK SIZE ===> 1500
EXPIRATION DATE ===> (YY/MM/DD, YYYY/MM/DD
YY.DDD, YYYY.DDD in Julian form DDDD for retention period
8/13/2019 l1 Mfcics Mvs Student Guide
74/97
MVS
Copyright 2008 by Patni Page 69 of 97
in days or blank)
( * Only one of these fields may be specified)
12.17 RENAMING DATASET
Option 3.2.R
---------------------------- RENAME DATA SET --------------------------------
COMMAND ===>
DATA SET NAME: DA0034T.TRG.JCL
VOLUME: BS3008
ENTER NEW NAME BELOW: (The data set will be recataloged.)
ISPF LIBRARY:
PROJECT ===> DA0034T
GROUP ===> TRG
TYPE ===> JCL
OTHER PARTITIONED OR SEQUENTIAL DATA SET:
DATA SET NAME ===>
12.18DATASET INFORMATION
Option 3.2.s
-------------------------- DATA SET INFORMATION -----------------------------
COMMAND ===>
DATA SET NAME: DA0034T.TRG.JCL
GENERAL DATA: CURRENT ALLOCATION:
Management class: MCSTANDS Allocated blocks: 26
Storage class: SCNORM Allocated extents: 1
Volume: BS3008 Maximum dir. blocks: 1
Device type: 3390
Data class:
Organization: PO CURRENT UTILIZATION:
Record format: FB Used blocks: 11
Record length: 150 Used extents: 1
Block size: 1500 Used dir. blocks: 1
8/13/2019 l1 Mfcics Mvs Student Guide
75/97
MVS
Copyright 2008 by Patni Page 70 of 97
1st extent blocks: 26 Number of members: 5
Secondary blocks: 12
Data set name type: PDS
Creation date: 1996/08/08
Expiration date: ***NONE***
12.19 ALLOCATING DATASETS
------------------------ ALLOCATE NEW DATA SET ------------------------------
COMMAND ===>
DATA SET NAME: DA0034T.TRG.JCL
MANAGEMENT CLASS ===> MCSTANDS (Blank for default management class)
STORAGE CLASS ===> SCNORM (Blank for default storage class)VOLUME SERIAL ===> (Blank for authorized default volume)
DATA CLASS ===> (Blank for default data class)
SPACE UNITS ===> BLOCK (BLKS, TRKS, CYLS, KB, MB or BYTES)
PRIMARY QUANTITY ===> 26 (In above units)
SECONDARY QUANTITY ===> 12 (In above units)
DIRECTORY BLOCKS ===> 1 (Zero for sequential data set) *
RECORD FORMAT ===> FB
RECORD LENGTH ===> 150
BLOCK SIZE ===> 1500
DATA SET NAME TYPE ===> PDS (LIBRARY, PDS, or blank) *
EXPIRATION DATE ===> (YY/MM/DD, YYYY/MM/DD
YY.DDD, YYYY.DDD in Julian formDDDD for retention period in days
or blank)
(* Specifying LIBRARY may override zero directory block)