Javatpoint Logo
Javatpoint Logo

Mainframe Interview Questions

Mainframe Interview Questions

Nowadays, all the business, transactions, communications are real-time. So to perform all these tasks, agencies need a powerful computer on the server-side, which processes the instructions and provides the output in seconds. Based on uses, we can categorize computers in four categories, i.e., Supercomputer, Mainframe Computer, Mini Computer, and microcomputer. A mainframe computer is a second-fastest computer after supercomputer to execute complex and lengthy calculations. It is more dominant than Mini and Microcomputer. But it is less potent than Supercomputer. A mainframe computer is used in a large organization.

Here is a list of some most frequently asked mainframe interview questions and their answers.

1) What is the Mainframe computer?

A mainframe computer is a combination of many processors and memory (RAM). It works as a CPU for many workstations and terminals connected with it. A mainframe computer is used to perform a huge amount of data operations in petabytes. It can allow thousands of user to process. Its name 'Mainframe' stands for a frame for holding several processors and main memory. Mainframe computer plays a significant role in e-business where thousands of people connect to a server to precede their request in real-time. Similarly, in banking, government, education system mainframe computer plays a valuable role.

Mainframe Interview Questions

2) What is DRDA?

DRDA (Distributed Relational Database Architecture) is a set of protocols or rules that enables the user to access distributed data regardless of where it physically stored.

  • It is an architecture developed by IBM.
  • It enables relational data to distribute among multiple platforms.
  • In DRDA, both like and unlike platforms can communicate with one another. Example DB2 subsystem can communicate with DB2 as well as RDBMS.
  • It provides an open, robust heterogeneous and distributed database environment.
  • DRDA provides techniques of coordinating communication among distributed locations.

3) Describe the benefits of DRDA?

The key benefits of DRDA are as follows.

  • DRDA is the only protocol that supports distributed RDBMS.
  • One significant benefits provided by DRDA is its clearly stated set of rules for supporting distributed data access.
  • It is available today, and many vendors are stepping up on the DRDA.

4) What is IMS?

The term IMS stands for Information Management System. It's a database and transaction management system for Mainframe. IBM introduced it in 1968. Since then, it has gone through several upgradations and adapt some new programming tools and environments. IMS is one of two key legacy databases and transaction management subsystems from IBM that run on mainframe operating systems, and other is CICS.


5) Name the versions of IBM mainframes have introduced in the market?

Have a look at the History of IBM mainframes (1952-present).

Market name

  • 700/7000 series
  • System/360
  • System/370
  • IBM 308X
  • IBM 3090
  • System/390
  • zSeries 900, 800, 990, and 890
  • System z9
  • System z10
  • zEnterprise System (z196, zEC12, z13, z14)

Architecture

  • System/360
  • System/370
  • S/370-XA
  • ESA/370
  • ESA/390
  • z/Architecture

6) What is the need for a secondary index in IMS?

The secondary index is a substitute path into any IMS database. It can be used as a file to obtain the required data. A secondary index is also used to process a segment type in a sequence other than the one that is defined by the segment's key. A secondary index can also operate a segment type based on a requirement in a dependent segment.

Secondary indexing provides an opportunity to meet the different processing requirements of various applications.


7) What is CICS?

The term CICS stands for Customer Information Control System. CICS was introduced in 1968 by IBM. CICS provides an MVS environment to develop and execute an online application. Nowadays, CICS has become the most generally used server for Internet applications. CICS is a transaction processing system which is also called as OLTP (Online Transaction Processing Software). CICS is a data communication system that supports a network that has hundreds of terminals.


8) What are the CICS Transactions?

CICS transactions perform multiple operations like defining CICS table entries, updating records, etc., in the CICS region.

Some important CICS transactions supplied by IBM are as follows.

  • CESN (CICS Execute Sign On)
  • CEDA (CICS Execute Definition and Administration)
  • CEMT (CICS Execute Master Terminal)
  • CECI (CICS Execute Command Interpreter)
  • CEDF (CICS Execute Debug Facility)
  • CMAC (CICS Messages for Abend Codes)
  • CESF (CICS Execute Sign Off)
  • CEBR (CICS Execute Temporary storage Browse)

9) Define CICS interface block?

Any application program needs an interface to interact with the CICS. EIB (Execute Interface Block) is an interface for application programs that allowed communication with the CICS. EIB holds the necessary intermediate information for the execution of a program.


10) Explain EIB?

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

  • The EIB is unique for a task, and it exists till the duration of the task. It holds a set of system-related information related to the task.
  • It holds information about transaction identifier, time, date, etc., these identifier used by the CICS during the execution of an application program.
  • Every program that executes as a part of the task has access to the same EIB.
  • The runtime data in EIB can be viewed by executing the program in CEDF mode.

11) What are the COBOL Coding Sheets?

COBOL was introduced in the era of batch processing. So the COBOL program needed to be punched on the card and loaded in the punch card reader. For this process, there is a predefined structure of the coding area where the COBOL word is punched. That coding structure is called as the COBOL coding sheet.

In other words, the source code of a COBOL program must be written in a format that is supported by the compiler. These programs are written in Coding Sheets.

The Coding sheet contains 80 character position on each sheet.


12) What is the utilization of COPYBOOK in COBOL? Could we utilize a similar COPYBOOK?

