I have given three sets of CICS questions under tough questions. Learn these quickly before interviews.
1)Explain the differences between a Transaction and a Task?
A) Under CICS, a user can’t directly invoke a program. Instead, the user invokes a transaction, which in turn specifies the program to be run. When a user invokes a transaction, CICS locates the associated program with the transaction, loads it into storage (if it is not there), and starts a task. Where Task is a unit of work which is scheduled by CICS. The difference between transaction and task is that while several users may invoke the same transaction, each initiates a separate task.
2) Describe the basic differences between batch and online systems?
A) In a Batch processing system, transactions are accumulated into groups, or batches, before they are processed. For example, the processing of the Orders collected for the whole day. In an Online processing system, the transactions are processed by the system as soon as the transaction is entered on to the system.
Ex. Airplane Reservation system. In a batch system the turnaround time is measured in hours and days, while for the On-line system it is measured in micro-seconds and seconds. On an Online system, if there is an error in data, the system indicates it immediately, and can be corrected and reprocessed. Allstate Insurance Co., uses CICS V4.1. on their system.
3) What are the four major types of Online Programs?
A) The menu program. The inquiry program. The file maintenance program. The Data Entry program.
4). Describe the different considerations for the Online programs (CICS)?
Ease of use.IBM promotes a user interface standard called CUA (common user Access). CUA provides Entry model, Graphical model, and Intermediate model – the text subset of graphical model.
Performance. Performance is a critical consideration for online programs. Performance for online systems is measured in terms of response time. Many factors affect response time. The most critical factors are the total number of programs running within the CICS system, the Disk I/O, the terminal and host computers and network.
File Integrity. A batch program typically has complete control of the files it uses, so there’s no chance of another interfering with its processing. In an online system however many terminal users use the system simultaneously, and all must have access to the files they require at the same time.
Security. On batch systems Security implementation is simple as the access to the computer system can be controlled. However, in an online system terminals are located at several locations. Login procedure being used can ensure security to a great extent. Using multi-level security to allow only certain users to access files and programs based on the login id helps to secure the system.
5) Describe the most common way a task is started under CICS?
A) By entering the Transaction Identifier on the terminal and pressing Enter Key. When the Trans-id is entered on the CICS screen, it locates the program associated with the trans-id from the PCT. Then the location of the program is determined by CICS by reading the entries in PPT. After the load module is located, it loads it onto the CICS main memory, then task workspace is assigned for CICS own use to execute the task.
The other different ways are by a transaction identifier associated with a terminal for pseudo-conversation, By RETURN command, By START command (Time-driven Automatic Task Initiation), By a DCT entry and TDQ write (Data-driven ATI), and by using 3270 attention identifier key.
6) Distinguish between Multitasking and Multi-threading?
A) Multi-tasking means that the OS allows more than one task to run (be executed) concurrently, regardless of whether the task use the same program or different programs. Multi-threading is the system environment, where multiple tasks share the same program under the multi-tasking environment. Programs are shared by several tasks, and for each task the program work as if it executes the instructions only for that task.
7) Briefly describe the function of each of the various CICS modules?
A) Terminal Control. It is the interface between the CICS application program and the Operating System’s Tele-Communication Access Method VTAM, TCAM or BTAM). Terminal control lets you send text to and receive text from the terminal that initiated the task. An application program that uses terminal control directly must process complicated strings of control characters and data sent to and received from the terminal.
Basic Mapping Support. To relieve the programmer from building complicated strings of control characters to send data to and receive data from terminals, BMS is used that acts as an interface between the program and terminal control. BMS lets you create a map that specifies the format of data as it appears on the terminal display.
File Control. File control acts an interface between the Application program interface and the VSAM files. The application program interface acts as the interface between the file control and application program. When a File control receives a request, it passes on to the appropriate VSAM File, which in turn would manage the data storage.
Program Control. This service manages programs executing within a task as an execution of an application for a particular user. API acts as the interface between the application program and the individual CICS services.
Transient Data Control. It provides the convenient way to use simple sequential files called destinations. Whenever a record is written to a destination it is added to the end. A task reads the first from destination, which gets deleted.
Temporary Storage Control. It provides the simplest method for storing data outside your CICS program’s working storage area. Data is stored on TSQ’s. If the amount of storage is small it can be stored on main memory else a disk.
Interval Control. This service lets you implement time-dependent applications. It provides a method of starting a task that’s an alternative to trans-id. It can be used to specify a task to start at a specific time. Storage Control. It allocates storage space to application programs. Since most programs keep all their data in working storage, which is allocated automatically, you will not use storage control commands frequently.
Task Control. It lets you control the execution of tasks. You can use it to suspend your task temporarily to prevent it from taking exclusive control and monopolizing the CICS resources and also take control over TSQ’s.
Dump control service provides the transaction dump that shows the content of main storage used by the program. You can also use dump control to create dump at specific points without terminating the program for analysis.
Trace control. It maintains the Trace table that indicates the sequence of CICS operations performed within a task.
Journal Control module provides a standardized method of creating Output files called Journals, which are used to restore files in the event of a system failure.
The different table used by the above-mentioned modules are TCT (term_id), FCT (specify which operations are allowed on the file), PCT(trans-id, programs), DCT, TST, … PPT, … JCT and others are SNT, SRT(sys. recovery).