Der virtuelle Adressraum für System und Benutzer, der durch Hauptspeicher und Seitenwechselspeicher realisiert ist, wird in folgende 6 Klassen unterteilt:
Klasse 1: residente Systemmodule (z.B Unterbrechungsanalyse, Pagingroutine, Task-Management, physikalische Ein-/Ausgabe); residente Tabellen
Klasse 2: seitenwechselbare Systemmodule (z.B Makro- und Kommandoverarbeitung)
Klasse 3: residente Tabellen, die dynamisch angelegt und wieder abgebaut werden (z.B. TCBs, PCBs, Adressumsetztabellen)
Klasse 4: seitenwechselbare Tabellen, die dynamisch angelegt und wieder abgebaut werden (z.B. Job-Management-Tabellen, DVS-Tabellen,Tabellen für Datenfernverarbeitung); nachladbare Systemmodule und sog. Shared Code, der über DSSM geladen und entladen werden kann
Klasse 5: seitenwechselbare Tabellen, die nur von der jeweiligen Task benötigt werden (z.B TFT, E/A-Bereiche, Tabellen zur Verwaltung von Prozeduren, Kennwort-Tabelle)
Klasse 6: Benutzerprogramm, Common-Memory-Pools
Die Klassen 1 bis 4 sind privilegierter Systemadressraum, der für den Benutzer nicht adressierbar ist. Eine Ausnahme ist der Shared-Code im Klasse-4-Speicher, der im Allgemeinen auch von Benutzern gelesen und ausgeführt werden kann.
Die Klasse 5 ist überwiegend privilegierter Benutzeradressraum, der als Kommunikationsbereich zwischen Benutzer- und Systemadressraum fungiert und mit Ausnahme der Ein-/Ausgabe-Bereiche für den Benutzer nicht adressierbar ist.
Die virtuelle Adressraumaufteilung kann an die installationsspezifischen Bedürfnisse angepasst werden, indem das Standard-EXEC auf der Server Unit /390 entsprechend modifiziert wird (siehe Kapitel „Anpassen des BS2000-Organisationsprogramms" im Handbuch "BS2000 OS DX Systeminstallation"[55]). Außerdem werden weitere hierzu benötigte Daten für die Speicherverwaltung (Memory Management) über den Parameterservice eingelesen (siehe Kapitel „Parameterservice").
Kommando | Bedeutung |
ADD-USER | Eintrag im Benutzerkatalog erstellen |
MODIFY-USER-ATTRIBUTES | Festlegung der max. Größe des Klasse-6-Speichers einer Benutzerkennung (ADDRESS-SPACE-LIMIT) |
SHOW-USER-ATTRIBUTES | Ausgabe der max. erlaubten Größe des Klasse-6-Speichers einer Benutzerkennung (Feld ADDRESS-SPACE-LIMIT) |
SHOW-MEMORY-POOL-STATUS | Ausgabe der aktuell im System angelegten Memory Pools und der jeweils angeschlossenen Tasks |
Makro | Bedeutung |
ALESRV | Programm an einen Datenraum anschließen oder die Verbindung auflösen |
ALINF | Informationen über die Zugriffslisten ausgeben, mit denen Datenräume und deren Verbindungen verwaltet werden |
CSTAT | Status von Speicherseiten eines Programms ändern |
CSTMP | Lese-/Schreibstatus auf einen Memory Pool ändern |
DISMP | Teilnahme an einem Memory Pool beenden |
DSPSRV | virtuellen Adressraum für Datenadressierung erzeugen, erweitern, verkleinern oder löschen, Informationen über einen Datenraum ausgeben oder diesen freigeben |
ENAMP | Memory Pool einrichten oder die Teilnahme an einem bestehenden Memory Pool ermöglichen |
MINF | Informationen über die Speicherbelegung und Größe des Klasse-6-Speichers oder eines Memory Pools ausgeben |
RELM | zusammenhängenden Speicherbereich des aufrufenden Programms freigeben |
RELMP | (zusammenhängenden) Speicherplatz eines Memory Pools freigeben |
REQM | (zusätzlichen) Speicherplatz für das aufrufende Programm anfordern |
REQMP | (zusammenhängenden) Speicherplatz für einen Memory Pool anfordern |
SHOWMP | Ausgabe der aktuell im System angelegten Memory Pools und der jeweils angeschlossenen Tasks |
Tabelle 6: Schnittstellenübersicht zur Verwaltung des virtuellen Adressraums