Modernization Hub

CASS - Common Assembly System

Enhanced Definition

CASS (Common Assembly System) is a critical component of the **IBM High Level Assembler (HLASM)** for z/OS, providing a collection of common services, macros, and routines utilized by various system components and applications. It serves as a shared library of re-entrant and re-locatable code, enabling efficient and standardized access to low-level system functions.

Key Characteristics

    • Shared System Services: Offers a standardized set of reusable services and routines, reducing the need for individual system components or applications to re-implement common low-level functions.
    • HLASM Integration: Tightly integrated with the High Level Assembler, allowing programs written in HLASM to easily invoke CASS services through dedicated macros, simplifying complex system interactions.
    • Re-entrant and Re-locatable: Designed to be re-entrant, meaning multiple tasks can concurrently use the same copy of the code, and re-locatable, allowing it to be loaded anywhere in memory, optimizing resource utilization.
    • Performance Optimized: The routines within CASS are typically highly optimized for performance, as they are frequently called by core z/OS components and high-volume applications.
    • System-Level Functions: Encompasses functions related to system control, memory management, I/O operations, data manipulation, and other fundamental services essential for z/OS operation.

Use Cases

    • Operating System Internals: z/OS itself heavily relies on CASS services for managing system resources, handling interrupts, dispatching tasks, and performing other core operating system functions.
    • System Utilities and Tools: Many IBM-provided and third-party system utility programs, especially those written in assembler, leverage CASS for tasks like data set manipulation, console communication, or gathering system information.
    • Middleware Products: Enterprise middleware like CICS, IMS, or DB2 may utilize CASS routines for low-level system interactions, specialized I/O processing, or efficient memory allocation.
    • Custom Assembler Applications: Developers creating high-performance or system-level applications in HLASM can use CASS macros to access system services efficiently and consistently, avoiding complex manual coding.

Related Concepts

CASS is foundational to the High Level Assembler (HLASM), providing the underlying implementation for many of its powerful system macros. It works in conjunction with z/OS system services and Supervisor Call (SVC) routines, often providing a higher-level, more accessible interface or common implementation for these low-level operating system functions. It is a crucial building block for many system control programs and middleware products on the mainframe, enabling them to interact with the operating system efficiently and consistently.

Best Practices:
  • Consult IBM Documentation: Always refer to the official IBM documentation for HLASM and z/OS for the most accurate and up-to-date information on CASS services, macro syntax, parameters, and return codes.
  • Understand Macro Parameters: When invoking CASS services via HLASM macros, thoroughly understand all parameters and their implications to ensure correct functionality and avoid unexpected system behavior.
  • Error Handling Implementation: Implement robust error handling by checking return codes and reason codes provided by CASS service calls to diagnose and respond to potential issues effectively.
  • Performance Awareness: While CASS routines are optimized, be mindful of their invocation frequency within performance-critical loops, as excessive calls can still introduce measurable overhead.
  • Maintain Compatibility: Ensure that any custom assembler code utilizing CASS services remains compatible with the target z/OS release's CASS version to prevent compilation errors or runtime failures.

Related Vendors

IBM

646 products

Macro 4

20 products

Tone Software

14 products

Trax Softworks

3 products

Related Categories

Operating System

154 products

Administration

395 products

Automation

222 products

Browse and Edit

64 products