What is the difference between CI( CONTROL INTERVAL)and CA(CONTROL AREA)

The CI is a single unit of transfer from secondary to main memory. Inside it will have freespace to store the records of fixed or variable size.
If u try to insert a new record to a ci which is not having any space to hold at that time the half of the record from this ci will be moved to some free ci. This splitting of ic in case of ci full is called CI splitt.
A collection of ci is called as CA. During the ci splitt if it is unable to find the free ci at that time the entire CA will be splitted into two and half will be moved to some free CA. This is called CA splitt. This is the primary mechanism of the VASM to store all the records inside your ksds in sorted order.

What is the procedure for running the batch job in mainframe?

Friends let me explain with an example:--

EG:-Adding two numbers

Step-1:- We need to compile that program and that compiled program(i.e Error free code) we need to keep in one Load Library (EG:-ABCD.GEEK.LOADLIB)

Step-2:- Now we need to execute this program giving PGM=ADD(Program Name) and the Load Libray name(ABCD.GEEK.LOADLIB)

Step-3:- Now In SYSOUT we can view the results

That's it this the process how to compile and execute a batch program

How do you convert flat files to VSAM files

Let's be a little more precise.We will take the tack that you will be creating a KSDS file.First, you need to know which field/s you will be using as the primary key and if you need, alternate keys. Sort the records by that field/s.Use IDCAMS REPRO to load the flat file into the VSAM file.

difference between Intra partition TDQ and Extra partition TDQ?

INTRA PARTITION TD QUEUEs It is a group of sequential records which are produced by the same and / or different transactions within a CICS region. These Qs are stored in only one physical file ( VSAM ) in a CICS region, which is prepared by the system programmer. Once a record is read from a queue, the record will be logically removed from the queue; that is the record cannot be read again. EXTRA PARTITION TD QUEUEs It is a group of sequential records which interfaces between the transactions of the CICS region and the systems outside of CICS region. Each of these TDQs is a separate physical file, and it may be on the disk, tape, printer or plotter.

What is Pseudo-conversation?How it is achieved in CICS Programs?

The programming methodology in which the task will not wait for the terminal users response, but frees and resources after sending the message is call a PSEDUDO Conversational Technique. Terminating the task every time the application needs a response from the user and then starting the next transaction when the user presses a attention key is PSEUDO Conversational Processing.

Generally the I/O request requiring a user input takes 1000 times more time than CPU processing time. So, the idea is to free the current CPU resources till the user gives his response and initiate the same after receiving the response from user. In the meantime, CPU engages itself in processing other programs/transactions. This helps multitasking concept and hnce faster and concurrent processing.

What is the difference between the XCTL and LINK commands?

XCTL : This command passes the control to the same level.Control does not return back after this command is executed.

LINK: link transfers the control to the next lower level.Link command also expects the control to return back.
Syntax is same use link in place of XCTL. 

Both XCTL and LINK are control transfer commands.

XCTL transfers the control to another program (called program) at the level below to the calling program. Control is never returned back to the called program.

LINK transfers the control to another program (called program) at the same of the calling program. Control is expected to return back to the called program.

CICS Error Code AIEV,IBM AEIV due to length error of COMMAREA on EXEC CICS LINK command


You have a modified Node Error Program, DFHZNEP, that issues an EXEC CICS LINK command to another application. This program has worked for many years until upgrading to z/OS 1.8. Now, the program abends with abend code AEIV indicating that there is a length error (LENGERR).


EXEC CICS LINK command has LENGTH parameter coded incorrectly.

Diagnosing the problem

Your Link command is coded similar to the following:



NEPCALEN is defined using the DFHNEPCA macro as an equate:


Thus, NEPCALEN is equated to a full word binary value of x'0000009E', causing the length value to be picked up at location x'9E'. The CICS Translator loads the address of the equated field into the parameter list, and this actually yields an address of x'0000009E'.

Prior to upgrading to z/OS V1.8, location x'9E' either contained a half word of zeros or a half word value not having the left most bit turned on. After upgrading, this storage contains a half word value with the left most bit turned on, thus thought to be a negative value. The negative value causes LENGERR and abendAEIV. 

Source :IBM