LATEST Mainframe Interview Questions [2020] & Answers | ACTE
Mainframe Interview Questions and Answers

LATEST Mainframe Interview Questions & Answers

Last updated on 18th Jun 2020, Blog, Interview Questions

About author

Karthik (Head/ Director Command Center )

High level Domain Expert in TOP MNCs with 8+ Years of Experience. Also, Handled Around 24+ Projects and Shared his Knowledge by Writing these Blogs for us.

(5.0) | 16947 Ratings 14792

The Mainframe advertise is relied upon to develop to more than $5 billion by 2020, from just $180 million, as per Mainframe industry gauges. In this way, despite everything you have the chance to push forward in your vocation in Mainframe Development. We offer Advanced Mainframe  Interview Questions and answers that assist you in splitting your Mainframe interview and procure dream vocation as Mainframe Developer. Over thousands of vacancies available for the Mainframe developers, experts must be acquainted with all the components of Mainframe technologies. This is necessary for the students in order to have in-depth knowledge of the subject so that they can have better employment opportunities in the future.

Here are 100 Basic Mainframe Interview Questions and Answers for freshers and experienced both.

1. What is a mainframe?


 A mainframe is also known as “big iron”. It is a large and multi-user computer device that helps to perform TIPS per second. Traditionally, mainframes were related to instead of distributed computing, Distinction is blurring smaller between traditional centralized computing and distributed computing because small computers become additional powerful and mainframes become additional multi-purpose.

2. What Is Full Form Of Spool?


To spool means “to operate (an input/output device) by using buffers in main and secondary storage.” Not sure if there is any full form. If you meant SDSF, it stands for system display and search facility

3. Define WHERE and its usage?


 The clause “WHERE” isolates a row or an element during the usage of a related system.

4. Define how the LIKE table could be created?


The usage of LIKE parameter could create the LIKE table by the CREATE statement. These tables are usually required during the testing of the production environment.

5. Define the necessity of runstats among the environment tests?


It is used for the clearing of the different values of the catalog columns. Since this column is already equipped with default values, the end result may not be as expected.

6. What is the utilization of Linkage area in COBOL?


  Linkage area is utilized as a part of COBOL if the program needs to speak with JCL by means of PARM parameter or program needs to speak with another program.

7. How is JCL used for testing batch programs?


JCL is the management language for running programs in a very batch atmosphere. Once running a check job, the JCL that truly controls the method is submitted as a check JOB.

8. Explain foreign keys?


Foreign keys are properties of a particular table having matching entries to a primary key in some other table. This results in the formation of a relation between the two tables.

9.  What is the function of DBCTL?


 It is used to access IMS files for CICS Transactions and it is an address space. PSBs, DBDs, IMS files and ACBs are fixed into DBCTL for file access. Now if an IMS call is generated by a CICS program the processing gets transferred to DBCTL to be carried, and the result is sent as a reply.

10. What are the different types of Table spaces?


There are three table spaces, namely:

  • Simple
  • Segmented
  • Partitioned

11.  How are composite and multiple indexes different?


Multiple indexes are two indexes, one each for a column of the same table. Composite index is only one index, which consists of combined values of 2 columns of a table.

12. Name the units in the COBOL project.


Identification Division, Environmental Division, Data Division, Practical Division.

13. What are the various data types in COBOL?


  •  Alpha-numeric (fx)
  • alphabet (a)
  • number (9).

14. What is the difference between static and dynamic SQL?


  • In Stats SQL, the statement is ready before the program is dead and therefore the operational type of the statement persists on the far side of the execution of the program. A program containing static SQL statements should be processed by associate degree SQL precompiled before it’s compiled.
  • A dynamic SQL statement is ready throughout the execution of an associate degree SQL application, and therefore the operational type of the statement isn’t persistent. The supplied type of the statement may be a character string passed to DB2 victimization the static SQL statement PREPARE or EXECUTE IMMEDIATEly.

15. What is the status of 88?


 Conditional names.

16. What is the update cursor?


An update pointer permits you to delete or update the present row; that’s, the foremost recently fetched the row. The aim of the keyword UPDATE in a very pointer is to let the information server apprehend that the program will update (or delete) any row that it fetches. The information server places an additional exacting lock on rows that square measure fetched through associate degree update pointer and a less exacting lock once it fetches a row for a pointer that’s not declared therewith keyword..

17. What is the ISER NUMERIC rule?


