V1 MVS
V1 MVS
V1 MVS
0
23 Feb 2022
MVS
Table of Contents
1. INTRODUCTION..................................................................................................................................................... 2
i
MVS
ii
MVS
iii
MVS
Day-Wise Schedule
iv
MVS
1. Introduction
1
MVS
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. Company’s 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.
2
MVS
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 OS’s increase the efficiency of use of the computer and hence
reduce the cost of using the computer.
Users
Application Programs
Loaders
OS manages
Memory Device
Hardware
Information Processor
Linkers Compilers
Utilities
Users
• 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.
3
MVS
3. Computing Environment
3.1 Key Concepts and Terminology
Command Processing
• 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
➢ 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)
4
MVS
• 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?
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
user’s 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
3.3 Multi-programming
• Why Multi-Programming?
5
MVS
This results in an illusion that multiple programs are being executed simultaneously, hence
multiprogramming.
3.6 Multi-Processing
3.7 Spooling
Why Spooling?
How it is implemented?
6
MVS
➢ Required to enable execution of programs with are larger than the main memory size
➢ 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
7
MVS
➢ 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
swapped out Perform I/O operation
P1 P1
P2
P2
swapped in DATA
P3 Real Memory
(Only part of program that requires
main memory will be in the main
Virtual Memory memory)
OS
8
MVS
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.
9
MVS
10
MVS
1988 MVS/ESA 16 B
11
MVS
12
MVS
In the earlier OS’s 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.
Operating System
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 the memory, which goes waste. On the other hand the program that does not fit in
memory cannot be executed at all.
Disadvantages
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.
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.
13
MVS
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,
assuming partition 5 (520K size) is already in use, the new job has to wait (as it can be
accommodated only in partition 4 or 5).
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.
• Major Handicaps
➢ Limited and inefficient spooling
➢ No Virtual Storage
14
MVS
System 370
15
MVS
Processors :
ES/3090 E and S Models and later
Virtual storage of 16 Terra
4381 Models 90E, 92E, 93E and later
Bytes
16
MVS
Input-Output Management
Problem: - Application should not worry about device characteristics. I/O device speed is 100
times slower than CPU.
2) I/O operation
swapped out
P1 P1
P2
P2 I/O
swapped in
Subsystem File
P3
How is to be done is decided by
I/O subsystem
Virtual Memory
OS Tells What to do
Real Memory Auxiliary Device
17
MVS
Channel 0
Channel 1
Channel 2
Channel 3
CP Main
U Storage Channel 4
Channel 5
Channel 6
Channel 7
18
MVS
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.
19
MVS
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
Magnetic Tape
➢ High volume storage
➢ 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
20
MVS
➢ 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
channel
connection string controller
1 32
(1 - 128) storage control
(1 - 8)
string controller
1
32
DASD unit
21
MVS
Data Communication equipment lets an installation create a data communication network that lets
users at local terminals & remote terminals to access computer system
communication controller
modem modem
Telecommunication
Lines
modem modem
printer printer
terminal terminal
22
MVS
The control unit that attaches to the host system’s 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.
23
MVS
4381 Processor 8M
3211
Printers (2)
Modems (3)
24
MVS
The figure shows a small mainframe computer system built around a 4381 processor.
• Virtual storage is a facility that simulates a large amount of main storage by treating
DASDs storage as an extension of Virtual Storage
• In other words, when virtual storage is used, the processor appears to have more storage
than it actually does
Address Spaces
• Main storage consists of millions of individual storage locations, each of which can store
one character, or byte, of information. To refer to a particular location, we use an address,
which indicates the storage location’s offset from the beginning of memory
• The first byte of storage is at address 0; the second byte of storage is at address 1, and so
on. Each successive byte of main storage has an address that is one greater than the
previous byte of storage
• An address space is simply the complete range of addresses and as a result the number of
storage locations that can be accessed by the computer
• The number of digits allowed to represent an address limits the maximum size of a
computer’s address space. To illustrate, suppose a computer records its addresses using six
decimal digits. Such a computer could access storage with addresses from 0 to 999,999
• For most System/370 type processors, a 24 digit or a 24-bit binary number represents an
address. Since the largest number that can be represented in 24 bits is about 16 million, so
it can contain 16M of storage. In MVS/XA or MVS/ESA 31-bit addressing is provided
and so it supports 2GB of storage
• So the concept behind Virtual Storage is that it lets the computer push its address space to
the maximum allowed by the address format, even if the amount of real storage installed
on the processor is less than the maximum. So, in 370-mode, virtual storage can simulate a
16M-address space, even if only 4M or 8M of real storage are actually installed
25
MVS
• 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
• 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
26
MVS
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
• 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 4K page slots, each of which holds one page of virtual storage
• When a program refers to a storage location that isn’t 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 job’s 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
27
MVS
• When an address space is swapped out, its critical pages-the ones that contain the tables
that keep track of the location of each virtual storage for the address space-are written to a
special dataset called a swap data set. Later, when the system can accommodate the job
again, the address space is swapped in so it can be processed again
• When the address spaces are swapped out, they cannot compete for virtual storage or the
CPU until they are swapped in
• Rather than move small 4K pieces of virtual storage in and out of real storage, swapping
effectively moves entire address spaces in and out of virtual storage
• Because paging occurs only for address spaces that are currently in virtual storage, paging
does not occur for address spaces that are swapped out
• The paging process is managed by several components of MVS. The 3 major one are:
➢ Real Storage Manager (RSM)
➢ Auxiliary Storage Manager (ASM)
➢ Virtual Storage Manager (VSM)
➢ Keeps track of the contents of the page dataset and swap dataset
➢ Page dataset contain virtual pages that are currently occupying a real storage frame.
28
MVS
System Queue
Area (SQA)
Common
Area Pageable Link Pack
Area (PLPA)
Common Service
Area (CSA)
User Region
System
Nucleus
Area System
Region
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
29
MVS
Private Area
The user region is the space within Private Area that is available for running the user’s program
• 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
30
MVS
8. MVS Functions
Data Management Overview
Anything that needs to be stored and accessed on user request is a Data for MVS
Application Components
➢ Source Programs
➢ Executable Programs
➢ Screen Definitions
➢ Record Layout Definitions
➢ Command File Scripts
Temporary Data
➢ O/S Built Data (e.g. task queues, segment table, page table)
➢ Spooled Output
➢ Work Files for Sort
• Dataset organization fall into two categories under MVS: VSAM and NON-VSAM
31
MVS
Physical Sequential
• Records are stored one after another in consecutive sequence
• Can reside on just any type of I/O devices
• Appropriate when file’s records don’t 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 doesn’t 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
32
MVS
Usually, the application component type cannot be identified from the member name. For
that naming conventions are used for PDS.
ESDS
• Can only reside on DASD
• Functionally equivalent to Physical Sequential File
KSDS
• Functionally equivalent to Indexed Sequential File
RRDS
• Lets you retrieve the record by specifying the location relative to the start of the file
33
MVS
Dataset Tracking
Label
• DASD Label
➢ Each DASD is labeled; called Volume Label (VOL1 label)
➢ DASD label contains Volume Serial Number and address of the VTOC file
• 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
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
➢ 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
34
MVS
VOL 1 Label
VTOC
Format-4 Format-1 Format-1 Format-1 Format-3 Format-5
VTOC FileA File-B File-C File-B Free 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
➢ There can be multiple User Catalogs
➢ Master Catalog contains one entry of each User Catalog
• Usually, the high-level qualifier of a data set is same as the catalog name or catalog alias name
35
MVS
• Alias helps to catalog data sets with different high-level qualifiers to be cataloged in a single
user catalog
36
MVS
9. MVS Concepts
9.1 How 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”
Processing
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.
37
MVS
E.g. 1
A job of creating an executable module (load module) from a source program consists of
compilation and link editing a program.
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
38
MVS
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
• When you submit the job, JES reads the job stream (sequence of JCL commands) from a
DASD file and copy it to a job queue, which is a part of a special DASD file called JES
SPOOL
• Each job class is represented by a single character, either a letter (A-Z) or a digit (0-9). Job
classes are assigned based on the processing characteristics of the job.
39
MVS
• INITIATOR: - An initiator is a program that runs in the system region of an address space.
Each initiator can handle one job at a time. It examines the JES spool, selects an appropriate
job for execution, executes the job in its address space and returns to the JES spool for another
job
• The number of active initiator on a system and as a result the number of address spaces
eligible for batch job processing determines the number of batch jobs that can be multi
programmed at once
Each initiator has one or more job classes associated with it. It executes jobs only from those
classes.
Within a job class, initiator selects jobs for execution based on their priorities, which can range
from 0 to 15
If two or more jobs have same class & priority, they are executed in the order in which they are
submitted.
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 control
blocks in the SWA, a part of the address space’s 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 user’s program to execute, it can retrieve data that was included as part of
job stream and stores in the JES spool
40
MVS
Job
JES SPOOL INITIATOR
JCL SYSIN
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]
• After the job’s 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
41
MVS
SWA
After initiator selects a job for
control block
execution, it invokes the
interpreter, which builds the
required control blocks in the
System Region
address space’s SWA.
Interpreter
Initiator
SWA
For each job step, the initiator
control block
invokes allocation routines to
allocate the units, volumes and
datasets required by the job
System Region step
Allocation
Initiator
SWA
After resource allocation, the
control block
initiator creates a user region,
loads the user program into it
User Program
and transfers control to user
System Region
program
Initiator
42
MVS
SYSTEM REGION
UNALLOCATION
INITIATOR
When the user program completes, the initiator invokes Unallocation routine to Deallocate the
resources used by the job step
43
MVS
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
44
MVS
What is JCL?
Introduction
45
MVS
➢ 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.
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
➢ Interpreter builds control blocks from converter / interpreter text in a Scheduler Work
Area (SWA)
46
MVS
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 initiator
Input Data
➢ Input data to the user’s 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
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;
- JES
- MVS
- User’s program where SYSOUT is allocated as output device
47
MVS
Component 5 - SYSOUT
• Separate sub-component for each SYSOUT allocation
• Each SYSOUT can have different characteristics e.g. class, record length etc.
48
MVS
12.12 Utilities
49
MVS
➢ IEBGENER
➢ IEFBR14
➢ SORT
➢ IDCAMS
• Time Sharing
• Resource sharing
• MVS handles each TSO user as it handles batch jobs
• The user specific batch job that starts up handles
TSO Commands
• Create program.
• Edit program.
• Compile program.
• Link edit a program.
• View output.
50
MVS
• Submit Jobs
• Monitor job
• View output
• Route output
Help
• Help on TSO commands can be obtained by typing, “HELP” at the “READY” prompt.
51
MVS
52
MVS
PF1 - PF12 Keys may be duplicated from PF13 to PF24 in 24 key mode.
• 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
Exiting ISPF
If you haven’t specified default dispositions for your List and log datasets then the termination
panel is displayed.
53
MVS
LOG DATA SET DISPOSITION LIST DATA SET OPTIONS NOT AVAILABLE
------------------------- -----------------------------------
Process option ===>
SYSOUT class ===>
Local printer ID ===>
Option 0.3
54
MVS
ISPF LIBRARY:
PROJECT ===> MATEKD
GROUP ===> TRG ===> ===> ===>
TYPE ===> JCL
MEMBER ===> (Blank or pattern for member selection list)
• 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
55
MVS
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.
56
MVS
57
MVS
• RECOVERY ON/OFF Recovers a dataset being edited in case of a system crash. It also
permits
• The use of the UNDO command. This works up to the last save only
• HEX ON/OFF Displays data in HEX/ASCII mode
• CAPS ON/OFF Converts Lower case letters to uppercase if set to on
➢ Line commands for this function are LC or UC. LCLC and UCUC are blocked line
commands.
• PACK ON/OFF Specifies that the data is store in compressed mode.
• AUTOSAVE ON/OFF PROMPT/NOPROMPT Auto save data when PF3 key is pressed
• IMACRO Specify initial macro to be run at startup.
Where:
58
MVS
Data shifts
Option 3
59
MVS
Option 3.1
60
MVS
Option 3.2
ISPF LIBRARY:
PROJECT ===> MATEKD
GROUP ===> TRG
TYPE ===> 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)
Option 3.2.A
61
MVS
Option 3.2.R
ISPF LIBRARY:
PROJECT ===> MATEKD
GROUP ===> TRG
TYPE ===> JCL
Option 3.2.s
62
MVS
63
MVS
Option 3.3
64
MVS
TO ISPF LIBRARY:
PROJECT ===> MATEKD
GROUP ===> TRG
TYPE ===> JCL
65
MVS
Option 3.4
* The following line commands will be available when the list is displayed:
66
MVS
M - Member list
C - Catalog a dataset
D - Delete a dataset
E - Edit a dataset
F - Free unused dataspace in a dataset
I - Display information for a dataset
M - Display a memberlist
P - Print a dataset
R - Rename a dataset
S - Display a shortened version of dataset information
U - Uncatalog a dataset
X - Print a dataset indexed listing
Z - Compress a dataset
= - Repeat the last command
67
MVS
13.26 Reset
Option 3.5
ISPF LIBRARY:
PROJECT ===> MATEKD
GROUP ===> TRG
TYPE ===> JCL
MEMBER ===> (Blank or pattern for member selection
list, '*' for all members)
68
MVS
69