Mainframe Evaluation Preparation Guide
This guide covers the core concepts, common errors and abends, and scenario-based questions on
TSO, JCL, COBOL, VSAM, DB2, and CICS.
1. TSO (Time Sharing Option):
- Used for interactive communication with the z/OS system.
- ISPF is used under TSO for editing, compiling, and job submission.
- Common commands: EDIT, SUBMIT, SDSF, ALLOCATE, FREE, LISTDS.
- Errors:
- IKJ56228I: Data set not found - Check dataset name.
- INSO001: Invalid command - Review TSO command syntax.
2. JCL (Job Control Language):
- Controls the execution of programs on the mainframe.
- Key statements: JOB, EXEC, DD.
- Parameters: CLASS, MSGCLASS, TIME, REGION, COND.
- Abends and Fixes:
- S0C4: Protection exception - Addressing issue (bad pointer).
- S0C7: Data exception - Invalid data for arithmetic.
- SB37, SD37, SE37: Space abends - Allocate more space or use secondary quantity.
3. COBOL:
- Business programming language.
- Divisions: IDENTIFICATION, ENVIRONMENT, DATA, PROCEDURE.
- File handling: SEQUENTIAL, INDEXED, RELATIVE.
- Common Errors:
- SOC7: Uninitialized data item used in arithmetic.
- SOC4: Invalid memory access - Check subscripts/indexes.
- File Status Codes:
- 35: File not found.
- 39: File improperly closed.
4. VSAM (Virtual Storage Access Method):
- Types: KSDS, ESDS, RRDS, LDS.
- IDCAMS used for defining and managing VSAM datasets.
- Common Errors:
- VSAM OPEN ERROR: Status 35/92 - Check file definition, access mode.
- Status 93: Lock contention.
5. DB2:
- IBM relational database system.
- Components: Tables, Tablespaces, Buffer pools.
- SQL Types: DDL, DML, DCL.
- Common SQLCODEs:
- -911: Deadlock or timeout - Retry or commit more often.
- -805: DBRM not found - BIND issue.
- -818: Timestamp mismatch - Recompile and BIND.
- Tools: SPUFI, QMF, DSNTEP2.
6. CICS:
- Online transaction processing system.
- Key concepts: Programs, Maps, Transactions, TDQs, TSQs.
- Common Abends:
- AEI0: Map not found.
- AEY9: DB2 not properly connected.
- ASRA: COBOL program abend (e.g., S0C7/S0C4).
Scenario-Based Questions (Examples for Each):
TSO:
- How do you allocate a dataset dynamically in TSO?
- How do you find who is using a dataset in use?
JCL:
- You get SB37 while sorting - what will you do?
- How do you use a symbolic parameter in PROC?
COBOL:
- Write a program to read an input file and load it into a VSAM.
- What happens if a file is opened in I-O mode but not defined as I-O?
VSAM:
- How do you redefine a KSDS cluster to add more space?
- What are alternate indexes and how do you use them?
DB2:
- How do you handle SQLCODE -911?
- Explain cursor handling in a COBOL-DB2 program.
CICS:
- What is the difference between TSQ and TDQ?
- How do you handle multi-screen navigation in CICS?
Tips:
- Always check RETURN-CODE and FILE STATUS.
- Use Abend-AID, SYSOUT, and SYSUDUMP for abend diagnosis.
- Understand the flow between programs, JCL, and datasets.