Activation Group

All ILE programs and service programs are activated within a substructure of a job called an activation group. This substructure contains the resources necessary to run the programs. These resources fall into the following general categories:
  • Static program variables
  • Dynamic storage
  • Temporary data management resources
  • Certain types of exception handlers and ending procedures

Activation groups use either single-level storage or teraspace for supplying storage for static program variables. For more information, see Teraspace and Single-Level Storage. When single-level storage is used, the static program variables and dynamic storage are assigned separate address spaces for each activation group, which provides some degree of program isolation and protection from accidental access. When teraspace is used, the static program variables and dynamic storage may be assigned separate address ranges within teraspace, which provides a lesser degree of program isolation and protection from accidental access.

The temporary data management resources include the following:
  • Open files (open data path or ODP)
  • Commitment definitions
  • Local SQL cursors
  • Remote SQL cursors
  • Hierarchical file system (HFS)
  • User interface manager
  • Query management instances
  • Open communications links
  • Common Programming Interface (CPI) communications

The separation of these resources among activation groups supports a fundamental concept. That is, the concept that all programs activated within one activation group are developed as one cooperative application.

Software vendors may select different activation groups to isolate their programs from other vendor applications running in the same job. This vendor isolation is shown in Figure 1. In this figure, a complete customer solution is provided by integrating software packages from four different vendors. Activation groups increase the ease of integration by isolating the resources associated with each vendor package.

Figure 1. Activation Groups Isolate Each Vendor's Application
Activation Groups Isolate Each Vendor's Application

There is a significant consequence of assigning the above resources to an activation group. The consequence is that when an activation group is deleted, all of the above resources are returned to the system. The temporary data management resources left open at the time the activation group is deleted are closed by the system. The storage for static and dynamic storage that has not been deallocated is returned to the system.