COPYBOOK spares the format of any record and uses a similar design over any program. It is a selection of code that defines data structures.

If a particular data structure that repeatedly used in many programs, then we will avoid rewriting the same data structure and use copybooks. We will use a COPY statement to include a copybook in a program. The COPY statement is used in the Working Storage Section.

Therefore, we can utilize a similar COPYBOOK.


13) Describe the COBOL database components?

A COBOL program requires the following components to interact with database DB2.

  • Embedded SQL
  • DB2 Application Programming
  • Host Variables
  • SQLCA
  • SQL Queries
  • Cursors

14) What are the rules for DB2 programming?

The rules that are necessary for a COBOL-DB2 program are as follows.

  • All the SQL statements must be delimited between EXEC SQL and ENDEXEC.
  • The SQL statements must be written in Area B.
  • All the tables that are used in a program must be declared in the WorkingStorage Section. This is done by using the INCLUDE statement.
  • All SQL statements except INCLUDE and DECLARE TABLE must belong in the Procedure Division.

15) Explain Host Variables?

Host variables are data substances defined within a COBOL program. They are used to forward values to and receive values from a database. It can be determined under the File Section, Working-Storage Section, and Local-Storage Section or Linkage Section of COBOL program. It can have any level number up to 48. Level 49 is reserved for VARCHAR data items.

The data item name should begin with a colon (:) when a host variable name is used within an embedded SQL statement. It enables the Compiler to differentiate between host variables and tables or columns with the same name.

Host variables can be used in one of the given two ways.

Input host variables

Input host variables are used to specify data that will be conveyed from the COBOL program to the database.

Output host variables

Output host variables are used to hold data that is returned to the COBOL program from the database.


16) How to declare Host variables?

Following syntax are used to declare host variables and include tables in the Working-Storage section:


17) Can we move alphanumeric incentive to the Numeric field?

Yes, we can move alphanumeric incentive to the numeric field, and it won't make any issue. It can be done by a MOVE statement. But sometime the program may crash, in case the field is in utilized as a part of number-crunching computations.


18) Define DB2 and its Databases?

DB2 is a part of data management product, including database servers, developed by IBM. DB2 supports the relational model. Nowadays, some products have extended their functionality to support object-relational features and non-relational structure like JSON and XML.

Mainframe Interview Questions

A DB2 database is a collection of different type of data like Tables, Schemas, Bufferpools, Logs, Storage groups, and Tablespaces. These data substances work together to handle database operations efficiently.


19) How is a type of file defined in the JCL that executes the COBOL program?

SORTWK01, SORTWK02, SORTWK03 ... dd Use the names in the step. The number of sorted data hang on the size of the sorted data, but at least three is required.


20) What are some uses of the Evaluate statement? Explore the syntax of the evaluate statement?

Some general uses of Evaluate statement are as follows.

  • Evaluate supports multi-selection control during the program execution.
  • Evaluate validate multiple conditions in a single slot.
  • Evaluate statement in COBOL is similar to Case or Switch statements of other languages.
  • Evaluate is an assessment is a case statement and can be used to replace local IFS.

Syntax


21) How many types of Evaluate statements are available?

Based on uses, we can divide the Evaluate statement into the following types.

  • Simple EVALUATE
  • EVALUATE TRUE
  • EVALAUTE with THRU
  • EVALUATE with multiple WHEN conditions
  • EVALUATE with MULTIPLE conditions

22) What is JCL in mainframe, and how many types of JCL statements are there for a job?

JCL stands for Job Control Language. JCL is a scripting language used on IBM mainframe operating system to instruct the system for the batch job. It is a set of statements that you code to tell the operating system about the task you want to perform. Sometimes this set of statements is quite large, but most jobs can be run using a very small subset.

JCL statements notify OS where to find the required input, how to process that input, and what to do with the resulting output.

There are three main types of JCL statements for all jobs:

  • First one is a statement to identify the unit of work that the operating system is to perform.
  • The second statement is EXEC statements, depending on the number of job steps within the job.
  • The third statement is DD statements to identify the input and output data sets.

23) How do you access an uncatalogued dataset in a JCL?

It can be done by using the UNIT and VOL serial parameters in the dataset DD statement


24) When the JOB statement is used?

JOB statement gives the job identity to the Operating System (OS), in the spool and the scheduler. It is the first control statement in a JCL. The available parameters in the JOB statement help the OS in allocating the right scheduler. It is also useful for analyzing the required CPU time and issuing notifications to the user.

Syntax

The basic syntax of a JCL JOB statement is below.


25) What is the mainframe testing? Categorize the mainframe manual testing?

Mainframe Testing is testing of Mainframe Systems. Mainframe Testing is similar to web-based testing. The Mainframe application is tested against the test cases developed using requirements.

Mainframe Testing is generally performed on the deployed code using various data combinations set.

While performing Mainframe testing, the tester only needs the navigations of the CICS screens.

If any changes made to the code in programs like COBOL, JCL, etc., then tester does not need the emulator to set up on the machine. The changes can be applied through one terminal emulator will act on others too.

Mainframe manual testing can be classified into two categories.

Batch Job Testing

In batch testing, the testing process consists of executions of batch jobs for the functionality implemented in the current release.

Online Testing

Online Testing is known as testing of CICS screens, which is similar to testing of the web page.