Mainframe Path Start learning free
Applied10 min readLesson 1 of 3

Regions, topology and resource definitions

Large CICS systems are not one region but many, each with a job: some own terminals and connections, some run applications, some own files. They talk to each other, are managed as a group with CICSPlex SM, and every resource they use is defined in the CSD.

Why one region is never enough

In the basics course a CICS region was one address space running many transactions. Real production systems run dozens or hundreds of regions. Splitting work across regions gives availability (lose one region and the others keep serving), capacity (spread work across several z/OS images in a sysplex), and isolation (a looping application in one region cannot starve the others).

The classic roles

RoleOwnsTypical job
TOR (terminal-owning region)Terminals, network entry pointsReceives the request and routes it to an AOR
AOR (application-owning region)Application programsRuns the business logic; usually cloned several times
FOR (file-owning region)VSAM filesGives many AORs a single point of access to the same files
OthersQueues, web listeners, LibertySome sites add queue-owning or web-facing regions
A request travelling through a classic CICS topology
User or client3270, HTTP, MQ
TORentry and routing
AOR 1..ncloned application regions
FOR / DB2 / MQdata access

Names vary by site, and modern designs blur the lines. Many shops now use routing regions for web and API traffic, and with VSAM RLS the AORs can open shared files directly, so dedicated FORs are less common than they used to be. The ideas still appear in every architecture diagram and interview.

How regions talk to each other

Managing many regions: CICSPlex SM

Defining and operating a hundred regions one at a time does not scale. CICSPlex SM lets you manage a group of regions (a CICSplex) as a single system. Its main pieces are a central management address space (the CMAS), a web user interface (WUI), and an agent in each managed region. It offers a single view of all regions, workload management that routes each transaction to the healthiest AOR, central resource definition (Business Application Services), and real-time analysis that raises alerts. Many teams use CICS Explorer, an Eclipse-based client, on top of it.

Resource definitions and the CSD

Every program, transaction, file, connection, URIMAP and transaction class a region uses must be defined. These definitions are usually held in the CSD (CICS system definition file), a VSAM KSDS. Definitions are grouped into groups (for example one per application), and groups are collected into lists. At an initial or cold start, the region installs the groups in the lists named by its GRPLIST system initialisation parameter. Several regions often share one CSD.

ToolUsed for
CEDA transactionOnline define, alter, view and install of definitions
DFHCSDUP batch utilityScripted, repeatable changes; what pipelines and change records normally use
CICSPlex SM BAS / CICS ExplorerCentral definitions across many regions
CICS bundlesDeploy a set of resources together, often from a build pipeline
DFHCSDUP job defining an application group (illustrative)
//CSDUP    EXEC PGM=DFHCSDUP
//STEPLIB  DD DSN=CICSTS.SDFHLOAD,DISP=SHR
//DFHCSD   DD DSN=CICS.PROD.DFHCSD,DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSIN    DD *
  DEFINE PROGRAM(PAYINQ1) GROUP(PAYAPP) LANGUAGE(COBOL)
  DEFINE TRANSACTION(PAY1) GROUP(PAYAPP) PROGRAM(PAYINQ1)
  ADD GROUP(PAYAPP) LIST(PRODLIST)
/*

Defining a resource in the CSD does not make it active. It must also be installed in the running region, for example with CEDA INSTALL GROUP(PAYAPP) or by a later cold start. Library names, high-level qualifiers and change procedures depend on site configuration.

TRY IT YOURSELF

Which batch utility updates the CSD from a job?

Show a hint

Its name starts with DFH and ends with UP.

Show the solution

DFHCSDUP is the batch utility for defining, altering, listing and copying CSD definitions.

Common mistakes

Defining but not installing

A new definition in the CSD is not in the running region until it is installed. Check with CEMT INQUIRE before telling anyone the change is live.

Changing definitions by hand in production

Ad hoc CEDA changes are hard to audit, easily drift between regions and environments, and may be missing from the group list used at the next cold start. Use DFHCSDUP jobs or bundles under change control.

Forgetting which region owns what

A 'file not found' in an AOR may really be a missing remote definition or a broken connection to the FOR. Draw the topology before troubleshooting.

What you will see at work

Key terms

Check your understanding.
Take this lesson's quiz and save your progress. Free.

Take the lesson quiz
Recovery, threadsafe and modern interfaces →