Modernization Hub

Job Processing - Running jobs

Enhanced Definition

Job processing, in the mainframe context, refers to the entire lifecycle of executing a batch job on z/OS, from its submission to its completion. It involves the operating system and its subsystems managing the allocation of resources, execution of programs, and handling of output for a predefined set of tasks. The primary purpose is to automate and perform large-scale, non-interactive data processing tasks efficiently.

Key Characteristics

    • Batch Execution: Jobs run in a non-interactive, background mode, typically initiated by a scheduler or manual submission, without requiring direct user intervention during execution.
    • JCL Driven: Every job's execution flow, resource requirements, and program invocations are meticulously defined using Job Control Language (JCL) statements.
    • JES Management: The Job Entry Subsystem (JES2 or JES3) is responsible for receiving jobs, scheduling their execution based on class and priority, managing spooling of input/output, and tracking job status.
    • Step-by-Step Execution: A job consists of one or more job steps, where each step typically executes a program (e.g., COBOL, PL/I, Assembler, or utility) and defines its associated datasets.
    • Resource Allocation: z/OS dynamically allocates system resources such as CPU time, memory, I/O devices, and datasets required by each job step as it executes.
    • Output Spooling: All output generated by a job (e.g., SYSOUT, reports, logs) is spooled by JES and can be directed to printers, viewed online, or archived.

Use Cases

    • Daily/Monthly Batch Cycles: Performing routine business operations like payroll processing, end-of-day banking reconciliation, billing, and inventory updates.
    • Data Transformation and ETL: Extracting, transforming, and loading large volumes of data between various mainframe datasets or databases (DB2, IMS).
    • Report Generation: Producing critical business reports (e.g., financial statements, sales reports, audit trails) from transactional data.
    • System Utilities and Maintenance: Running utility programs for dataset management (sort, merge, copy), backup and recovery, or system health checks.
    • Application Development and Testing: Compiling, linking, and executing programs during the development and testing phases of new or modified applications.

Related Concepts

Job processing is intrinsically linked to JCL, which provides the instructions for the job, and JES, which manages the job queue and output. The MVS (now z/OS) operating system is the environment where the programs specified in JCL steps are actually executed. Jobs frequently interact with datasets (sequential, VSAM, PDS/PDSE) for input and output, and often invoke application programs written in languages like COBOL or PL/I, or interact with database systems such as DB2 or IMS.

Best Practices:
  • Optimize JCL: Design JCL for efficiency by specifying appropriate region sizes, dataset block sizes, and avoiding unnecessary I/O operations to minimize resource consumption.
  • Implement Robust Error Handling: Include COND parameters in JCL to control step execution based on previous step return codes, and ensure application programs provide meaningful return codes and error messages.
  • Design for Restartability: Structure jobs and programs to be easily restartable from a point of failure, minimizing the need to rerun entire lengthy processes.
  • Monitor and Tune: Regularly monitor job performance using tools like SMF (System Management Facilities) and RMF (Resource Measurement Facility) data to identify bottlenecks and optimize resource usage.
  • Thorough Documentation: Maintain clear and comprehensive documentation for all JCL, job dependencies, scheduling requirements, and operational procedures to ensure smooth operations and troubleshooting.

Related Vendors

Trax Softworks

3 products

CA Technologies

74 products

IBM

646 products

Applied Software

7 products

Related Categories

Automation

222 products

Operating System

154 products

Browse and Edit

64 products

Encryption

41 products

Files and Datasets

168 products