HLASM Language Reference
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Sections, elements, and parts

HLASM Language Reference
SC26-4940-06

In the load module model, a control section is the smallest subdivision of a program that can be relocated as a unit. The assembled control sections contain the object code for machine instructions, data constants, and areas.

In the program object model, elements and parts are the smallest subdivisions of a program that can be relocated as a unit. Sections allow grouping all element and part contributions under a single name. The assembled sections, elements, and parts contain the object code for the machine instructions, data, and areas.

Consider the concept of a control section at different processing times:

At coding time
You create a control section or an element or part when you write the instructions it contains. In addition, you establish the addressability of each component within the source module, and provide any symbolic linkages between components that lie in different source modules. You also write the linker control statements to combine sections into a load module or program object, and to provide an entry point address for the beginning of program execution.
At assembly time
High Level Assembler translates the source statements into object code. Each source module is assembled into one object module. The contents of the object module are relocatable.
At linking time
As specified by linker or binder control statements, the linker or binder combines the object code of one or more sections into one load module or program object. It also calculates the addresses needed to accommodate common sections and external dummy sections from different object modules. In addition, it calculates the space needed to accommodate external dummy sections.

You can specify the relocatable address of the starting point for program execution in a linker control statement or request a starting address in the operand field of an assembler END instruction.

At program fetch time
The control program loads the load module or program object into virtual storage. All the relocatable addresses are converted to fixed locations in storage.
At execution time
The control program passes control to the loaded program now in virtual storage, and your program is run.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014