Gerätebelegung und Speicherplatzzuweisung von Dateigenerationen ändern
Komponente: | BS2000 |
Funktionsbereich: | Dateiverarbeitung |
Anwendungsbereich: | FILE-GENERATION-GROUP |
Privilegierung: | STD-PROCESSING |
Berechtigungsschlüssel: | $ (bei NBCONOPI=N) bzw. E (bei NBCONOPI=Y) |
Funktionsbeschreibung
Das Kommando MODIFY-FILE-GENERATION-SUPPORT ändert die Gerätebelegung und Speicherplatzzuweisung einer bereits existierenden Dateigeneration. Nur der Eigentümer, Mit-Eigentümer und die Systembetreuung (siehe „Privilegierte Funktionen“) dürfen alle Merkmale einer Dateigeneration ändern. Andere Benutzer dürfen, wenn sie die Schreibberechtigung für die Dateigeneration besitzen, nur zusätzlichen Speicherplatz bzw. Bänder zuweisen.
Die Merkmale bezüglich Dateischutz und Datensicherung werden einheitlich für die gesamte Dateigenerationsgruppe mit dem Kommando CREATE-FILE-GROUP festgelegt bzw. mit dem Kommando MODIFY-FILE-GROUP-ATTRIBUTES geändert. Informationen des Benutzers bzw. des Systembetreuers (siehe Operand USER- bzw. ADM-
INFORMATION) werden nicht aus dem Gruppeneintrag übernommen, sondern können für jede Dateigeneration getrennt festgelegt werden.
Der Default-Wert *UNCHANGED in den entsprechenden Operanden bedeutet jeweils, dass die bisherige Vereinbarung gilt.
Privilegierte Funktionen
Folgende Funktionen stehen dem nicht-privilegierten Benutzer nur zur Verfügung, wenn die physikalische Allokierung von gemeinschaftlichem Speicherplatz erlaubt ist (siehe „Privilegierte Funktionen“ in der Funktionsbeschreibung des Kommandos CREATE-FILE):
explizite Angabe (ungleich des Default-Wertes *STD) eines Volumes bzw. Volume-Sets bei den Operanden VOLUME bzw. VOLUME-SET in der Struktur SUPPORT=*PUBLIC-DISK(STORAGE-CLASS=*NONE(...))
absolute Speicherplatzanforderung mit SPACE=*ABSOLUTE(...) in der Struktur SUPPORT=*PUBLIC-DISK(...)
Ausnahme: Bei Arbeitsdateien sind die Funktionen auch verfügbar, wenn die Berechtigung zur physikalische Allokierung nicht besteht.
Die Systembetreuung kann zusätzlich zur Benutzerinformation eine bis zu acht Zeichen lange Information für die Dateigeneration in den Dateikatalog eintragen (Operand ADM-INFORMATION).
Die Systembetreuung (Privileg TSOS) ist standardmäßig Mit-Eigentümer aller Dateien und Dateigenerationen (kann somit also auch deren Katalogeinträge modifizieren). Diese Mit-Eigentümerschaft kann für permanente Dateien bei Einsatz von SECOS eingeschränkt werden.
Kontrolle
Der Operand DIALOG-CONTROL steuert, ob mit dem Benutzer ein Kontrolldialog geführt werden soll. Im Operanden OUTPUT kann der Benutzer angeben, ob jeder bearbeitete Dateiname in einer garantierten Meldung nach SYSOUT protokolliert werden soll. Bei Einsatz des kostenpflichtigen Subsystems SDF-P können die bearbeiteten Dateinamen dann dem S-Variablenstrom für garantierte Meldungen (SYSMSG) entnommen werden (siehe auch Kommando ASSIGN-STREAM bzw. EXECUTE-CMD im Handbuch „SDF-P“ [34]).
Dateigenerationen auf SM-Pubsets
Der Ablageort einer Dateigeneration auf einem SM-Pubset kann über eine Storage-Klasse bestimmt werden. Dies erleichtert die automatische Verwaltung des Speicherplatzes auf einem SM-Pubset (näheres siehe Handbuch „Einführung in die Systembetreuung“ [14] bzw. „System Managed Storage“ [45]).
Die Systembetreuung definiert für eine Storage-Klasse bestimmte Datei-Attribute, die für alle Dateien, denen diese Storage-Klasse zugewiesen wird, implizit gesetzt werden. Durch die Angabe einer Storage-Klasse entfallen die expliziten Angaben für die Operanden WORK-FILE, VOLUME-SET, VOLUME, DEVICE-TYPE, IO-ATTRIBUTES, DISK-WRITE, FILE-PREFORMAT und AVAILABILITY.
Mit dem Kommando SHOW-STORAGE-CLASS kann sich der Benutzer über alle für ihn verfügbaren Storage-Klassen des SM-Pubsets und die jeweils eingestellten Datei-Attribute informieren.
Werden die Anforderungen an den Ablageort der Dateigeneration geändert (explizit oder implizit über die Storage-Klasse), kann sich der Ablageort der Dateigeneration automatisch ändern, d.h. die Dateigeneration wird auf einen anderen Volume-Set übertragen.
Die Änderung des Ablageortes erfolgt synchron durch Kopieren der Dateigeneration. Die Dateigeneration ist während des Kopiervorgangs von anderen Tasks nicht zugreifbar.
Funktionsübersicht
Funktion / Bedeutung | Operand 1. Stufe | Operand 2./3. Stufe |
---|---|---|
Name der betreffenden Dateigeneration | ||
Datenträger festlegen | ||
Datenträger: Pubset | ||
| STORAGE-CLASS | |
| IO-ATTRIBUTES | |
| DISK-WRITE | |
| AVAILABILITY | |
| FILE-PREFORMAT | |
| VOLUME-SET | |
| VOLUME | |
| DEVICE-TYPE | |
| S0-MIGRATION | |
| USER-INFORMATION | |
| ADM-INFORMATION | |
Datenträger: Privatplatte | = *PRIVATE-DISK | |
| DEVICE-TYPE | |
| VOLUME | |
| SPACE | |
| VOLUME-ALLOCATION | |
| DATA-SUPPORT | |
Datenträger: Pubset oder Privatplatte | = *ANY-DISK | |
| DEVICE-TYPE | |
| VOLUME | |
| SPACE | |
Datenträger: Band | = *TAPE | |
| DEVICE-TYPE | |
| VOLUME | |
| PREMOUNT-LIST | |
Kontrolle bei der Angabe mehrerer Dateien: | ||
| DIALOG-CONTROL | |
| =*NO | |
| =*MORE-THAN-ONE-FILE | |
| =*ERROR | |
| =*CATALOG-CHANGE | |
| =*FILE-CHANGE | |
| =*USER-ID-CHANGE | |
| OUTPUT | |
| =*NO | |
| =*SYSOUT |
Format
MODIFY-FILE-GENERATION-SUPPORT | Kurzname: MDFGNS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Operandenbeschreibung
GENERATION-NAME = <filename 1..54 without-vers with-wild(80)>
Name einer bestehenden Dateigeneration.
Enthält der Generationsname Musterzeichen (Wildcards) oder erfolgt die Angabe teilqualifiziert, wird das Kommando für die entsprechende Dateimenge ausgeführt. Die Verarbeitung kann über die Operanden DIALOG-CONTROL und OUTPUT gesteuert und kontrolliert werden.
Nur die Systembetreuung (Privileg TSOS) darf innerhalb der Benutzerkennung Musterzeichen verwenden.
SUPPORT = *UNCHANGED / *PUBLIC-DISK(...) / *PRIVATE-DISK(...) / *ANY-DISK(...) / *TAPE(...)
Art des Datenträgers, auf dem sich die Dateigeneration befindet. Die Angabe darf der Vereinbarung beim Erstellen des Katalogeintrags (CREATE-FILE-GENERATION) nicht widersprechen.
SUPPORT = *PUBLIC-DISK(...)
Die Dateigeneration befindet sich auf gemeinschaftlicher Platte.
STORAGE-CLASS = *UNCHANGED / *STD / *UPDATE/ <composed-name 1..8> / *NONE(...)
Bestimmt die Eigenschaften des Ablageortes der Dateigeneration.
Eine Storage-Klasse ist ein von der Systembetreuung bereitgestellter, SM-Pubsetspezifischer Behälter für eine definierte Kombination von Dateiattributen. Sie stellt über die zugewiesenen Volume-Set-Listen eine Abbildung dieser Attribute auf das vorhandene Pubset-Service-Angebot her. Diese Abbildung kann detaillierter sein, als dies über die explizite Angabe der Operanden IO-ATTRIBUTES, DISK-WRITE, AVAILABILITY, FILE-PREFORMAT, VOLUME-SET, VOLUME, DEVICE-TYPE und S0-MIGRATION in der Struktur STORAGE-CLASS=*NONE beschreibbar ist.
Die Zuweisung einer Storage-Klasse erleichtert die automatische Verwaltung des Speicherplatzes auf einem SM-Pubset (näheres siehe Handbuch „Einführung in die Systembetreuung“ [14] bzw. „System Managed Storage“ [45]).
Zum Zeitpunkt der Zuweisung muss die angegebene Storage-Klasse (auch implizit mit *STD) existieren und der Benutzer muss berechtigt sein sie zu verwenden. Mit dem Kommando SHOW-STORAGE-CLASS kann sich der Benutzer über alle für ihn verfügbaren Storage-Klassen eines SM-Pubsets und die jeweils eingestellten Datei-Attribute informieren.
Das Attribut WORK-FILE der Storage-Klasse muss mit dem der Dateigenerationsgruppe übereinstimmen.
Die Vereinbarung einer anderen Storage-Klasse (STORAGE-CLASS ungleich *NONE) kann dazu führen, dass die Dateigeneration von ihrem bisherigen Volume-Set verlagert (umallokiert) wird auf einen anderen Volume-Set, der besser zu dieser Storage-Klasse passt. Hierbei können folgende Fälle auftreten:
Wenn die Storage-Klasse AVAILABILITY=*HIGH enthält und der bisherige Volume-Set AVAILABILITY=*STD besitzt, muss die Dateigeneration auf einen Volume-Set mit der Eigenschaft AVAILABILITY=*HIGH umallokiert werden. Ist das Umallokieren nicht möglich, wird das Kommando abgewiesen.
Wenn die Storage-Klasse eine Volume-Set-Liste enthält und die Datei auf keinem Volume-Set dieser Volume-Set-Liste liegt, wird die Dateigeneration nach Möglichkeit auf einen Volume-Set aus der Liste umallokiert. Ist das Umallokieren nicht möglich, wird das Kommando ohne Umallokieren ausgeführt.
Während des Umallokierens ist die Dateigeneration geöffnet. Zugriffe anderer Tasks werden während dieser Zeit abgewiesen.
STORAGE-CLASS = *STD
Ist die Dateigeneration auf einem SM-Pubset abgelegt, wird ihr die Default-Storage-Klasse aus dem Gruppeneintrag der FGG zugewiesen. Die Default-Storage-Klasse wird mit dem Operanden STOR-CLASS-DEFAULT im Kommando CREATE-FILE-GROUP bzw. MODIFY-FILE-GROUP-ATTRIBUTES festgelegt.
Ist keine Default-Storage-Klasse definiert oder befindet sich die Dateigeneration auf einem SF-Pubset, entspricht *STD der Angabe STORAGE-CLASS=*NONE mit Default-Werten.
STORAGE-CLASS = *UPDATE
Der Operand wird nur für Dateigenerationen auf SM-Pubsets ausgewertet, denen bereits eine Storage-Klasse zugewiesen ist.
Die Attribute werden erneut aus dem Storage-Klassen-Katalog gelesen und der Dateigeneration zugewiesen.
STORAGE-CLASS = <composed-name 1..8>
Einer Dateigeneration auf einem SM-Pubset wird die angegebene Storage-Klasse zugewiesen.
War die angegebene Storage-Klasse bereits zugewiesen, werden die Attribute nicht aktualisiert, d.h. zwischenzeitliche Änderungen der Storage-Klasse werden nicht wirksam. Die Aktualisierung der Attribute kann mit *UPDATE sichergestellt werden. Für eine Dateigeneration auf einem SF-Pubset wirkt diese Angabe wie die Angabe STORAGE-CLASS=*NONE mit Default-Werten.
STORAGE-CLASS = *NONE(...)
Der Wert wirkt wie *UNCHANGED, wenn die folgenden Bedingungen alle erfüllt sind:
Die Dateigeneration wurde bzw. wird auf einem Volume-Set für permanente Datenhaltung angelegt.
Der Benutzerkennung ist am betroffenen SM-Pubset eine Default-Storage-Klasse zugewiesen.
Physikalische Allokierung ist nicht erlaubt.
Nur in diesem Fall werden die Operanden PERFORMANCE, USAGE, DISK-WRITE und AVAILIBILITY sowie die Angabe S0-MIGRATION=*ALLOWED ignoriert.
In allen anderen Fällen werden die Eigenschaften des Ablageortes der Dateigeneration über die nachfolgenden Operanden bestimmt und der Dateigeneration wird keine Storage-Klasse zugewiesen bzw. eine bereits zugewiesene Storage-Klasse wird wieder entfernt.
Die Eigenschaften des Ablageortes der Dateigeneration werden über die Operanden der Struktur *NONE(...) bestimmt. Der Dateigeneration wird keine Storage-Klasse zugewiesen bzw. eine bereits zugewiesene Storage-Klasse wird wieder entfernt.
Zur Beschreibung der untergeordneten Operanden siehe Kommando MODIFY-FILE-ATTRIBUTES.
Zur Beschreibung der weiteren Operanden siehe Kommando MODIFY-FILE-ATTRIBUTES.
Kommando-Returncode
(SC2) | SC1 | Maincode | Bedeutung / garantierte Meldungen |
---|---|---|---|
0 | CMD0001 | Kommando ausgeführt | |
2 | 0 | DMS051E | Unstimmigkeiten zum Pool privater Platten oder Fehler bei Operanden |
2 | 0 | DMS0546 | Katalogeintrag der angegebenen Datei hat Maximalgröße erreicht |
2 | 0 | DMS054A | Plattenspeichermangel oder Zugriff auf eine Platte nicht möglich |
2 | 0 | DMS06A9 | Einige Generationen dieser FGG fehlen. |
1 | CMD0202 | Syntax- oder Semantikfehler im Kommando | |
32 | DMS05C7 | Unerwarteter interner Fehler im DVS | |
32 | DMS0584 | Während der Verarbeitung wurde ein Zustand gemeldet, der die Fortführung der Funktion nicht zulässt. | |
64 | CMD0102 | Aktion bei Auswahlangabe (Wildcard): die Bearbeitung wurde im Kontrolldialog mit *TERMINATE bzw. mit K2-Taste abgebrochen | |
64 | CMD0216 | Privilegien-Fehler | |
64 | DMS0501 | Angeforderter Katalog nicht verfügbar | |
64 | DMS0512 | Angeforderter Katalog nicht gefunden | |
64 | DMS051B | Gewünschte Benutzerkennung nicht im Pubset | |
64 | DMS051C | Benutzer hat auf Pubset kein Zugriffsrecht | |
64 | DMS0535 | Angegebene Datei nicht mehrfach benutzbar | |
64 | DMS0557 | Fehlerhafte Datenträger-Angabe | |
64 | DMS055C | Der Katalogeintrag konnte auf der zugew. Privatplatte nicht gefunden werden | |
64 | DMS057A | Angegebene Storage-Klasse passt bezüglich des WORK-FILE-Attributs nicht zur FGG | |
64 | DMS057B | Ungültiger Operand für migrierte Datei | |
64 | DMS057C | Bearbeitung wegen HSMS-Fehler nicht möglich | |
64 | DMS057E | Datei migriert, HSMS nicht verfügbar | |
64 | DMS057F | Migrierte Datei darf nicht umbenannt werden | |
64 | DMS0585 | Während der Katalogverarbeitung bzw. während der Mehrrechnerverarbeitung wurde ein Fehler festgestellt | |
64 | DMS0586 | Der Zugriff bzw. die Belegung eines Datenträgers ist derzeit nicht möglich | |
64 | DMS0587 | Die Benutzung des angegebenen Kommandos wurde von der Systembetreuung eingeschränkt | |
64 | DMS0588 | Die Plattenspeicher-Zuweisung konnte nicht durchgeführt werden | |
64 | DMS05A0 | Änderung der Attribute nicht möglich, da sich noch Daten im Schreib-Cache befinden | |
64 | DMS05BD | Unzulässige Kombination von Datei- und Volume-Set-Attributen | |
64 | DMS05CC | Dateiname bereits katalogisiert | |
64 | DMS05FC | Angegebene Benutzer-Kennung nicht im HOME-Pubset | |
64 | DMS0681 | DVS-Fehler beim Zugriff auf Datei | |
64 | DMS0684 | Datei existiert nicht | |
64 | DMS0610 | Aktion mit Auswahlangabe (Wildcards): Die Kommandoausführung war für mindestens eine selektierte Dateigeneration fehlerhaft | |
64 | DMS0618 | Storage-Klasse unbekannt | |
64 | DMS061A | Storage-Klassen-Katalog konnte nicht gelesen werden | |
64 | DMS0685 | Datei belegt noch keinen Speicherplatz | |
64 | DMS0689 | Es wurden Operanden angegeben, die für Dateien erlaubt sind, die noch keinen Speicherplatz belegen | |
64 | DMS06B5 | Datei eröffnet oder Katalogeintrag nach Systemfehler nicht aktualisiert | |
64 | DMS06C4 | Datei-Generationsgruppe noch nicht katalogisiert | |
64 | DMS06FF | BCAM Verbindung unterbrochen | |
128 | DMS0506 | Funktion wegen Masterwechsel nicht ausgeführt | |
130 | DMS0524 | Systemadressraum erschöpft | |
130 | DMS053C | In der Katalog-Datei des Pubsets kein Platz | |
130 | DMS0582 | Die Datei ist derzeit gesperrt oder in Gebrauch und kann nicht bearbeitet werden | |
130 | DMS0585 | Während der Katalogverarbeitung bzw. während der Mehrrechnerverarbeitung wurde ein Fehler festgestellt. | |
130 | DMS0586 | Der Zugriff bzw. die Belegung eines Datenträgers ist derzeit nicht möglich | |
130 | DMS0588 | Die Plattenspeicher-Zuweisung konnte nicht durchgeführt werden | |
130 | DMS0594 | Nicht genügend virtueller Speicherplatz vorhanden | |
130 | DMS05C8 | Maximale erlaubte Anzahl von Dateien erreicht |
Beispiel
Dateieigenschaften einer Dateigeneration ändern (Speicherplatz/ Primär- und Sekundärzuweisung)
/show-file-attr max.group.2(*4),inf=(alloc=*yes) ——————————————————————— (1)
%0000000003 :2OSG:$USER1.MAX.GROUP.2(*0004) % ------------------------------- ALLOCATION ------------------------------- % SUPPORT = PUB S-ALLOC = 9 HIGH-US-PA = 0 % EXTENTS VOLUME DEVICE-TYPE EXTENTS VOLUME DEVICE-TYPE % 1 GVS2.2 D3435 % NUM-OF-EXT = 1 %:2OSG: PUBLIC: 1 FILE RES= 3 FRE= 3 REL= 3 PAGES
/mod-file-gen max.group.2(*12),
sup=*pub(space=*relative(prim-alloc=90,sec-alloc=30)) ——— (2)
/show-file-attr max.group.2(*4),inf=(alloc=*yes) ——————————————————————— (3)
%0000000093 :2OSG:$USER1.MAX.GROUP.2(*0004) % ------------------------------- ALLOCATION ------------------------------- % SUPPORT = PUB S-ALLOC = 30 HIGH-US-PA = 0 % EXTENTS VOLUME DEVICE-TYPE EXTENTS VOLUME DEVICE-TYPE % 2 GVS2.2 D3435 % NUM-OF-EXT = 2 %:2OSG: PUBLIC: 1 FILE RES= 93 FRE= 93 REL= 93 PAGES
(1) | Das Kommando SHOW-FILE-ATTRIBUTES zeigt, dass für die Dateigeneration MAX.GROUP.2(*4) 3 PAM-Seiten reserviert sind (Anfangszuweisung). |
(2) | Mit dem Kommando MODIFY-FILE-GENERATION-SUPPORT werden die primäre Speicherplatzzuweisung um 90 PAM-Seiten erhöht und die Sekundärzuweisung (für künftige Speicherplatzerweiterungen) auf 30 PAM-Seiten festgelegt. |
(3) | Das Kommando SHOW-FILE-ATTRIBUTES zeigt die neue Anzahl (93) der reservierten Seiten und die neue Sekundärzuweisung (30). |