Loadmodule


Loadmodule

Der Begriff Lademodul (auch Phase genannt) wird zumeist im Umfeld des Betriebssystems z/OS, früher auch MVS gebraucht. Der Begriff bezeichnet ein in einer Lademodulbibliothek gespeichertes, ausführbares Programm.

Im MVS ist eine Lademodulbibliothek eine PO-Datei (Partitioned Data Set,PDS) oder ein Extented Partioned Data Set (PDSE).

Ein Lademodul ist ein sog. Member einer Lademodulbibliothek; ist das Programm ein Member eines PDSE nennt man es im MVS auch Program Object.

Program Objects unterstützen erweiterte Eigenschaften von Programmen, die im klassischen MVS nicht so wichtig waren:

  • Programmgröße größer als 16 MB
  • Programmnamen länger als acht Zeichen mit Berücksichtigung von Groß-/Kleinschreibung
  • Unterstützung von DLLs

Erzeugung eines Lademoduls

Dieses entsteht, wenn man einen Quelltext (z. B. COBOL, Fortran, C oder Assembler) mit dem jeweiligen Compiler übersetzt (es entsteht dabei der Objektcode - oft auch als Objektmodul bezeichnet) und anschließend mit dem Linker bindet.

Ein ausführbares Programm besteht normalerweise nicht nur aus dem Objektcode eines Programms. In der Regel muss der Linker weitere Programmroutinen oder zumindest Informationen über weitere Programmroutinen (Unterprogramme) zu dem ursprünglichen Objectcode hinzufügen.

Im MVS-Sprachgebrauch heißen solche Objectcode-Teile Control Sections oder kurz CSECTs. Die verschiedenen Control Sections eines Lademoduls können von verschiedenen Compilern erzeugt worden sein.

Inhalt eines Lademoduls

Ein Lademodul enthält zum einen den von den Compilern erzeugten Maschinencode, des Weiteren aber auch Informationen, die benötigt werden um

  • das Programm in den Hauptspeicher zu laden und zur Ausführung zu bringen:
    • Wo soll das Programm geladen werden?
    • Wo befinden sich im Lademodul relative (verschiebliche, relocatable) Adressen? Das sind Adressen im Programm, die der Compiler generiert hat, die aber noch vor der Programmausführung vom Ladeprozess auf die tatsächlichen Adressen im Hauptspeicher umgerechnet werden müssen.
    • Wenn es bereits im Speicher liegt, kann die Version im Speicher verwendet werden oder wird eine neue, frische Version benötigt?
    • Wo ist der Einsprungspunkt des Programms, d.h. wohin soll das Betriebssystem verzweigen, wenn es die Ausführung an das geladene Programm übergeben will.
  • das Programm mit dem Linker (Linkage Editor, Binder) bearbeiten zu können, z. B. einzelne Programmteile austauschen zu können.

Wikimedia Foundation.

Schlagen Sie auch in anderen Wörterbüchern nach:

  • LiteStep — Infobox Software name = LiteStep caption = Screenshot of a LiteStep author = developer = released = latest release version = 0.24.7 latest release date = December 17, 2005 latest preview version = 0.24.8 pre latest preview date = programming… …   Wikipedia

  • XFree86 logfile — The XFree86 logfile is a text file, written by the XFree86 program, and designed to be useful for people who are trying to diagnose problems they are having with getting XFree86 to work.When XFree86 starts, it creates a logfile which contains… …   Wikipedia

  • Clematis vitalba — The silky appendages of the fruits Scientific classification Kingdom …   Wikipedia

  • RSL — Класс языка: процедурный, объектно ориентированный Тип исполнения: интерпретируемый Появился в: 1994 Автор(ы): Сергей Кубрин Расширение файлов: mac …   Википедия

  • Javesella pellucida — Scientific classification Kingdom: Animalia Phylum …   Wikipedia

  • DLL Hijacking — (auch Binary Planting oder Remote Binary Planting) bezeichnet das Laden einer DLL aus den vom Betriebssystem angegebenen Pfaden, sofern in dem lokalen Verzeichnis des Programms diese nicht zu finden ist. Eine DLL wird unter Windows standardmässig …   Deutsch Wikipedia