Relationship of assembler to operating system

High Level Assembler operates under the z/OS® operating system, the CMS component of the z/VM® operating system, the z/VSE® operating system, and Linux® on IBM Z®. These operating systems provide the assembler with services for:
  • Assembling a source module
  • Running the assembled object module as a program
z/OS provides the following services:
  • For assembling the source module:
    • A control program
    • Sequential data sets to contain source code
    • Libraries to contain source code and macro definitions
    • Utilities
  • For preparing for the execution of the assembler program as represented by the object module:
    • A control program
    • Storage allocation
    • Input and output facilities
    • Binder
    • Loader
CMS provides the following services:
  • For assembling the source module:
    • An interactive control program
    • Files to contain source code
    • Libraries to contain source code and macro definitions
    • Utilities
  • For preparing for the execution of the assembler program as represented by the object modules:
    • An interactive control program
    • Storage allocation
    • Input and output facilities
    • Linker
    • A loader

z/VSE provides the following services:

  • For assembling the source module:
    • A control program
    • Sequential data sets to contain source code
    • Libraries to contain source code and macro definitions
    • Utilities
  • For preparing for the execution of the assembler program as represented by the object module:
    • A control program
    • Storage allocation
    • Input and output facilities
    • Linker
Linux on IBM Z provides the following services:
  • For assembling the source module:
    • An interactive control program
    • Files to contain source code
    • Utilities
  • For preparing for the execution of the assembler program as represented by the object modules:
    • An interactive control program
    • Storage allocation
    • Input and output facilities
    • Linker
    • A loader

In writing a source module, you must include instructions that request required service functions not provided by the operating system, for example obtaining and freeing storage.