Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

SAM - Sequential Access Method

SAM ist eine satzorientierte Zugriffsmethode, mit der Dateien sequenziell verarbeitet werden. Mit SAM können Sätze geschrieben, aktualisiert, und gelesen werden. SAM bietet ebenfalls eine Positionierungsfunktion, mit der auf den logischen Dateianfang, auf das logische Dateiende oder auf jeden existierenden Satz positioniert werden kann.

Als satzorientierte Zugriffsmethode übernimmt SAM für den Anwender das Blocken, Entblocken und Puffern der Sätze. Wenn im Benutzerprogramm zwei Ein-/Ausgabebereiche zur Verfügung stehen, kann Wechselpufferbetrieb genutzt werden; bei nur einem Ein-/Ausgabebereich findet keine überlappende Verarbeitung statt.

Die Zugriffsmethode SAM arbeitet überwiegend geräteunabhängig und gestattet die Verarbeitung von Dateien auf Platten und Bändern; Magnetbandkassetten werden weitgehend wie Magnetbänder behandelt.

Mit der Zugriffsmethode SAM können Dateien unterschiedlicher Blockformate verarbeitet werden (siehe Kapitel „Zugriffsmethoden“, Handbuch „Einführung in das DVS“ [1]).

  • K-SAM-Dateien (Key-SAM-Dateien) haben das herkömmliche Blockformat „PAMKEY“: Sie sind dadurch gekennzeichnet, dass für jede PAM-Seite DVS-Verwaltungsinformation in einem eigenen (außerhalb der Seite gelegenen) PAM-Schlüssel geführt wird.

  • NK-SAM-Dateien (Nonkey-SAM-Dateien) haben das Blockformat „DATA“ oder „NO“: Sie enthalten keine gesonderten PAM-Schlüssel. Beim Blockformat „DATA“ wird die DVS-Verwaltungsinformation innerhalb der PAM-Seite in einem Blockkontrollfeld hinterlegt.
    Das Blockformat „NO“ existiert bei SAM nur für Banddateien. Im Blockformat „NO“ werden blockspezifische Verwaltungsinformationen nicht unterstützt.

Mit dem Operanden BLKCTRL in den Makros FILE und FCB kann der Anwender wählen, ob eine K- oder eine NK-Datei verarbeitet werden soll: BLKCTRL=PAMKEY vereinbart eine K-SAM-Datei, BLKCTRL=DATA oder BLKCTRL=NO legt eine NK-SAM-Datei fest. 

Makroaufrufe für die Zugriffsmethode SAM

Für die Dateibearbeitung mit SAM gibt es folgende Aktionsmakroaufrufe:

Makro

Funktion

FCB

Dateisteuerblock anlegen

FEOV

für Banddateien: Bandwechsel auslösen

GET

sequenziell lesen; die Sätze werden nacheinander bereitgestellt.

PUT

sequenziell schreiben: Im Move-Mode führen die logischen Routinen der Zugriffsmethoden das Blocken der Sätze durch. Das bedeutet, dass die Ausgabe auf den Datenträger solange verzögert wird, bis der Ausgabepuffer gefüllt ist. Die Puffer werden vom System automatisch bedient. Im Locate-Mode muss der Anwender selbst für das Blocken sorgen.

PUTX

ein zuvor gelesener Satz wird zurückgeschrieben (nur im Locate-Mode bei Plattendateien)


RELSE

schließt einen Datenblock ab, d.h. für Eingabedateien:
beim nächsten GET wird der nächste Datenblock eingelesen;
für Ausgabedateien: beim nächsten PUT wird der Pufferinhalt als Datenblock geschrieben, der nächste Satz wird zum ersten Satz im neuen Datenblock. (Dies ist im Locate-Mode nötig, wenn der folgende Satz nicht mehr in den aktuellen Puffer passt).

SETL

in der Datei auf einen bestimmten Satz, Dateianfang oder Dateiende positionieren