In the load module model, control sections might generate machine
language text containing instructions and data, or define mappings
of storage areas to be referenced at execution time. Control sections
that generate machine language text are called executable control
sections, even though they might contain only data. Control sections
that create only mappings are called reference control sections.
- z/VM and z/OS
In the program object model, sections can define classes containing elements.
(Classes are described in Classes (z/OS and CMS).)
Elements can contain machine language text or define mappings, or
both. Elements can in turn contain one or more parts, which
are described at Parts (z/OS and CMS).
Elements
containing machine language text are usually linked in a class comprising
other elements containing machine language text, and elements defining
mappings are usually linked in a class with other elements defining
mappings.
The section name is used in binder operations to
refer to its entire collection of elements and parts, but a program
object section is not the same as a load module control section. A
section name can be referenced as an external name only if defined
as an entry point in an element belonging to that section. (By default,
the assembler generates an entry point in class B_TEXT with
the section's name. See Classes (z/OS and CMS) for
more information.)
The term "executable" is used to describe executable control
sections in the load module model, or elements in the program, or
sections in the program object model, or elements in the program
object model.
You initiate
an executable section by using the START,
CSECT, or RSECT instruction, as described below:
- The START instruction can be used to initiate the first or only
section of a source module. For more information about the START
instruction, see START instruction.
- The CSECT instruction can be used anywhere in a source module
to initiate or continue a section. For more information about the
CSECT instruction, see CSECT instruction.
- Like the CSECT instruction, the RSECT instruction can be used
anywhere in a source module to initiate or continue a section. Unlike
the CSECT instruction, however, the RSECT instruction causes the assembler
to check the coding in the section for possible violations of reenterability.
For more information about the RSECT instruction, see RSECT instruction.
A section can also be initiated as an unnamed section, or private
code, without using the START, CSECT, or RSECT instruction. For
more information, see Unnamed section.