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.