.th \*(AA \*(FF 4 .sh EINLEITUNG F::ur die Einbindung von Datenbankaktionen in \*(FF unter \*(UU bsd 2.9 stehen die \*(AA\*-Compiler `amxf' und `oamxf' zur Verf::ugung. `oamxf' ist die overlay\*-Version von `amxf'. .br Die Datenbankaktionen werden in \*(AA/C programmiert und mit `amxf' ::ubersetzt, alle anderen Programmteile k::onnen in \*(FF geschrieben werden. Sie werden mit `f77' ::ubersetzt und mit `amxf' bzw. `oamxf' gelinkt (verbunden). .br Die Verwendung von `amxf' zur Programmerstellung erfordert keine Angabe einer speziellen \*(AA\*-Bibliothek (analog zu `amx'). Die Verwendung von `oamxf' erfordert vom Nutzer .s2 .lp +10 5 1. die Angabe des Flags `\*-V' beim ::Ubersetzen der zu ::uberlagernden Moduln .s2 .lp +10 5 2. die Angabe der ::uberlagerbaren \*(AA\*-Bibliotheken .br \*-lova1 bzw. `.../lib/libova1.a' .br \*-lova2 bzw. `.../lib/libova2.a' .br \*-lova3 bzw. `.../lib/libova3.a' .br \*-lova4 bzw. `.../lib/libova4.a' .br wobei der Pfad `.../' das home\*-directory des Datenbanksystems \*(II angeben soll. .i0 .s1 Jede Bibliothek belegt ein Textsegment (8 KByte). Entsprechend der ::Uberlagerungsstruktur k::onnen die Bibliotheken verteilt werden. Die Nummerierung schreibt aber die Reihenfolge der Angabe beim Verbinden vor. .s1 .sh "EIN\*-/AUSGABEN" Solange in \*(FF und C jeweils verschiedene Dateien angesprochen werden, k::onnen ohne Sprachmixprobleme beliebige Ein\*-/Ausgabeoperationen ausgef::uhrt werden. Gleiche Dateien k::onnen nur dann in beiden Sprachen angesprochen werden, wenn es sich um die Standard\*-Ein\*- oder \*-Ausgabedatei handelt. .s2 .lp +25 20 \*(FF C .br .lp +25 20 \*-\*-\*-\*-\*-\*-\*-\*-\*- \*-\*-\*-\*-\*-\*-\*-\*-\*-\*-\*-\*-\*-\*-\*-\*-\*-\*-\*-\*-\*- .br .lp +25 20 Einheit 5 stdin\ \ (Deskriptor 0) .br .lp +25 20 Einheit 6 stdout (Deskriptor 1) .br .lp +25 20 Einheit 0 stderr (Deskriptor 2) .i0 .s1 Einheit 5, 6 oder 0 in \*(FF darf dabei keiner anderen Datei zugewiesen werden, wie auch stdin, stdout oder stderr bzw. Deskriptor 0, 1 oder 2 in C. In C sollten die Standarddateien auch nicht gepuffert werden (s. SETBUF(III)). .s1