CICS task
One run of a CICS transaction; many tasks for the same transaction can run in a region at the same time.
Also written task, task number, EIBTASKN, MXT, quasi-reentrant
A transaction is a type of work, such as ACCT for an account enquiry. A task is one run of it. When a user enters ACCT, CICS starts a task. If a hundred users enter ACCT at the same moment, there are a hundred tasks, all running the same programs.
Each task gets a task number, shown in the EIB as EIBTASKN and on CEMT screens, which is used to find a particular task in messages and dumps. CEMT INQUIRE TASK lists the tasks currently running.
All those tasks share one copy of each program in memory. That only works because CICS programs are written to be quasi-reentrant: they keep their own data in storage CICS gives each task, and never change the program itself. That is why COBOL working storage in CICS belongs to the task, not the program.
A region has a limit on how many tasks can run at once, set by the MXT parameter. When it is reached, new tasks wait. A region at its limit, often because tasks are waiting on something slow, is a common cause of a CICS service slowing down.
Where can I learn this hands-on?
Right here, at ZedBank. You take a junior job at a simulated bank and learn each part of the work by doing it, with Zed beside you. There's nothing to install.
Start at ZedBankRelated
- CICS transactionOne unit of online work in CICS: the whole exchange of receiving a request, doing the work, and sending a response.
- Transaction IDA four-character code that tells CICS which program to run, typed on the screen or triggered by a key.
- CICS regionOne running copy of CICS, with its own programs, files and users. A site typically runs several.
- CEMTThe CICS transaction used to see and change what is running in a region, enquiring on resources and acting on them.
- EIBThe EXEC Interface Block: a set of fields CICS fills in for every task, telling the program about the current transaction.