Virtual Storage Access Method
VSAM (Virtual Storage Access Method) – specjalny, dodatkowy system dostępu i przetwarzania zbiorów danych, zlokalizowanych na nośnikach o dostępie bezpośrednim, wprowadzonych w maszynach cyfrowych IBM/370 i następnych, wyposażonych w pamięć wirtualną w systemie operacyjnym OS.
Budowa systemu
edytujSystem VSAM tworzą:
- VSAM: metoda dostępu
- IDCAMS: program usługowy zarządzający środowiskiem
- VS: specjalne środki systemu OS.
Powyższe elementy tworzyły specjalizowane środowisko programowe, przeznaczone do rozszerzonego przetwarzania danych.
Organizacja zbiorów danych
edytujSystem VSAM udostępniał dodatkowe (w stosunku do systemu OS) organizacje zbiorów danych:
- pozycyjną (entry sequenced data set, ESDS)
- kluczową (key sequenced data set, KSDS)
- komórkową (relative record data set, RRDS).
Operator – programista – posługujący się określonym źródłem danych programował przetwarzanie określonych kolekcji, na które były przechowywane w plikach:
- danych
- indeksów
- indeksów pobocznych
- innych.
Organizacja pozycyjna
edytujTen rodzaj wywodzi się z organizacji szeregowej. Rozszerzenie organizacji szeregowej polegało w tym przypadku na wprowadzeniu:
- indeksów jednoznacznych (unique index)
- indeksów niejednoznacznych (non unique index).
Cechy kolekcji pozycyjnej:
- ładowanie sekwencyjne „do przodu”
- dowolna liczba indeksów pobocznych jednoznacznych i niejednoznacznych
- przetwarzanie:
- sekwencyjne
- sekwencyjno-wyrywkowe
- wyrywkowe
- przetwarzanie:
- „w przód”
- „wstecz”
- niezmienna pozycja rekordu w kolekcji
- brak możliwości usunięcia rekordu lub zmiany rozmiaru.
Organizacja kluczowa
edytujTen rodzaj wywodził się z organizacji indeksowej. Ładowanie rekordów odbywało się po uporządkowaniu kolekcji według wartości kluczy, przy czym dostępne były również indeksy jednoznaczne i niejednoznaczne. Cechy kolekcji kluczowej:
- ładowanie sekwencyjne według kluczy
- po załadowaniu kolekcji dowolna liczba indeksów pobocznych jednoznaczne i niejednoznaczne
- przetwarzanie:
- sekwencyjne
- sekwencyjno-wyrywkowe
- wyrywkowe
- przetwarzanie:
- „w przód”
- „wstecz”
Organizacja komórkowa
edytujWywodziła się ona z organizacji regionalnej-1 i była do niej bardzo zbliżona. Brak możliwości tworzenia indeksów pobocznych ograniczał mocno stosowanie tej organizacji kolekcji. Cechy kolekcji komórkowej:
- ładowanie
- sekwencyjne
- sekwencyjno-wyrywkowe
- wyrywkowe
- przetwarzanie:
- sekwencyjne
- sekwencyjno-wyrywkowe
- wyrywkowe
- przetwarzanie:
- „w przód”
- „wstecz”
- konieczność posługiwania się rekordami o stałej długości i identyfikowania rekordów numerami.
VSAM a języki programowania
edytujProgram IDCAMS służył do tworzenia nowej kolekcji, czego nie można było wykonać w językach programowania. Po utworzeniu kolekcji można było ją przetwarzać, za pomocą języków programowania, takich jak PL/1 czy Cobol.
Ponieważ każda kolekcja musiała być skatalogowana, redukowało to złożoność zdań języka JCL – języka komunikacji pomiędzy operatorem a systemem OS.
Sterowanie systemem
edytujSterowanie systemem opierało się na dyrektywach zapisywanych w układzie swobodnym, które wraz ze swoimi parametrami tworzyły dość rozbudowany język. Dyrektywy dzieliły się na:
- pozycyjne
- kluczowe.
Komentarze były zapisywane identycznie jak w PL/1, tzn. pomiędzy znakami „/*” a „*/”. Lista dyrektyw:
- ALTER : zmiana atrybutów zbiorów, kolekcji, obiektów
- BLDINDEX : tworzenie indeksu pobocznego
- CHKLIST : informacje plików kontrolnych
- DEFINE ALTERNATEINDEX : definiowanie indeksu pobocznego
- DEFINE CLUSTER : definiowanie kolekcji
- DEFINE MASTERCATALOG | USERCATALOG : definiowanie katalogu głównego lub użytkownika
- DEFINE NONVSAM : definiowanie zbioru niebędącego kolekcją
- DEFINE PATH : definiowanie łączników
- DEFINE SPACE : definiowanie przestrzeni danych
- DELETE : usuwanie zbiorów, kolekcji, indeksów, przestrzeni, katalogów
- EXPORT : eksportowanie katalogów, obiektów
- EXPORTRA : eksportowanie informacji z obszaru odzyskiwania utraconych danych
- IMPORT : importowanie katalogów, obiektów
- IMPORTRA : importowanie z obszaru utraconych danych
- LISTCAT : wyprowadzenie raportów
- LISTCRA : sporządzenie raportu
- PRINT : ujawnienie zawartości zbioru lub kolekcji
- REPRO : kopiowanie i łączenie: zbiorów, kolekcji, katalogów
- RESETCAT : porównanie zgodności informacji katalogu i obszaru odzyskiwania utraconych danych
- VERIFY : aktualizowanie informacji katalogowych
Każda dyrektywa generowała kod powrotu:
- 0 – wykonanie pomyślne
- 4 – wykonanie z pewnymi trudnościami
- 8 – wykonanie niekompletne
- 12 – odrzucenie dyrektywy
- 16 – błąd nienaprawialny.
Bibliografia
edytuj- Jan Bielecki, System VSAM. Zasady stosowania w języku PL/I, Wydawnictwa Naukowo-Techniczne, Warszawa 1987, Seria: Biblioteka Inżynierii Oprogramowania, ISBN 83-204-0835-0