The differences between the load module model and the program object model, and their interactions with assembler language instructions, are summarized in the following table:
| Property | "Load Module" Model | "Program Object" Model |
|---|---|---|
| Form of object program | One-dimensional module | Two-dimensional module |
| Smallest indivisible independently relocatable component | Control section | Element and part |
| Residence Mode | Only one | One per class |
| Addressing Mode | Only one | One per entry point |
| Compatibility | Can be converted to program object | Can be converted to load module with limitations |
| Assembler Option | NOGOFF or GOFF | GOFF only |
| Assembler statements | CSECT, RSECT, START | CSECT, RSECT, START, CATTR, XATTR |
| Assignable loadable-program attributes | RMODE | RMODE, alignment, load type |
| External symbol types | SD/CM, LD, ER/WX, PR | SD, ED, LD, ER/WX, PR, PD |
| External symbol maximum length | 8 characters | 256 characters |
| External symbol scope | Module (WX), Library (ER) | Section, Module, Library, Import/Export |
| External symbol attributes | AMode, RMode | AMode, RMode, scope, PSect name, linkage type, reference type, extended attributes |
| Object module record types | ESD, TXT, RLD, END, SYM | HDR, ESD, TXT, RLD, END, LEN |
| Address constant types | A, V, Q, CXD | A, V, Q, J, R, CXD |
| Binding attributes | Catenate (SD),
Merge-like (CM,PR) |
Catenate (non-Merge classes), Merge classes (Parts, Pseudo-Registers) |
| Text types | Byte stream | Byte stream, records (structured and unstructured) |
| Maximum contiguous text length | 16MB | 1GB |
[ Top of Page | Previous Page | Next Page | Contents | Index ]