z/OSadvanced

z/OS Address Spaces and Memory Fundamentals

Understand how z/OS isolates work into address spaces and manages virtual storage, and why this matters for both stability and performance reasoning.

Every unit of work on z/OS — a batch job, a TSO session, a CICS region — runs in its own address space, a private virtual storage range giving that work an isolated view of memory separate from every other concurrently running address space, and grasping this isolation model is what lets you reason clearly about both system stability and performance topics that come up in more advanced interviews.

Address spaces are like separate hotel rooms on the same floor — each guest has their own private space that no other guest can wander into or disturb, even though they all share the same building's common hallways and utilities, and if one room's plumbing backs up it's a problem for that room, not the whole hotel.

Key Concepts

1
Each address space provides up to a very large virtual storage range (far exceeding what any single job typically uses), divided into common areas (shared across all address spaces, holding operating system and shared subsystem code/control blocks) and private areas (unique to that specific address space, holding the actual application's program and data). This isolation is precisely why one job's memory corruption or runaway storage usage doesn't directly crash unrelated jobs running simultaneously elsewhere in the system — a foundational reliability property of the whole architecture.
2
z/OS uses paging to back virtual storage with real (physical) memory only as actually needed, moving less-active pages out to auxiliary storage when real memory is under pressure and bringing them back in on demand — this is exactly why a system can support far more total virtual storage across all its concurrent address spaces than it has physical memory installed, at some performance cost if paging becomes excessive (a classic 'system is thrashing' performance problem). CICS and DB2 each typically run as their own set of address spaces (sometimes multiple, for different internal functions), which is why a runaway CICS transaction primarily threatens the stability of its own CICS region rather than the entire LPAR.
3
A well-rounded interview answer connects this to real operational reasoning: understanding address space isolation explains why a batch job's ABEND doesn't take down other concurrently running batch jobs, and understanding paging/real-storage constraints explains why a system exhibiting widespread slowness across many unrelated jobs often points toward real storage contention or excessive paging rather than any single application's bug.