ADDRSPC - Address Space parameter
`ADDRSPC` is a JCL (Job Control Language) parameter used on the `JOB` or `EXEC` statement to specify the type of address space in which a job step or an entire job will execute. It primarily controls whether the virtual storage pages associated with the address space are *fixed* in real storage or are *releasable* (pageable).
Key Characteristics
-
- Placement: Can be specified on the
JOBstatement to apply to all steps within the job, or on anEXECstatement to apply only to that specific job step, overriding anyJOBstatement specification. - Values: The most common values are
VIRT(the default, implying pageable virtual storage) andVIRT,FIXED(specifying that the virtual storage pages for the address space should be fixed in real storage).REALandNONEare obsolete and treated asVIRT. - Paging Control:
ADDRSPC=VIRT,FIXEDinstructs z/OS to prevent the address space's virtual storage pages from being paged out to auxiliary storage, keeping them resident in real memory.ADDRSPC=VIRT(orREL, which is the default forVIRT) allows the system to page out the address space's pages as needed. - Resource Consumption: Using
FIXEDconsumes dedicated real storage frames, which are a finite and critical system resource. This can improve performance for the specific job but can lead to real storage contention and degrade overall system performance if overused. - Default Behavior: If
ADDRSPCis not specified,ADDRSPC=VIRT,RELis the effective default, allowing the z/OS System Resource Manager (SRM) to manage real storage efficiently through paging.
- Placement: Can be specified on the
Use Cases
-
- Critical Batch Jobs: For high-priority, CPU-intensive, or I/O-bound batch jobs where minimizing paging overhead is crucial for meeting strict performance SLAs (Service Level Agreements).
- System-Critical Utilities: Certain specialized system utilities or vendor products might require
FIXEDstorage to ensure consistent, low-latency execution, especially those that are highly sensitive to dispatching delays or interact directly with hardware. - Performance-Sensitive Online Regions: In rare, highly specialized scenarios, specific components within an online transaction processing (OLTP) region (like CICS or IMS) might be configured to run with
FIXEDstorage to eliminate paging for critical code paths, though this is usually managed internally by the subsystem. - Benchmarking and Testing: Temporarily using
ADDRSPC=VIRT,FIXEDduring performance testing to isolate the impact of paging on a new application or system component, allowing for more precise measurement of CPU and I/O characteristics.
Related Concepts
ADDRSPC is fundamental to z/OS virtual storage management and real storage management. It directly interacts with the System Resource Manager (SRM), influencing how the SRM manages the allocation and movement of virtual storage pages between real memory and page datasets. It works in conjunction with the REGION JCL parameter, which defines the *maximum virtual storage* available to a job step, while ADDRSPC dictates the *physical residency* of that virtual storage. It also relates to workload management (WLM), as WLM policies can be influenced by the storage residency characteristics of a service class.
- Use
FIXEDSparingly: AvoidADDRSPC=VIRT,FIXEDunless absolutely necessary and thoroughly justified. Overuse can lead to real storage shortages, increased paging for other workloads, and overall system performance degradation. - Monitor Real Storage: When
FIXEDstorage is used, diligently monitor real storage utilization using tools likeRMF(Resource Measurement Facility) andSMF(System Management Facilities) to ensure it does not negatively impact other workloads. - Optimize Application First: Before resorting to
FIXED, ensure the application code is optimized for efficiency, I/O operations are minimized, and theREGIONsize is appropriately set to avoid virtual storage constraints. - Document and Justify: Any production usage of `ADDRSPC=V