Professional Documents
Culture Documents
MVS Session02
MVS Session02
Session 2
Time Sharing Option (TSO)…
Is an MVS sub-system
Allows users to perform tasks in an interactive environment
Login procedure:
◦ Type TSO once you login to MVS
◦ You will then see a panel on which you will need to enter your user
id and password
◦ User id is a unique group of seven or fewer characters
◦ Three incorrect tries of the password will lock the account!
◦ Change of password is possible on the same screen; you will be
asked to enter the old password (for authentication) and the new
password twice (for change)
© Strictly confidential 2
…Time Sharing Option (TSO)
As soon as you login to TSO, there may be some messages for you,
which will be displayed
Finally you see three asterisks * * *, signifying that your environment
is ready and a READY message
Enter commands at the position of the cursor, below the READY
message
While you can use TSO commands directly here, it is easier and
preferable that you use ISPF
Once you are logged on to TSO, you will automatically be logged off
the service if no activity is detected on your session for about 15
minutes
© Strictly confidential 3
Interactive System Productivity Facility (ISPF)
Is a component of TSO
Facilitates interaction with the TSO service
Allows users to perform most functions available in TSO without
having to remember complicated TSO command formats
Is a hierarchical menu driven system and is presented as a formatted
display consisting of protected and unprotected fields
Also called SPF (System Productivity Facility) or PDF (Program
Development Facility)
Invoked by typing ISPF or PDF on the TSO command (READY)
prompt
© Strictly confidential 4
Basic screens of ISPF…
© Strictly confidential 5
…Basic screens of ISPF
© Strictly confidential 6
Allocating a data set…
Name of the dataset or file is often divided into levels of qualifiers:
◦ PROJECT (usually the login id of the user),
◦ GROUP ,
◦ TYPE.
Data sets are referred to by their names as PROJECT.GROUP.TYPE.
Each qualifier cannot be more than 8 characters long and qualifiers
are separated by periods
Maximum of 22 qualifiers are allowed, although only 3 are used
usually
Data set name cannot be more than 44 characters long (including
periods)
© Strictly confidential 7
…Allocating a data set…
Each qualifier must start with an alphabet or a special character (# or
@ or $.)
Other characters can be alphabetic, numeric, special or a hyphen (-)
Example: A PDS used for storing your Cobol programs could be
called TEST01.SOURCE.COBOL (assuming that TEST01 is your id)
It is even possible to create a data set with the name
TEST01.SOURCE.CICS.COBOL
To allocate a data set, use option 3 and then sub-option 2. Alternately,
you can type 3.2 on the primary panel to get to the screen directly
© Strictly confidential 8
…Allocating a data set…
© Strictly confidential 9
…Allocating a data set…
© Strictly confidential 10
…Allocating a data set…
© Strictly confidential 11
…Allocating a data set…
Space units
◦ BLKS - Blocks
◦ TRKS – Tracks (suggested unit)
◦ CYLS - Cylinders
◦ KB – Kilobytes
◦ MB - Megabytes
◦ BYTES - Bytes
© Strictly confidential 12
…Allocating a data set…
Primary quantity
◦ Number of units of space you estimate that you will need for your
dataset
Secondary quantity
◦ Considered if primary quantity is not sufficient for storing a data
set
◦ For each one of these requested, 15 additional increments will be
made available, should the need arise. For example, assuming that
KB is the space unit used, a 2 entered here will provide a maximum
of 30 KB of secondary space which will be allocated in 2 KB
increments, as needed
Directory blocks
◦ 0 for PS
◦ For PDS, the number given here is that number x 5 members. For
example, if you give 5 here, system will allow you to place 25
members in the PDS
© Strictly confidential 13
…Allocating a data set…
Record format
◦ FB - Fixed Blocked
◦ FBA - Fixed Block with carriage control (used for reports to be
printed)
◦ VB - Variable Blocked
◦ F - Fixed Unblocked (rarely used)
◦ V - Variable Unblocked (rarely used)
◦ U – Undefined (rarely used)
Record length
◦ Refers to the number of characters for each record
◦ For fixed length, 80 is the most common value; for variable length,
255 is a reasonable value
Block size
◦ Leave it blank so that system can select the best possible value
© Strictly confidential 14
…Allocating a data set…
© Strictly confidential 15
…Allocating a data set
Similar steps are to be used for allocating a PS
Allocation of a VSAM data set will be covered later
Option 3.2 can also be used to display information on any data set,
including ones that you created. For display, instead of typing A on
the top, no option is required to be entered
3.2 can also be used to rename or delete data sets
On 3.2, one way of giving the data set name was shown in the screen
on the previous slide. The other way is to type it in the ‘Data Set
Name’ option. While using this, data set name has to be enclosed in
single quotes if all qualifiers are given. That is, give as
‘TEST01.SOURCE.COBOL’. If the first qualifier is the same as the
user’s id, then the first qualifier can be ignored and no quotes is
required. It can be given as SOURCE.COBOL. The system
automatically adds TEST01. to the data set name, as it is not qualified
© Strictly confidential 16
Creating a member in a PDS…
Option 2 is used for creating a member in a PDS
Same option is used for editing existing members in a PDS or editing
a PS
Option 2 can be selected by going to the first ISPF menu (hit PF3 on
any screen in ISPF to take you back in the same hierarchical order,
until you reach the primary screen)
Alternately, you can type =2 on the command line from any ISPF
screen to directly go to the edit panel
Here, we are about to create a member called mem1 in the PDS that
was just created
Member is created and immediately opened in edit mode
© Strictly confidential 17
…Creating a member in a PDS…
© Strictly confidential 18
…Creating a member in a PDS…
© Strictly confidential 19
…Creating a member in a PDS
© Strictly confidential 20
Editing a member in a PDS…
The moment the edit mode opens on ISPF, just start typing the text
Two kinds of commands are possible in edit mode:
◦ Primary commands – typed on the command line on top
◦ Line commands – typed on the lines in the line number area
Each data set has an edit profile that defines the way you can edit a
data set. For example, a profile can be set up to edit data that is all in
capital letters, or to edit data that is in mixed-case letters
ISPF generates a default edit profile based on the library type of the
data set you are editing. Usually, the default profile is suitable for the
kind of data you want to put in the data set. Sometimes, however, it is
not
To look at the edit profile of a data set, type PROFILE on the edit
panel
The edit profile appears on five lines above the records in the data set
© Strictly confidential 21
…Editing a member in a PDS…
© Strictly confidential 22
…Editing a member in a PDS
© Strictly confidential 23
Edit profile of a data set…
Caps
Default setting is that all entered lines are converted to caps. This is
useful for Cobol programs
To change this setting, type CAPS OFF on the command line
Sequence numbers
If you scroll to the right, you will see sequence numbers appearing by
default on the last 8 columns. Again, this is useful for Cobol
programs
To change this setting, type UNNUM on the command line
Hex
HEX ON is used to be able to read data in hexadecimal format
(covered later in Cobol)
Default setting in HEX OFF
© Strictly confidential 24
…Edit profile of a data set
Hilite
Uses different colours to highlight different parts of the code. Very
useful in Cobol, JCL and JCL procedures while editing them
Default setting is HILITE OFF
To stop displaying the edit profile, type RESET on the command line
in edit mode
© Strictly confidential 25
…Editing a JCL data set
© Strictly confidential 26
…Editing a Cobol data set
© Strictly confidential 27
Line commands on edit panel…
Command Purpose
i Insert one line
inn Insert nn lines
d Delete one line
dnn Delete nn lines
dd Delete a set of lines starting with the first dd to the next dd
c / cnn / cc Copy line / lines (to be immediately followed by b or a line
command)
m / mnn / mm Move line / lines (to be immediately followed by b or a line
command)
a Copy or move identified line or lines after this line (to follow m
or c command)
b Copy or move identified line or lines before this line (to follow
m or c command)
© Strictly confidential 28
…Line commands on edit panel
Command Purpose
( / (( Move line / lines by 1 byte to the left
(nn / ((nn Move line / lines by nn bytes to the left
) / )) Move line / lines by 1 byte to the right
)nn / ))nn Move line / lines by nn bytes to the right
col / cols Display column numbers above the line
x / xnn / xx Excludes line / lines from displaying
r / rnn / rr Repeats line / lines
.x Place a label called x on the current line. Is useful to return to
this line by using l .x primary command at a later point in the
same edit session
© Strictly confidential 29
Primary commands on edit panel…
Command Purpose
F ‘abc’ Find next occurrence (from the current cursor position) of text
abc in data set
F ‘abc’ FIRST Find first occurrence of text abc in data set
F ‘abc’ LAST Find last occurrence of text abc in data set
F ‘abc’ nnn Find next occurrence of text abc starting in column nnn
TOP / BOTTOM Move to the top or bottom of the data set
LEFT / RIGHT Move to the left or right of the data set (useful if the record
length is greater than 80 bytes)
L .x Locate label x (that is, go to the line that has label x)
C ‘abc’ ‘def’ Change next occurrence of text abc to def
C ‘abc’ ‘def’ Change all occurrences of text abc to def
ALL
C ‘abc’ ‘def’ Change all occurrences of text abc to def between labels a and
ALL .a .b b
© Strictly confidential 30
…Primary commands on edit panel
Command Purpose
PFSHOW ON Display the PF keys and their meanings
RESET Reset the file (stops displaying profile, removes pending line
commands)
SAVE Save the current data set
CANCEL Exit the edit session without saving the changes in the current
data set
=X Exit the current ISPF session (asks if data set needs to be
saved or not, if changes have been made since the last save)
HEX ON Turns hexadecimal mode on (helpful to display such data in
readable format)
CUT / PASTE Used to cut data to or paste data from temporary storage (to be
used in conjunction with copy line command)
CREATE name Create a member named name in the same PDS with the
records marked with copy or move line commands
SUB Submits a job (used only while editing JCLs)
© Strictly confidential 31
Function keys on edit panel
Key Purpose
PF1 Help
PF2 Split screen at the cursor’s position
PF3 Save and exit
PF4 Exit or return without saving
PF5 Find next occurrence of previous find command
PF6 Change next occurrence of previous change command
PF7 Page up
PF8 Page down
PF9 Swap between two split screens
PF10 Move left
PF11 Move right
PF12 Cancel or bring previous command on command line
PF13 – PF24 Repeat of PF1 to PF12
© Strictly confidential 32
Other important ISPF panels…
Option 3.4
Used for listing data sets with specific qualifiers
Once data sets are listed, the following line commands can be given in
front of any data set:
Command Purpose
b Browse
d Delete
e Edit
m List members (only for PDS)
s List details of data set
hrecall Recall migrated / archived data set
= Repeat previous command
/ Show list of possible commands
z Compress PDS dataset (used when there is a
space problem)
© Strictly confidential 33
…Other important ISPF panels
Option 1 – View data set
Option 3.3 – Move / copy data sets
Option 6 – Native TSO (to retrieve messages / files sent to you from
another system or user; to transfer files from / to desktop)
Option 0 – Settings
Other administrator defined panels to access SDSF, RACF,
INTERTEST, XPEDITOR, CA-7, SPUFI, QMF, FILE-AID,
CHANGEMAN and other system-specific applications
© Strictly confidential 34
Compressing a PDS (for space problem)…
Sometimes, while trying to save a member in a PDS, user will
encounter a space problem (error message on top right corner)
In such a case, it is necessary to compress that PDS so as to free some
space
This is done by listing that particular PDS by using 3.4 and entering
the line command Z (for compress) in front of its name
© Strictly confidential 35
…Compressing a PDS (for space problem)
© Strictly confidential 36
Other common problems and solutions
When the number of members in a PDS has reached the maximum
limit and an error is given for this while saving a member:
◦ Allocate a new PDS with more directory blocks
◦ Save the new member to the new PDS
◦ Move all old members from the old PDS to the new one
◦ Delete the old PDS
◦ Rename the new PDS with the old one’s name
Sometimes, compress will not solve the problem mentioned before.
In that case, follow the same solution as above
If user has allocated a data set with incorrect specifications (length or
type, it is not possible to alter them. The only solution is to delete and
recreate it with the correct specifications. In case the mistake is for a
PDS that already has members, user has to create a new PDS with the
correct specifications and move the members from the old one to the
new one
© Strictly confidential 37
System Display and Search Facility (SDSF)
Provides users with information to monitor, manage, and control the
MVS / JES2 system
With SDSF, users can:
◦ Control job processing (hold, release, cancel, and purge jobs)
◦ Monitor jobs while they are running
◦ Browse jobs without printing
◦ Control job classes
◦ Control printers, punches, readers and initiators
◦ Control network lines and nodes
◦ Control spool offload devices
◦ Display and control WLM scheduling environments and resources
◦ Issue JES2 and MVS commands that affect jobs
© Strictly confidential 38
SDSF – First panel…
© Strictly confidential 39
…SDSF – First panel
The first panel contains the following:
© Strictly confidential 40
SDSF – Data area
Usually, data is in columns and rows
Each row represents a single job, TSO user, task, data set, resource,
or other system entity
Column headings describe the information in the columns
The column headings are different for each panel, and may vary with
your environment, such as JES2 level. They may be tailored by the
system programmer
The first column is a fixed field; when you scroll right or left, it
remains in the same position
© Strictly confidential 41
SDSF – Command line commands
Command Purpose
UP / DOWN / Scroll up / down / left / right
LEFT / RIGHT
FIND Find a character string
DA Display only active jobs and users
H Display held queue jobs only
I Display input queue jobs only (i.e.) jobs awaiting execution
O Display output queue jobs only
ST Display active, held, input and output queue jobs
OWNER Limit display by owner id
PREFIX Limit display by job names starting with given prefix
SORT Sort display by given criteria
© Strictly confidential 42
SDSF – Action characters
In addition to command line commands, it is also possible to issue
commands to specific listed jobs using action characters
Action characters are placed in the data area against a particular job
The following are some of the commonly used action characters:
Action
Purpose
character
? Display details of a job
s Display contents of a job (can be used when details are
displayed also)
p Purge a job
se Edit contents of a job
sj Resubmit a job from SDSF itself
a Release an on-hold job (only if the user has the permission)
© Strictly confidential 43
…SDSF – Command line commands
By default, prefix and owner are set to your user id. In case they are
not, you will not see the jobs that you submit on SDSF. In such a
scenario, use the PREFIX and OWNER commands with your user id
to get it fixed. That is, if your user id is TEST01, use the line
commands:
PREFIX TEST01*
OWNER TEST01
It is also possible to use PF keys just like you do on the edit panel.
Use PFSHOW ON to see what each PF key will do. Most of them
will function like they do on the edit panel
© Strictly confidential 44
…SDSF – Looking at the job output…
© Strictly confidential 45
…SDSF – Looking at the job output…
© Strictly confidential 46
…SDSF – Looking at the job output…
© Strictly confidential 47
…SDSF – Looking at the job output…
© Strictly confidential 48
…SDSF – Looking at the job output…
© Strictly confidential 49
…SDSF – Looking at the job output…
© Strictly confidential 50
…SDSF – Looking at the job output…
© Strictly confidential 51
…SDSF – Looking at the job output
© Strictly confidential 52
Resource Access Control Facility (RACF)…
RACF is an IBM software product
It is a security system that provides access control and auditing
It fulfills the following main features:
◦ Identification and verification of a user via user id and password
check (authentication)
◦ Protection of resources by maintenance of access rights
(authorisation)
◦ Logging of accesses to protected resources (auditing)
RACF establishes security policies rather than just permission records
© Strictly confidential 53
…Resource Access Control Facility (RACF)…
It can set permissions for data set name patterns - that is, set the
permissions even for data sets that do not yet exist. Those permissions
are then used for the data sets created at a later time
RACF administration functions have ISPF entry panels and associated
help panels. These panels make it easy to enter the RACF commands
and their options.
RACF provides TSO with user identification and verification, as well
as resource authorization checking
© Strictly confidential 54
…Resource Access Control Facility (RACF)…
RACF maintains information entries called profiles in the RACF
database. It provides 3 types of profiles:
◦ Discrete profile:
Discrete profiles have a one-for-one relationship with a resource
—one profile for each resource.
◦ Generic profile:
Generic profiles have a one-for-many relationship. One profile
controls access to one or more resources whose names contain
patterns or character strings that RACF uses to associate them
with each other
◦ Grouped profile:
There may be no way to associate the resources with a common
access list based on patterns in the resource names. In this case,
the many resource names can be associated with a single RACF
profile through the use of a grouping profile that contains the
names of the associated resources
© Strictly confidential 55
…Resource Access Control Facility (RACF)
It is possible for users to give permissions to their data sets using
RACF panels using any type of profile. Examples:
◦ To give permissions to a specific data set called
TEST01.SOURCE.COBOL, a discrete profile of the same name is
used
◦ To give permissions to all data sets that begin with TEST01.JCL, a
generic profile is used
Other users can be given read, write, create or all permissions by the
owner
© Strictly confidential 56