NUMERICs can be used in alphanumeric items, countless & packed decimal materials can be entered using digital & packed decimal items. Turns NUMERIC TRUE to the item only 0-9. However, if the tested item is a signed item, it can have 0-9, + and -.

18. What are the divisions in a COBOL program? Which one is the mandatory division among them?


 Data division, environment division, identification division, and procedure division. Out of these, identification is the most important and mandatory division.

19. What is the difference between index and subscription?


The symbol refers to the array arrangement when the displacement (in the absence of bytes) from the beginning of the start. Only one code can be changed using PERFORM, SEARCH & SET. SEARCH must index a table to use SEARCH ALL.

20. What is the utilization of COPYBOOK in COBOL? Would we be able to utilize a similar COPYBOOK for various records in a similar program?


COPYBOOK spares the format of any record and uses a similar design over any program. Indeed, we can elude the same copybook for various documents if the format is the same and REPLACING choice is to be utilized alongside COPYBOOK for that.

    Subscribe For Free Demo

    21. What is the distinction amongst INCLUDE and COPY?


    A minimal distinction is there in the way they work. They both help to extend design in a program.  The central contrast is INCLUDE gets extended at PRE-COMPILATION organize itself and is the motivation behind why all DCLGEN individuals are extended utilizing INCLUDE.

    22. How to characterize tables in COBOL?


    Happens condition is utilized to characterize tables or exhibits in COBOL. Table components can be eluded by utilizing either SUBSCRIPT or INDEX.

    23. How do COMP fields help in COBOL?


    COMP fields, for the most part, are utilized for ideal utilization of room and for speed handling of arithmetic activities.

    24. Where do you utilize 88 level things in COBOL?


    88 levels are uncommonly implied for restrictive factors and take choices in view of specific conditions in a program. We can utilize SET to dole out an incentive to 88 level variables.

    25.  Can we move Alphanumeric incentive to the Numeric field?


    Indeed, we can move, and it won’t make any issue as long it is just a MOVE statement. But the program may bomb some of the time in case the field is utilized as a part of number-crunching computations.

    26. How EVALUATE helps in COBOL?


    Assess is utilized as a part of restrictive preparing, and it disentangles the way we compose IF – ELSE explanations.

    27. How to distinguish whether a CALL proclamation is a STATIC or DYNAMIC call?


    On the off chance that the program name is eluded explicitly in the CALL articulation then it is considered as a Static call and if a working stockpiling variable alludes in the CALL explanation then it is considered as a Dynamic call.

    28. Explain lock contention?


    The DBD only allows entry to one object at a particular time. Lock contention is said to happen when more than one object seeks permission for execution simultaneously.

    29. Name and explain the type of locks?


      There are three types of lock, namely:

    • Shared: This type of lock permits two or more programs to read from the locked space but does not allow them to change it.
    • Update: This lock is more lenient. It permits the program to read and change the locked space.
    • Exclusive: This lock restricts all users from accessing the locked space.

    30. What will happen if both STEPLIB and JOBLIB are specified?


    JOBLIB is a Data Definition statement. It determines the location of the program, which is called the EXEC statement. JOBLIB applies to all steps present in that whole job. It is not possible to use it for catalogued procedures. STEPLIB is very similar to JOBLIB. It determines the dataset in which the program exists. It applies only to one step and not the entire job. STEPLIB can be used at any position in the job step and can also be used for catalogued procedures.

    In a situation when both STEPLIB and JOBLIB are specified, JOBLIB will be ignored by the system.

    31. What is COMP-1? COMP-2?


    COMP-1: Single precision floating point. Uses 4 bytes.

    COMP-2: Double precision floating point. Uses 8 bytes.

    32. What is the difference between SEARCH and SEARCH ALL?


    SEARCH: is a serial search.

    SEARCH ALL: is a binary search & the table must be sorted ( ASCENDING/DESCENDING KEY clause to be used & data loaded in this order) before using SEARCH ALL.

    Course Curriculum

    Get Hands-On Practical Mainframe Training & Advance Your Career

    • Instructor-led Sessions
    • Real-life Case Studies
    • Assignments
    Explore Curriculum

    33. What is binary search?


    Search on a sorted array. Compare the item to be searched with the item at the center. If it matches, fine else repeat the process with the left half or the right half depending on where the item lies.

    34.  How many bytes will a S9(8) COMP field occupy ?


     4 bytes.

    35. In the JCL, how do you define the files referred to in a subroutine ?


     Supply the DD cards just as you would for files referred to in the main program.

    36. How is a sign stored in a comp-3 field?


    It is stored in the last nibble. For example if your number is +100, it stores hex 0C in the last byte, hex 1C if your number is 101, hex 2C if your number is 102, hex 1D if the number is -101, hex 2D if the number is -102 etc…

    37. Express the distinction amongst JES2 and JES3?


    In the JES3, the distribution of informational indexes for the means happens prior to the activity is planned for execution. While in the JES2, this assignment happens prior to the execution of each progression.

    38. What is Clarify confinement level?


    Confinement level is how much the initiation assembles in the center if it is disconnected from the actuation bunches executing in the meantime.

    39. What is sort ordering for search all


     It can be done by Ashoka or Designed. ASCENDING default. If you want to be sorted in a sequence defined in the order, you must provide key terms when defining the sequence. (You have to load the table in the specified order).

    40. Define Alias?


    It is auxiliary to an equivalent word. Nom de plumes are produced for appropriated situations in order to maintain a strategic distance from the utilization of area frontrunner of a view or table. It isn’t released when the table is erased.

    41. My plan has a range of 10 items. Due to an error, if the program accesses the 11th item in this line, the program will not reject it. What’s wrong with that?


    If you want to check the range limits, you need to use the client option SSRANGE. The default is NOSSRANGE.

    42. Define NOTCAT2?


    It remains a VMS note that demonstrates the nearness of a copy inventory in the database. This issue can be settled by evacuating one of the passages and after that including another one.

    43. How is a type of file defined in the JCL that executes the COBOL program?


    SORTWK01, SORTWK02, …… dd Use the names in the step. The number of sorted data depends on the size of the sorted data, but at least 3 is required.

    44. How are composite and multiple indexes different?


     Multiple indexes is two indexes, one each for a column of the same table. A composite index is only one index, which consists of combined values of 2 columns of a table.

    45.  Define SPUFI?


      SPUFI is an abridged-type of SQL Processing Using File Input.  It’s a menu-driven instrument which the designer uses for making objects in the database.

    46. What is DRDA?


    DRDA stands for Distributed Relational Database Architecture. DRDA is a connection protocol for relational database processing which IBM and vendor databases use. It consists of rules for communication between a remote relational DBMS and the application.

    47.  What is SLA?


    SLA is Service Level Agreement between the customer and the vendor. It is significant in support systems wherein the terms could be like response should be given within two hours that an abend has occurred or for online systems, the system should not be down during user daytime. 

    48. Explain Paging Concept in memory?


    Whenever a particular data item is requested, the CPU hits primary memory or RAM first to see if the record corresponding to the data item is present on any page in primary memory. If not, it does paging and brings in the corresponding page from secondary/auxiliary memory or hard disk to primary memory and then returns the data item to the user.

    49. Define deadlock in DB2?


    When there is an independent process that gets contended for the same or reserved resource of one another, that is when it is called a deadlock. The SQL codes for deadlock are -911 and the -913.

    50. Can you name a few software running under the mainframe?


    IBM is the pioneer in the mainframe computing field. Some of their software are COBOL, Enterprise COBOL, JCL, VSAM, CICS, DB2, etc. Other players in the market are Unisys (Clear path), Hitachi (zSeries), HP (NonStop) and Fujitsu(BS2000/ ICL VME) amongst many others.

    51. 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 the 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.

    Course Curriculum

    Enroll in Best Mainframe Courses and Get Hired by TOP MNCs

    Weekday / Weekend BatchesSee Batch Details

    52. How do you access an uncataloged dataset in a JCL?


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

    53. 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.


    The basic syntax of a JCL JOB statement is below.

    • //Job-name JOB Positional-param, Keyword-param  

    54. 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 are made to the code in programs like COBOL, JCL, etc., then the tester does not need the emulator to set up on the machine. The changes can be applied through one terminal emulator and 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.

    55. 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.

    56. 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.

    57. How to declare Host variables?


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

    • EXEC SQL  
    • INCLUDE table-name  
    • END-EXEC.  
    • END-EXEC.  

    58. How do you use EXPLAIN in DB2?


    When associate degree SQL is dead against or sure to a DB2 information DB2 Optimizer tool defines the access path accustomed to access the info. This access path is outlined per tables’ statistics generated by DB2 Runstats tool. By victimization following manner, we are able to use just in DB2.

    • Create an inspiration table
    • Run justify statement for the question with a question no (this inserts the info within the higher than setting up table)
    • Retrieve (select *) the info hold on within the setup table for the question no

    59. When do you use a LIKE statement?


    To do partial search e.g. to search employees by name, you need not specify the complete name; using LIKE, you can search for partial string matches.

    60. What is the meaning of underscore ( ‘_’ ) in the LIKE statement? 


     Match for any single character.

    61. What do you accomplish by GROUP BY … HAVING clause? 


     GROUP BY partitions the selected rows on the distinct values of the column on which you group by.

    HAVING selects GROUPs which match the criteria specified

    62. Consider the employee table with column PROJECT nullable. How can you get a list of employees who are not assigned to any project?


    • FROM EMP

    63. What are the situations which can bring about the Infinite circle by utilizing PERFORM?


    With PERFORM TIMES and PERFORM UNTIL a large circle can be created.

    64. Define the utilization of TEST BEFORE as well as TEST AFTER in the PERFORM explanations?


    TEST BEFORE and TEST AFTER are utilized to characterize when the condition to be checked.

    65. What are correlated subqueries?


    A subquery in which the inner ( nested ) query refers back to the table in the outer query. Correlated subqueries must be evaluated for each qualified row of the outer query that is referred to.

    66. What is a cursor? why should it be used? 


    Cursor is a programming device that allows the SELECT to find a set of rows but return them one at a time.Cursor should be used because the host language can deal with only one row at a time.

    67. How would you retrieve rows from a DB2 table in embedded SQL?


    Either by using the single row SELECT statements, or by using the CURSOR.

    68. Apart from cursor, what other ways are available to you to retrieve a row from a table in embedded SQL?


    Single row SELECTs.

    69. What is DCLGEN ? 


    DeCLarations GENerator: used to create the host language copy books for the table definitions. Also creates the DECLARE table.

    70. What should you do to resolve the SOC-7 error?


    Basically you have to fix the harmful data. Many times the reason for SOC7 is an unreleased item. Explore that opportunity first. Many installs provide you with a padding for the run time (which is created by calling some subroutines or OS server as an assembly language). This is the last step that has been overcome to dumps Offline Offline. Get the serial number of the source code in this corner to test the output of the XREF list and output it. You can see the source code to find the error. To capture the run time, you need to define some data (such as SYSABOUT) at JCL. If none of these are helpful, use judgment and display to change the source of the error. Some installation packages may contain program diagnostic tools. Use them.

    Mainframe Sample Resumes! Download & Edit, Get Noticed by Top Employers! Download

    71.  Is it mandatory to use DCLGEN? If not, why would you use it at all? –


     It is not mandatory to use DCLGEN.

    Using DCLGEN, helps detect wrongly spelt column names etc. during the pre-compile stage itself ( because of the DECLARE TABLE ). DCLGEN being a tool, would generate accurate host variable definitions for the table reducing chances of error.

    72. What is REORG? When is it used?


    REORG reorganizes data on physical storage to cluster rows, positioning overflowed rows in their proper sequence, to reclaim space, to restore free space. It is used after heavy updates, inserts and delete activity and after segments of a segmented tablespace have become fragmented

    73. Will precompile of an DB2-COBOL program bomb, if DB2 is down?


    No. Because the precompiler does not refer to the DB2 catalogue tables.

    74. When will you choose to run RUNSTATS?


    After a load, or after mass updates, inserts, deletes, or after REORG.

    75. What are the contents of a DCLGEN?


    • EXEC SQL DECLARE TABLE statement which gives the layout of the table/view in terms of DB2 data types.
    • A host language copy book that gives the host variable definitions for the column names.

    76. How To Define A Directory And What Is The Structure And Definition For The Same?


    As in DIRECTORY we can store files as well as another DIRECTORY which includes other files but PDS includes only members not another PDS inside it.

    77. How To Send A Sms To A Mobile Through Mainframe VM’s?


    SMS in mainframe is the Storage Management System. I hope it has nothing to do with telephone SMS.

    78. Will precompile of an DB2-COBOL program bomb, if DB2 is down?


    No. Because the precompiler does not refer to the DB2 catalogue tables.

    79. When is the INSPECT verb utilized as a part of COBOL?


      Investigate is utilized to know a number of times a particular character happens or to supplant some bit of information.

    80. How number juggling tasks are performed in COBOL?


    We can do a wide range of number juggling activities in COBOL.

    81. State the difference between GOBACK, STOP RUN and EXIT PROGRAM in COBOL?


    The fundamental differences between GO BACK, STOP RUN, and EXIT PROGRAM in COBOL are:

    • GOBACK returns control to the calling program
    • STOP RUN stops the present work unit and returns control to OS
    • EXIT PROGRAM is utilized to leave a program that has been called by another program

    82. What is the contrast between Delimited by Space and Delimited by Size?


    In delimited by Space, Space is considered as a delimiter. In delimited by measure, add up to the size of information thing is considered as delimiter

    83. Define COMP – 3 fields and its utilization?


    COMP-3 is pressed decimal portrayal of information and is utilized to spare space.

    84. Can the values of alphanumeric be moved to variable numeric?


    Truly, it can be done. May confront particular information cases (S0C7) blunder in the event that the field is utilized as a part of any computation. This data answers COBOL inquiries questions identified with information development of various sort of factors.

    85. What Is The Panel Name Of Ispf Primary Option Menu?


    Panel name is ISPf/PDF primary option menu

    86. What Is The Basic Difference Between “directory” And “pds” In Ibm Mainframe?


    A PDS or Partitioned Data Set is a dataset containing multiple members, each of which holds a separate sub-data set, similar to a directory in other types of file systems. This type of dataset is often used to hold executable programs (load modules), source program libraries (especially Assembler macro definitions). A PDS is most somewhat analogous to a Zip file on microcomputers, except the files stored in a PDS are not compressed.

    The Partitioned Data Set can only allocate on a single volume with the maximum size of 65536 tracks. Besides members, a PDS consists also of their directory. Each member can be accessed directly using the directory structure. Once a member is located, the data stored in that member is handled in the same manner as a PS (sequential) data set.

    87. What Is The Size Of The Address Space In Kbs For 16 Bit Address Space?


    • The size of address space for 16 bit address space is 64kb
    • For s/370 the address space 21 bit- 16MB
    • For s370XA and EXA address space is 31 bit- 2GB

    88. Define the procedure to pass an incentive from JCL to COBOL?


    We can go by utilizing RETURN-CODE. There’s a characterized word RETURN-CODE in COBOL that can be utilized to pass information from the program to the JCL. This is particularly valuable when some particular return code is accounted for in an occupation. Typically the activity returns 0 or 4 or in some cases 8 or 12 return code if any irregularity happens. This can be changed by utilizing RETURN-CODE of the program. This data answers COBOL inquiries questions identified with passing information from COBOL to JCL.

    89. What is the use of the EVALUATE statement?


      An assessment is a case statement and can be used to replace local IFS. The difference between EVALUATE and the trial is that EVALUATE requires any ‘breakdown’ from EVALATEATE, with a competition taking place.

    90. What is IMAGECOPY ? 


    It is a full backup of a DB2 table which can be used in recovery.

    91. How do you come out with a valuation report?


    Whenever the debates take place, the control will automatically be sent to the next penalty after the EVALUATE report. No additional code needed.

    92. In a valuation statement, when can I give a complicated situation?



    94. What is the purpose terminator? Give examples.


    The terminal is used to indicate the end of a verb, e.g. EVALUATE, END-EVALUATE; IF, END-IF.

    95. How do you act?


      PERFORM … …


    96. When should you use an inline program?


    The body of the action will not be used in other columns. If the body of the event is a common type of code (used from many places in the program), it is best to place the code in a custom package and use the PERFORM paragraph than the Internet program.

    97. What is the difference between the series and the next week?


    CONTINUE is a zero statement (do not do anything), while the next article next to the next sentence (!!) (a sentence for the rest of the period)

    98. What does EXIT do?


    Nothing done! If used, it should be a sentence in one sentence.

    99. Can I retrieve a (X) (100) field with X (200) field?


    Yes. Again and again, both fields begin at one place.

    For example:

    • 01 WS-TOP PIC X (1)
    • If you are ’12’ for WS-TOP-RED
    • The display will show WS-TOP 1 times
    • The display will show WS-TOP-RED 12.

    100. What is the figurative constant in COBOL?


    They are the reserved words that specify certain alphabetic or numeric constant values like zero, spaces, quotes, high and low value/s, etc

    Are you looking training with Right Jobs?

    Contact Us
    Get Training Quote for Free