CICS ClassBook Lesson01
CICS ClassBook Lesson01
Instructor Notes:
Page - 01 - 1
Customer Information Control System Introduction to CICS
Instructor Notes:
Lesson Objectives
Page - 01 - 2
Customer Information Control System Introduction to CICS
Instructor Notes:
1.1: Batch and Online Systems
Page - 01 - 3
Customer Information Control System Introduction to CICS
Instructor Notes:
1.1: Batch and Online Systems
Terminals
Batch System
DATABASE
REPORTS
MASTER FILE
Page - 01 - 4
Customer Information Control System Introduction to CICS
Instructor Notes:
1.1: Batch and Online Systems
These days, the online system is so common that virtually every large mainframe
installation has at least one online application system.
This is because the online system has advantages over the batch systems.
• Up-to-date file (information) can be shared among many users simultaneously and
instantly.
• Data validation and editing can be done at data entry time.
Page - 01 - 5
Customer Information Control System Introduction to CICS
Instructor Notes:
1.1: Batch and Online Systems
If the information need not be updated on a real time basis, then batch system can
be used.
When massive file updates have to be done, they should be done in batch mode.
This is because online processing of these areas can be resource intensive.
Page - 01 - 6
Customer Information Control System Introduction to CICS
Instructor Notes:
1.2: Interactive Programs
Page - 01 - 7
Customer Information Control System Introduction to CICS
Instructor Notes:
1.2: Interactive Programs
Give examples The operator enters the data for one transaction at the terminal.
Of each of the The program updates any related master files.
Interactive The program writes the transaction to the transaction file.
system
E.G. When you
go to a railway
reservation
counter and
book tickets
2 Master file
Data
Terminal 1 entry
programs
3
Trans file
Page - 01 - 8
Customer Information Control System Introduction to CICS
Instructor Notes:
1.2: Interactive Programs
1 2
Terminal File
3 Master File
maintenanc 5
4 e
Page - 01 - 9
Customer Information Control System Introduction to CICS
Instructor Notes:
1.2: Interactive Programs
Menu Programs
Program1
1
Terminal Menu
program Program 2
3
2
Program 3
Page - 01 - 10
Customer Information Control System Introduction to CICS
Instructor Notes:
1.3: Interactive System Considerations
Page - 01 - 11
Customer Information Control System Introduction to CICS
Instructor Notes:
1.3: Interactive System Considerations
A batch program typically has complete control of the file it uses. So there is no
chance that another program can interfere with its processing.
In an interactive system, many terminal operators use the same system
simultaneously, and all must have access to the file they require.
• When an interactive system lets users shared files, it must coordinate all file updates to
insure file integrity such that no two users are able to update the same record at the same
time.
Page - 01 - 12
Customer Information Control System Introduction to CICS
Instructor Notes:
1.3: Interactive System Considerations
Response time is the amount of time for which a user must wait while a transaction
is being processed.
Many factors affect the response time, namely:
• The number of users on the system
• The size of the CPU
• The speed of disk drives
• The speed of communication lines
• The manner in which the application programs are written
Page - 01 - 13
Customer Information Control System Introduction to CICS
Instructor Notes:
1.3: Interactive System Considerations
Significance Of Security
The main security technique used in today’s interactive system is the logon
procedure.
In addition to the logon procedure, most interactive systems have a multilevel
security system that allows some users to access certain files.
Each user is allowed to access only those files s/he is authorized to use.
Security:
CICS provides simple security features and many CICS installations
use other security management systems that provide tighter control.
Although security is an important consideration in an online system, it
does not affect the way application programs are developed.
Page - 01 - 14
Customer Information Control System Introduction to CICS
Instructor Notes:
1.3: Interactive System Considerations
Significance Of Recovery
All interactive systems must provide for recovery in the event of a system failure.
Recovery in an interactive system should be properly planned, since it involves
hundreds of users.
Page - 01 - 15
Customer Information Control System Introduction to CICS
Instructor Notes:
1.4: Elements of a Data Communication Network
Networking Fundamentals
Page - 01 - 16
Customer Information Control System Introduction to CICS
Instructor Notes:
1.4: Elements of a Data Communication Network
Networking Fundamentals
These concepts
have been
discussed in MVS.
Ask the participants
to explain them the
components
Host Communicatio
System n Modem Modem Ts
controller
Communication Lines
Page - 01 - 17
Customer Information Control System Introduction to CICS
Instructor Notes:
1.4: Elements of a Data Communication Network
Page - 01 - 18
Customer Information Control System Introduction to CICS
Instructor Notes:
1.4: Elements of a Data Communication Network
The modem of the Telecommunication line is connected to the host system via a
communication controller.
• The communication controller controls the functions necessary to control the transmission of
data over the communication line.
• One of the main functions of communication controller is data conversion. It implies
converting data into a form that the modem can process.
• Another main function of a communication controller is data-link control.
• Data-link control ensures successful transmission of data over the communication line.
• Some of the functions required for data-link control are:
• Synchronizing the host with the terminal
• Identifying the source and destination of transmission
• Detecting and correcting transmission errors
• Popular models of communication controller are 3704 and 3705.
Page - 01 - 19
Customer Information Control System Introduction to CICS
Instructor Notes:
1.4: Elements of a Data Communication Network
Significance Of Modem
Page - 01 - 20
Customer Information Control System Introduction to CICS
Instructor Notes:
1.4: Elements of a Data Communication Network
The TC line can be set through private telephone system or may be privately
owned.
Page - 01 - 21
Customer Information Control System Introduction to CICS
Instructor Notes:
1.4: Elements of a Data Communication Network
A terminal system consists of a terminal controller plus one or more display stations
(Terminals).
Page - 01 - 22
Customer Information Control System Introduction to CICS
Instructor Notes:
1.5: Introduction to CICS
CICS acts as an interface between the Operating system and Application programs.
Application
Program
CICS
Op. System
Page - 01 - 23
Customer Information Control System Introduction to CICS
Instructor Notes:
1.5: Introduction to CICS
• Then the access methods (such as VTAM,BTAM,VSAM or ISAM) communicate with the system
devices (such as terminals, disk drives, or tape drives.)
CICS
Communication
access
(VTAM, SNA,
TCP/IP)
User interface
Page - 01 - 24
Customer Information Control System Introduction to CICS
Instructor Notes:
1.5: Introduction to CICS
Page - 01 - 25
Customer Information Control System Introduction to CICS
Instructor Notes:
1.5: Introduction to CICS
CICS runs in one 'region' or 'partition' or 'address space' and handles scheduling for
programs running under it.
Since CICS is itself a batch job, it is scheduled by the OS and will compete with
other batch jobs for CPU time. Therefore CICS is usually run with high priority.
OS/390
CICS
CICS production Batch TSO
test
region Job user
region
Page - 01 - 26
Customer Information Control System Introduction to CICS
Instructor Notes:
1.6: Features of CICS
Salient Features
Page - 01 - 27
Customer Information Control System Introduction to CICS
Instructor Notes:
1.6: Features of CICS
Significance Of DB/DC
Page - 01 - 28
Customer Information Control System Introduction to CICS
Instructor Notes:
1.6: Features of CICS
Significance Of Multiprogramming
Page - 01 - 29
Customer Information Control System Introduction to CICS
Instructor Notes:
1.6: Features of CICS
Significance Of Multiprogramming
Page - 01 - 30
Customer Information Control System Introduction to CICS
Instructor Notes:
1.6: Features of CICS
Significance Of Multitasking
Page - 01 - 31
Customer Information Control System Introduction to CICS
Instructor Notes:
1.6: Features of CICS
DOS/VSE
Supervisor Area
Background COBOL compiler
Foreground 4 CICS Test partition
Foreground 3 Payroll application
Foreground 2 Unused
Foreground 1 CICS production partition
User 1 Order Entry
User 2 Customer Enquiry
User 3 Order Entry
User 4 Inventory Inquiry
User 5 Customer File
maintenance
User 6 Order Entry
Page - 01 - 32
Customer Information Control System Introduction to CICS
Multitasking
CICS can accept input from many terminals, and when the currently executing task
completes, or has to wait for file I/O, there is another task ready to execute.
A task is the execution of an application program for a specific user and CICS
handles multitasking internally, within its own address space.
CICS decides which ready-to-run task is to be given control in a process known as
task dispatching. The highest priority ready task is dispatched.
Page - 01 - 33
Customer Information Control System Introduction to CICS
Instructor Notes:
1.6: Features of CICS
Significance Of Multithreading
In the above figure user1, user3, and user6 are accessing the same application
program: Order entry.
• This would waste valuable storage space if the same program was loaded into storage at
three different storage locations.
Under CICS, however, a concept called multithreading is used so that only one copy
of the program is loaded into the storage.
Multithreading:
Multithreading means that the area of storage containing a program is
not allocated to a specific user. Instead all users running the program
have access to the same storage locations.
Page - 01 - 34
Customer Information Control System Introduction to CICS
Instructor Notes:
1.6: Features of CICS
Significance Of Re-entrant
Page - 01 - 35
Customer Information Control System Introduction to CICS
Instructor Notes:
Significance of Re-entrant
Virtual storage
Program A working
storage(User2)
Re-entrant:
➢ In the example in the above slide, the two users share the same
application program, that is PROGRAM A.
➢ They share the same storage for the program’s object code, that is
the procedure division, but each is given a separate working
storage area. This way each uses the working-storage in a normal
fashion.
➢ A Quasi-reentrant program is a reentrant program under CICS
environment. That is a Quasi-reentrant program is a CICS program
which does not modify itself.
➢ When you write a command-level CICS program, you do not have
to worry about making it quasi-reentrant. CICS automatically
handles that for you.
Page - 01 - 36
Customer Information Control System Introduction to CICS
Instructor Notes:
1.7: Transaction
Concept Of Transaction
Give an overview A transaction is a pre-defined unit of work that a user can invoke.
of the transaction • When a transaction is invoked, a specific application program is loaded into storage (if it is
not already in storage) and a task is started.
and task.
• The difference between a task and transaction is that while several users may start the
Tables same transaction, each will be given its own task.
are discussed
in more detail
in the next lesson
Examples of Transaction:
Displaying a record on screen
Entering a customer’s order into the system
Entering fields needed for computation
Receiving the result of that computation
Multiple users can invoke the same transaction but a different task is
created for each user
Page - 01 - 37
Customer Information Control System Introduction to CICS
Instructor Notes:
1.7: Transaction
Concept Of Transaction
Initiating a CICS • Each transaction is identified by a four-character code called transaction identifier
(transaction id).
transaction : • An operator initiates a transaction by entering the transaction id on to the terminal.
•By 4 character • A special CICS table, called the program control table (or PCT), defines each transaction.
• Each trans-id is paired with the name of the program CICS will load and execute when the
transaction identifier transaction is invoked.
entered at the terminal
and by pressing enter
key
•By using START
command
•By using ATI
•By specifying a
terminal key
associated with a
program defined in
PCT
•By pseudo-
conversational way
RETURN with
TRANS-ID.
Page - 01 - 38
Customer Information Control System Introduction to CICS
Instructor Notes:
1.7: Transaction
Concept Of Transaction
• Another CICS table, called the processing program table (or PPT), contains a list of all valid
program names.
• The PPT indicates each program’s location – a storage address if the program has already
been loaded or a disk location if the program has not been loaded.
• CICS uses PPT to determine whether it will load a new copy of the program when the
transaction is invoked.
Page - 01 - 39
Customer Information Control System Introduction to CICS
Instructor Notes:
1.8: Initiation of a Task
Page - 01 - 40
Customer Information Control System Introduction to CICS
Instructor Notes:
1.8: Initiation of a Task
Then CICS locates the program on the DISK and loads it into storage and a task is
initiated.
If the program is already in storage, then the object code for the program is NOT
retrieved from the disk unit.
What is a task?
Page - 01 - 41
Customer Information Control System Introduction to CICS
Instructor Notes:
1.8: Initiation of a Task
Operator enters
Terminal
trans-id ORD1:
PCT
Disk Device
Program Locatio
CICS loads the
DMPGM0 n
Core object module
1
DMPGM0 Disk=B ORDPGM1 into
2
ORD1PGM1 Disk=D virtual storage and
the task begins
Page - 01 - 42
Customer Information Control System Introduction to CICS
Instructor Notes:
Summary
Page - 01 - 43
Customer Information Control System Introduction to CICS
Instructor Notes:
Review Questions
1. PPT Question 1: CICS searches ___ to determine the location of the program.
2. Response Time
3. Task Question 2: ___ is the amount of time a user must wait while a transaction is
being processed.
Page - 01 - 44