REGION parameter
A JCL parameter that sets how much virtual storage a job step's programs may use.
Also written REGION=, REGION=0M, MEMLIMIT
REGION sets how much virtual storage a job step's programs may use below the 2 GB bar. It can be coded on the JOB statement, where it applies to every step, or on an EXEC statement for one step, for example REGION=64M.
REGION=0M asks for as much as the site allows. Most sites use exits to set limits, so 0M rarely means unlimited in practice, but it is common in example JCL for programs that need a lot of storage. Storage above the bar is controlled separately by MEMLIMIT.
If a program needs more storage than the REGION allows, it fails, often with abend 878 or 80A, which mean it could not get the storage it asked for. If the REGION asks for more than can be given at the start, the step may fail with 822.
The fix is usually to increase REGION for that step. If a program keeps needing more and more, it may have a fault, such as asking for storage in a loop and never freeing it.
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
- Virtual storageThe memory each address space sees, which z/OS maps onto real memory and disk so that every program appears to have its own large space.
- JOB statementThe first statement in every job, giving it a name and telling the system who is running it and how to treat it.
- EXEC statementThe JCL statement that starts a step by naming the program or procedure to run.
- AbendAn abnormal end: a program stopping in an uncontrolled way rather than finishing and reporting a result.
- Address spaceAn isolated pocket of memory in which a program runs, so that one program cannot interfere with another.