REP-Dateien können in allen Ladeaufrufen mit den Kommandos LOAD- und START-EXECUTABLE-PROGRAM (bzw. LOAD- und START-PROGRAM) sowie mit den Makros ASHARE und BIND angegeben werden.
Eine REP-Datei gehört immer zu einer Ladeeinheit. Die in der REP-Datei enthaltenen REP-Sätze erlauben eine byteweise Korrektur der einzelnen Module einer Ladeeinheit in der Art und Weise, wie das auch beim Laden des BS2000-Organisationsprogrammes möglich ist (siehe Handbuch „Einführung in die Systembetreuung“ [9]).
Die REP-Sätze können entweder auf alle Module im Linkkontext oder nur auf die Module der Ladeeinheit angewendet werden (REPSCOP=CONTEXT oder UNIT). In die REP-Verarbeitung im Linkkontext können auch maskierte Symbole einbezogen werden.
Wenn der Ladevorgang beendet ist, öffnet der DBL die zur Ladeeinheit gehörende REP-Datei, liest die enthaltenen REP-Sätze und wendet die REP-Sätze auf die Module der Ladeeinheit oder auf alle Module im Linkkontext an. Der DBL greift dabei auch auf eine eventuell vorhandene NOREF-Datei zurück, die eine Liste von Symbolen (CSECTs und ENTRYs) enthält, die für die REP-Verarbeitung nicht von Bedeutung sind (siehe "NOREF-Dateien").
Korrekturen, die den Code in einem Systemkontext betreffen, werden durch den BLS-Lock-Manager gesteuert. Während des gesamten Binde-/Ladeprozesses (einschließlich der REP-Verarbeitung) ist der betroffene Systemkontext gegen andere Schreibzugriffe geschützt.
Format der REP-Sätze und REP-Dateien
Die REP-Sätze müssen in dem Format bereitgestellt werden, das auch für REPs des BS2000-Organisationsprogrammes verwendet wird (einschließlich relativierbarer REPs). Das Format der REP-Sätze und der REP-Dateien sind ausführlich im Handbuch „Einführung in die Systembetreuung“ [9] beschrieben.
Jeder REP-Satz wird vor der Verarbeitung auf richtiges Format untersucht. Geprüft werden dabei u.a. die enthaltenen Daten, das Parity-Byte, die Modulversion und der Modulname. Das Klassenkennzeichen (Spalte 70) hat für Ladeeinheiten keine Bedeutung und wird deshalb nicht beachtet.
Fehlerhafte oder nicht erkannte REP-Sätze werden auf SYSOUT protokolliert und die Verarbeitung wird mit dem nächsten REP-Satz fortgesetzt.
Wenn die im Ladeaufruf angegebene REP-Datei nicht vorhanden ist, wird die REP-Verarbeitung mit der Meldung BLS0977/BLP0977 abgebrochen und die Ladeeinheit wird ohne REP-Korrekturen geladen. Bei anderen DVS-Fehlern beim Zugriff auf die REP-Datei bietet der DBL mit der Meldung BLS0998/BLP0998 einen erneuten Zugriffsversuch an. Wenn auch dieser Versuch fehlschlägt, wird die Ladeeinheit ohne REP-Korrekturen geladen.
REP-Dateien für Subsysteme
Eine REP-Datei, die zu einem Subsystem gehört, unterliegt folgender Namenskonvention:
SYSREP.<subsystem-name>.<subsystem-version>
Die REP-Datei sollte mehrbenutzbar sein - besonders dann, wenn das Subsystem nicht vorgeladen, sondern erst beim ersten Aufruf geladen wird.
Rückinformationen und Fehleranzeigen
Beim Verarbeiten der REP-Dateien werden folgende BLS-Meldungen ausgegeben:
BLS0990/BLP0990 | nach dem erfolgreichen Öffnen der REP-Datei |
BLS0980/BLP0980 | für jeden Kommentarsatz in der REP-Datei |
BLS0989/BLP0989, | wenn Fehler bei der REP-Verarbeitung auftreten |
NOREF-Dateien
Eine NOREF-Datei ist einer REP-Datei zugeordnet und enthält eine Liste von CSECTs und ENTRYs, die bei der REP-Verarbeitung nicht beachtet werden müssen. D.h. wenn der DBL eine CSECT oder einen ENTRY nicht findet, wofür ein REP-Satz vorhanden ist, dann durchsucht der DBL die NOREF-Datei. Steht dieses Symbol in der NOREF-Datei, so übergeht der DBL diesen REP-Satz ohne Fehlermeldung.
Damit ist es möglich, eine REP-Datei anzuwenden auf:
Softwareprodukte, die aus mehreren Subsystemen oder Ladeeinheiten bestehen,
Subsysteme oder Programme, die aus mehreren Ladeeinheiten bestehen.
Format der NOREF-Dateien
Eine NOREF-Datei ist eine SAM-Datei mit variabler Länge. Sie besteht aus 8 Zeichen langen Sätzen (pro Symbolname ein Satz), die durch Leerzeichen voneinander getrennt sind. Der erste Satz der NOREF-Datei enthält in den ersten 4 Byte sedezimal die Anzahl der nachfolgenden Sätze.
Namenskonvention für NOREF-Dateien
Der DBL kann eine NOREF-Datei verarbeiten, wenn die Namenskonventionen für BS2000-REP-Dateien eingehalten werden:
Wenn der im Ladeaufruf angegebenen REP-Dateiname den Namensteil „SYSREP“ enthält, ersetzt der DBL diesen Namensteil durch „SYSNRF“ und sucht eine NOREF-Datei mit diesem Namen.
Andernfalls sucht der DBL eine NOREF-Datei mit den gleichen Namen wie die Hauptbibliothek, die zusätzlich das Suffix „.NOREF“ hat.
Der DBL gibt keine Meldung aus, wenn er keine NOREF-Datei findet.
Beim erfolgreichen Öffnen der NOREF-Datei gibt der DBL die Meldung BLS0995/BLP0995 aus.
Bei Fehlern während der NOREF-Verarbeitung werden die Meldungen BLS0996/BLP0996 oder BLS0997/BLP0997 ausgegeben.