Previous topic |
Next topic |
Contents |
Contact z/OS |
Library |
PDF
Object program structures HLASM Language Reference SC26-4940-06 |
|
High Level Assembler supports two object-program models. The older "load module" model generally involves one or more independently relocatable control sections combined into a single block of machine language text, which is loaded into a single contiguous portion of memory. Addresses within this block of text are resolved to locations within the block, or are left unresolved. Such programs are considered one-dimensional structures. Examples include z/OS load modules, CMS modules, and z/VSE phases.
The program object model can be created only when the GOFF option is specified. The "load module" model can be created when either the NOGOFF or GOFF option is specified, but there are limitations on source program statements if GOFF is specified. Note: The term "section" is used in different senses for each object-program model. In the load module model, a section is a control section. In the program object model, a section is a one-dimensional cross-section of program object data containing contributions to one or more classes.
The following figure illustrates the differences between the object-program
models.
Figure 1. Load
module and Program Object structures
┌─────────────┐ Class Class Class ─ ─ ─ │ │ ┌─────────┬─────────┬─────────┬ ─ ─ ─┐ │ Control │ │ │ │ part │ │ │ Section │ Section │ element │ element ├─────────┤ │ │ │ │ │ │ part │ │ ├─────────────┤ ├─────────┼─────────┼─────────┼ ─ ─ ─┤ │ Control │ │ │ │ │ │ │ Section │ Section │ element │ element │ part │ │ ├─────────────┤ │ │ │ │ │ : : ├─────────┼─────────┼─────────┼ ─ ─ ─┤ : : : : : : : : : : : : : : └─────────────┘ └─────────┴─────────┴─────────┴ ─ ─ ─┘ Load Module Model Program Object Model |
Copyright IBM Corporation 1990, 2014
|