Mainframe Interview Questions

Practice the top Interview Questions and Answers on Mainframe, which are mostly asked during Mainframe Job Interviews.

Mainframe Interview Questions

1) What is the difference between LINK and XCTL?

Link is used to go from one module to another and then return to the first module such that the link to a module is used to provide the first some data. Whereas XCTL is used to go from one module without a need to return to the first module.

2) What is the difference between the MRO & ISC?

MRO or Multiregion operation is influenced by the intercommunication facilities that you use with the connection and by your management of the connection. Whereas ISC or intersystem communication s shows the frequency of use of intercommunication sessions and mirror transactions.

3) What happens when a CICS command contains the NOHANDLE option?

In CICS the NOHANDLE option is used to suspends the error handling that was specified in previous EXEC CICS HANDLE CONDITION commands but only for the command on which you put the NOHANDLE.

4) What is Quasi-reentrancy?

Quasi-reentrancy states about the quasi-reentrant program which is in a consistent state when control is passed to it, both on entry, and before and after each EXEC CICS command. Quasi-reentrancy allows programs to access globally shared resources.

5) How are VSAM Files Read in CICS pgms?

EXEC CICS READ FILE('name') INTO(data-area) RIDFLD(data-area) LENGTH(data-value) KEYLENGTH(data-value) END-EXEC. File name is used to read VSAM.

6) What are the differences between Temporary Storage Queue (TSQ) and Transient Data Quene (TDQ)?

Temporary Data Queues can be read sequentially and only once and the record cannot be updated whereas in a temporary storage queue the data can be changed and also can be read any number of times.

7) What is the CICS command that is used to access current date and time?

The FORMATTIME is the CICS command that is used to access the current date and time. You can render the data in the form of month-date-year or year-day.

8) What is MDT in MainFrame?

MDT refers to the Modified Data Tag which is an attribute character of one-bit that allows on-screen modification of the field. In case if the user modified any field then MDT turns on automatically. The data is sent to the host program by terminal only if the MDT is on. There are two types of values in MDT which are 0 and 1. If the value is 0 then it means MDT is off and no modification is going on. If the value is 1 then it means that MDT is on and the terminal operator is modifying the field. Mdt is the source that helps you in controlling the data traffic.

9) What is the CICS LOAD command?

In CICS, the LOAD command makes a copy of an application program, table, or map available to the invoking task.

10) What is a cursor in CICS SQL processing?

In CICS SQL processing, Cursor is being used to send the map to the terminal by using the SEND MAP command.

11) How do you handle errors in CICS pgms?

In CICS, Errors can be handled with the help of Error Handling Commands. It transfers the control of the program to a paragraph or a procedure label. If a program abends due to some reasons like input-output error, then it can be handled using the Handle Abend CICS command.

12) Explain the various ways data can be passed between CICS programs?

The various ways in which data can be passed between CICS programs are:

  • Data is passed among CICS programs through COMMAREA.
  • COMMAREA option is used along with LINK or XCTL commands.
  • Data of COMMAREA can be altered by the called program.


13) What is CEDF?

CEDF is the transaction identifier that allows you to intercept the application programs at the program's initiation and termination, and at each CICS command as well. It is used to start or stop an Execution Diagnostic Facility (EDF) session on a terminal or a region by isolating the problems within an application

14) What is a clustered index?

The clustered index is a unique type of index. This rearranges the order or manner in which the data or information of the table are stored. Also, the rows due to this type of index are stored on the disk, physically as per the index. Hence, there exists one single type of clustered index for one table. And the data pages are stored in the leaf nodes of this clustered index.

15) What is the difference between static and dynamic SQL?

Static SQL is also known as Embedded SQL is a database access procedure that is predetermined in the statement such that these SQL statements in an application do not change at runtime and can be hard-coded into the application. Whereas Dynamic SQL is SQL statements that are constructed at runtime and are less efficient such that the application may allow users to enter their own queries.

16) How do you retrieve the data from a nullable column?

You can retrieve the data from a nullable column by using NULL to look for NULL values in columns.

17) What is a DBRM, PLAN?

DBRM stands for Database Request Module. It is a traditional DB2 serialized representation of the SQL statements in a program. Whereas a PLAN is a result of the BIND process.

18) What is the difference between HIDAM and HDAM databases?

HIDAM has a separate index file which is based on the root segment whereas the HDAM file does not have a separate index file, but the key field of every record is passed through a randomizer which places the record to a particular position in the database.

19) What is Mainframe Testing?

Mainframe Testing is the testing of software services and applications based on Mainframe Systems. It plays an active role in application development and is instrumental in overall development cost and quality as it is a part of end-to-end test coverage spanning platforms.

20) What is the self-referencing constraint?

A self-referencing constraint is a constraint that refers to two columns related by referential integrity which belong to the same table. This constraint exists if a Db2 object is subject to a primary or foreign key relationship in which the parent table and the dependent table are the same tables.

21) Explain lock contention?

Lock contention is a contention that occurs whenever one process or thread attempts to acquire a lock held by another process or thread. It takes place when a thread tries to acquire the lock to an object which is already acquired by another thread.

22) What is the difference between version control and debugging tools?

The difference between Version Control and debugging tools can be stated as Version control, also known as source control, is the practice of tracking and managing changes to software code. Whereas Debugging tool is a computer program that is used to test and debug other programs. A lot of public domain software like gdb and dbx are available for debugging.

23) Explain the difference among the EXEC LINK, EXEC XCTL, and Cobol II static call statements in CICS?

An EXEC LINK is similar to a call; it invokes a separate CICS program and ends with a RETURN to the invoking program whereas an EXEC XCTL transfers control to another CICS program and does not get control back. And COBOL II allows for static calls which are more efficient than the LINK instruction which establishes a new run-unit.

