Herunterladen Inhalt Inhalt Diese Seite drucken

Binden Und Laden Von Unterprogrammen - Fujitsu BS2000/OSD COBOL2000 V1.5 Benutzerhandbuch

Compiler
Inhaltsverzeichnis

Werbung

Binden und Laden von Unterprogrammen

13.1 Binden und Laden von Unterprogrammen
Den Namen eines Unterprogramms kann man in der CALL-Anweisung entweder als Literal
angeben oder als Bezeichner eines Datenfeldes, das den Unterprogrammnamen bzw. die
Unterprogrammadresse enthält. Abhängig von der Art des Unterprogrammaufrufs wird ein
Programmsystem unterschiedlich gebunden und geladen.
Unterprogrammaufruf „CALL literal" bzw. Programmadressbezeichner
„ADDRESS OF PROGRAM literal"
Der Name des Unterprogramms ist bereits zur Übersetzungszeit festgelegt. Der Compiler
setzt auf diese Unterprogramme Externverweise ab, die in anschließenden Bindeläufen
vom jeweils verwendeten Binder befriedigt werden. Enthält ein Programmsystem aus-
schließlich Aufrufe in der Form „CALL literal" bzw. „ADDRESS OF PROGRAM literal", kann
es, wie in
oder temporär ablauffähigen Programmausführungseinheit gebunden und anschließend
geladen werden.
Unterprogrammaufruf „CALL bezeichner" bzw. Programmadressbezeichner
„ADDRESS OF PROGRAM bezeichner"
Der Name des Unterprogramms muss erst zum Ablaufzeitpunkt bekannt sein (z.B. nach
Eingabe an der Datensichtstation). Für Unterprogramme, die nach Bedarf mit „CALL be-
zeichner" aufgerufen werden und Programmadressbezeichner „ADDRESS OF PROGRAM
bezeichner", gibt es keine Externverweise; sie werden deshalb vom DBL während des Pro-
grammablaufs dynamisch nachgeladen. Programmsysteme mit derartigen Unterpro-
grammaufrufen können nur auf eine der folgenden Arten zum Ablauf gebracht werden:
1. Mit dem DBL die bei der Übersetzung entstandenen Module dynamisch binden und die
Unterprogramme, auf die es keine Externverweise (im Hauptprogramm) gibt, dyna-
misch nachladen.
2. Mit dem TSOSLNK ein Großmodul vorbinden, das das Hauptprogramm sowie die Un-
terprogramme mit Externverweisen enthält. Mit dem DBL das Großmodul aufrufen und
die Unterprogramme, auf die es keine Externverweise (im Hauptprogramm) gibt, dyna-
misch nachladen.
3. Mit dem BINDER einen LLM oder mehrere LLMs (vor)binden. Mit dem Bindelader den
(Groß-)LLM bzw. den LLM, der das Hauptprogramm enthält, aufrufen und die Unterpro-
gramme, auf die es keine Externverweise (im Hauptprogramm) gibt, dynamisch nach-
laden.
Vor dem Aufruf des Bindeladers sollte folgende Zuweisung vorgenommen werden:
/ADD-FILE-LINK BLSLIBnn,laufzeitbibliothek
294
Kapitel „Binden, Laden, Starten" auf Seite 119
Programmverknüpfungen
beschrieben, zu einer permanent
U41113-J-Z125-6

Quicklinks ausblenden:

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis