TSO-ISPF JCL COBOL VSAM DB2 CICS Tools Articles Job Portal Forum Quiz Interview Q&A

CICS Components


CICS Components - Control Tables and Control Blocks

CICS core nucleus consists of Control Programs & their corresponding Control Tables.

  • The core portion or Nucleus of CICS consists of IBM supplied control programs and corresponding user defined CICS control tables.

  • CICS control programs perform their primary task based on the entries in the corresponding user defined CICS control tables.

  • Programmers can modify the control table entries depending on requirement.


Control Programs:

CICS nucleus is constructed by the control programs and corresponding control tables. It provides unique advantages. It makes the CICS system highly flexible and thus easy to maintain. Following are the important control programs of CICS.

TCP - Terminal Control Program
  • TCP is used to receive messages from the terminal.

  • It maintains hardware communication requirements.

  • It requests CICS to initiate the tasks.

KCP - Task Control Program
  • KCP is used to simultaneously control the execution of tasks and its related properties.

  • It handles all the issues related to multi-tasking.

PCP - Program Control Program
  • PCP is used to locate and load programs for execution.

  • It transfers the control between programs and in the end, it returns the control back to the CICS.

FCP - File Control Program
  • FCP is used to provide application programs with services like read, insert, update or delete records in a file.

  • It keeps exclusive control over the records in order to maintain data integrity during record updates.

SCP - Storage Control Program
  • It is used to control allocation and deallocation of storage within a CICS region.


Control Tables:

CICS consists of IBM-supplied CICS control programs and tables. These tables need to be updated accordingly with the application information for successful execution of CICS application programs. Following are the important Control Tables.

TCT - Terminal Control Table
  1. When we login to a CICS terminal, an entry is made in the TCT table.

  2. TCT contains the terminal ID's that are connected to current CICS region.

  3. Terminal Control Program along with terminal control table recognize the incoming data from the terminal.

PCT - Program Control Table
  1. It contains the Transaction IDs (TRANSID) and the corresponding program names or program IDs.

  2. TRANSID is unique in PCT table.

PPT - Processing Program Table
  1. PPT contains Program name or Mapset name, Task Use Counter, Language, Size, Main storage address, Load library address, etc.

  2. Program or Mapset name is unique in a PPT table.

  3. CICS receives the transaction and a corresponding program name is allocated to the transaction from the PCT. It checks if the program is loaded or not. If it is loaded, then the task use counter is increased by 1. If the program is not loaded, then the program is first loaded and the task use counter is set to 1. It gets the load library address from the PPT table.

FCT - File Control Table
  1. It contains File names, File type, record length, etc.

  2. All the files used in a CICS program must be declared in FCT and they are opened and closed by CICS itself.

DCT - Destination Control Table

Transient data queues should be predefined in Destination Control Table. Transient Data Program refers DCT.

TST - Temporary Storage Table

If you want to recover Temporary storage queues during system crash, then they should be registered in Temporary Storage Table.

RCT - Region Control Table

If any DB2 commands are used in the program, then the PLAN should be registered here.

SNT - Sign-On-Table

User ID and Password should be registered in Sign-On-Table.

PLT - Program List Table

All the programs that need to be automatically started during CICS start up and Shut down should be listed in Program List Table.

JCT - Journal Control Table

Control information of system logs and journal files is stored in Journal Control Table. Journal Control Program refers to JCT.


If you have any doubts or queries related to this chapter, get them clarified from our Mainframe experts on ibmmainframer Community!

Are you looking for Job Change? Job Portal