24) Name some commands used for CICS file browsing?

Some of the commands that are used for CICS file browsing are as follows:

  • READ -READ command reads data from a file using primary key.
  • WRITE- Write command is used to add new records to a file.
  • REWRITE -REWRITE command is used to modify a record that is already present in a file.
  • DELETE- DELETE command is used to delete a record that is present in a file.

25) How will you access a VSAM File using an alternate index?

You can access a VSAM File using an alternate index with the help of the given steps:

  • Define the alternate index by using the DEFINE ALTERNATEINDEX command. 
  • Relate the alternate index to the base cluster (the data set to which the alternate index gives you access) by using the DEFINE PATH command. 
  • Load the VSAM indexed data set.

26) What is the primary objective of CICS?

The primary objective of CICS is to manage the sharing of resources, the integrity of data, and prioritization of execution, with fast response. It allocates resources and passes on database requests by the application to the appropriate database manager.

27) How does DB2 store NULL physically?

DB2 stores NULL physically as an extra-byte prefix to the column value. physically, the null prefix is Hex ’00’ if the value is present and Hex ‘FF’ if it is not.

28) What is DCLGEN?

DCLGEN stands for Declaration Generator which is a structure‑generating utility that maps the columns of a database table into a structure also known as a COBOL record that can be included in an embedded SQL declaration section. DCLGEN is used to generates a table or view declaration.

29) What are the two types of transient data queues?

The two types of transient data queues are:

Intrapartition transient data destinations - Application programs use intrapartition destinations to queue, on direct-access storage devices, data that is to be processed by other programs that are running as separate tasks within the same CICS region.

Extrapartition transient data destinations - Extrapartition destinations are queues that are residing on any file system file and are accessible by programs on any CICS region.


30) What does EIB mean?

In the mainframe, EIB stands for Execute Interface Block, which is a control block that is loaded automatically by the CICS for every program.

31) What is SPUFI?

First of all, SPUFI stands for SQL Processore Using File Input. This is a type of database provision, developed by the well-known IBM for the system that they provide, known as DB2. With the help of this users get to put the SQL commands directly into the TSO environment. This way they do not have to embed the commands of SQL into the program.

32) What is the COMMAREA(communications area)?

The COMMAREA or communication area specifies the name of a data area in which the data is passed to a program or transaction. It is an option of the LINK, XCTL, and RETURN commands.

33) What do the keywords MAPONLY and DATAONLY mean?

The keyword MAPONLY specifies that only default data from the map is to be written. Whereas the DATAONLY keyword specifies that only application program data is to be written therefore it is required to specify the attribute characters for each field in the supplied data.

34) What is ASRA ABEND in CICS?

ASRA ABEND is a code in CICS which denotes the issues related to the program check that is done within a particular transaction. There can be lots of reasons for performing program checks. To find the correct nature of the error is created you have to find the program interrupt code in PSW. This program status word is used for recording addresses by machine hardware for recent instructions. If you want to solve this issue of ASRA ABEND in CICS then you need to find the actual location of its occurrence. For identifying the location you can use debugging tools such as cedf or xpeditor. So, after knowing the problem area you can easily find the cause of ASRA ABEND and it becomes easy to solve it.

35) What are the differences between DFHCOMMAREA and TSQ?

The differences between DFHCOMMAREA and TSQ can be stated as DFHCOMMAREA is a special memory area that is provided by CICS to every task such that it passes the data from one program to another program. Whereas TSQ stands for Temporary Storage Queues which is basically a queue of records that can be created, read, and deleted by different tasks or programs in the same CICS region.

36) Which command is used to release a record on which exclusive control is gained?

EXEC CICS UNLOCK END-EXEC command is used to release a record on which exclusive control is gained.

37) What are the different types of Table spaces?

There are three types of tablespaces. These are as follows:

  • Permanent Tablespace - It is used to store your user and application data.
  • Undo Tablespace - It is used to roll back transactions, provide read consistency, help with database recovery, and enable features such as Oracle Flashback Query. 
  • Temporary Tablespace - It is used for storing temporary data, as would be created when SQL statements perform sort operations.

38) How to establish dynamic cursor position on a map?

To establish dynamic cursor position on a map you can use SET CURSOR FIELD.

39) How do you make your BMS maps case sensitive?

You make your BMS maps case-sensitive with the help of functions provided by the mainframe.

40) What is EIB? How it can be used?

EIB stands for Execute Interface Block. It is a control block that is loaded automatically by the CICS for every program.

It contains information about transaction identifier, time, date, etc. which is used by the CICS during the execution of an application program.

41) What is the significance of RDW?

In the mainframe, RDW stands for the Record descriptor word. It holds the length of the variable-length record in the first 2 bytes; the last 2 bytes are reserved.

42) What is the difference between pseudo-conversational and conversational?

The difference between pseudo-conversational and conversational programs can be stated as the pseudo conversational programs are reduced Computer resource usage and they can not hold Database locks. Whereas in conversational programming, the program sends a screen and waits for the user to respond.

43) When are scope terminators compulsory?

Scope terminators are mandatory in COBOL in in-line PERFORMS and EVALUATE statements. For ease of reading, it is suggested coding practice always makes scope terminators explicit.

44) What are different ways of Initiating Transaction in CICS?

There are several different ways of Initiating Transaction in CICS. Some of these are as follows:

  • Entering the trans ID on the native region.
  • By Using the START command. 
  • Using PLT (Program List Table)
  • By Using Return TRANSID
  • Using TDQ ATI
  • By Assigning Trans-ID to PF/PA keys

Leave A Comment :

Valid name is required.

Valid name is required.

Valid email id is required.