Melden Sie sich hier an, um auf Kommentare und die Whitepaper-Datenbank zugreifen zu können.

Kein Log-In? Dann jetzt kostenlos registrieren.

Falls Sie Ihr Passwort vergessen haben, können Sie es hier per E-Mail anfordern.

Der Zugang zur Reseller Only!-Community ist registrierten Fachhändlern, Systemhäusern und Dienstleistern vorbehalten.

Registrieren Sie sich hier, um Zugang zu diesem Bereich zu beantragen. Die Freigabe Ihres Zugangs erfolgt nach Prüfung Ihrer Anmeldung durch die Redaktion.

17.05.1985 - 

Hochschule St. Gallen fertigt VAXVMS-Version:

MEBA nun auch als Fortran-Routinesatz

17.05.1985

Seit kurzem existiert eine VAX/ VMS-Version der Befehlssprache MEBA. Die Entwicklungsarbeiten zu dieser Version wurden an der Hochschule St. Gallen durchgeführt.

Bei den MEBA-Installationen an Telefunken-, Siemens- und IBM-Rechnern wird die Ablaufkontrolle von einem zentralen Programm, dem Steuersystem, durchgeführt. In einer Textverwaltungsdatei (MZD) sind neben anderen Textelementen auch die formalen Regeln der MEBA-Befehlssprache abgespeichert. Als Daten des laufenden Steuersystems werden vom Benutzer die Kommandos dieser Befehlssprache eingegeben, diese werden dann mit den aus der MDZ gelesenen formalen Konventionen verglichen. Ist der syntaktische Befehlsaufbau korrekt, wird ein normierter Befehl in der Konvention für Benutzerprogramme in einem Feld aufgebaut.

Auf Steuersystem als Programm verzichtet

Dieses Feld ist ein Parameter des normierten Moduls, eines Unterprogramms mit genau festgelegten Parametern. Die normierten Module bilden die Schnittstelle zwischen dem Steuersystem und den Benutzerprogrammen, jede MEBA-Methode wird vom Steuersystem durch den Aufruf eines methodenspezifischen Moduls zur Ausführung gebracht. Dieser Aufruf erfolgt durch rechnerspezifische Techniken, zum Beispiel dynamisches Nachladen oder Start eines Folgeprogramms. Nach Beendigung eines Methodenlaufs übernimmt das Steuersystem wieder die Ablaufkontrolle. Ergebnisse des Modullaufs werden in einer Datei MAD abgelegt und können von später gestarteten Methoden angesprochen werden.

Im Hinblick auf die dezentrale Arbeitsphilosophie von DEC-Rechnern einerseits und das zunehmende Auftreten von Kleinrechnern andererseits wurde bei der VAX/VMS-Version das Konzept abgeändert. Auf eine zentrale Institution wird verzichtet. Das Steuersystem als Programm wurde abgeschafft, lediglich die Konventionen der MEBA-Befehlssprache bleiben erhalten. MEBA-Befehle sind Befehle der VAX-Jobkontrollsprache .

Anstatt zum Beispiel (OLS,MODELL = LINAN,MDATEN = LIN-DAT,SNAME = LINOLS) wird nun $0LS MODELL = LINAN,MDATEN = LINDAT,SNAME = LINOLS geschrieben.

Jedem Befehl entspricht ein Hauptprogramm

Jeder Befehl bewirkt das Durchlaufen einer Kommandofolge in Abhängigkeit von zwei Parametern der Jobkontrollsprache. Der erste kennzeichnet das dem speziellen Befehl zugeordnete Hauptprogramm, der zweite die dem Befehlsnamen folgende Zeichenkette (im Beispiel MODELL- . . .). In Wirklichkeit ist das Konzept etwas komplizierter, um eine flexible Einarbeitung von MEBA-Befehlen in VMS-Kommandoprozeduren zu ermöglichen. Die Kommandofolge legt diese Zeichenkette zusammen mit einigen globalen Variablen in einer Datei ab und bringt das Hauptprogramm zur Ausführung.

Jedem MEBA-Befehl entspricht also genau ein Hauptprogramm. In diesem Hauptprogramm sind in einer Data-Anweisung die formalen Befehlskonventionen festgehalten. Die im Vergleich zu anderen Installationen erheblich verkleinerte MZD wird als Relikt betrachtet und enthält lediglich noch von bestimmten Methodenprogrammen abgerufene Texte. Ein Vorlauf-Unterprogramm liest die von der Kommandofolge abgelegte Zeichenkette ein, überprüft sie mit Hilfe der Data-Information auf syntaktische Richtigkeit und baut den normierten Befehl in der Konvention für Benutzerprogramme auf. Durch einen normalen Unterprogrammaufruf wird anschließend der normierte Modul gestartet. In der Datei MAD werden wiederum methodenübergreifende Informationen abgelegt.

Die VAX/VMS-Version ist vollständig in Fortran codiert. Die Dateien MAD, MZD sowie zwei mögliche Datenbanken mit Direktzugriff werden durch eine Gruppe abgekapselter Datenzugriffsprogramme repräsentiert. Die Dateiverwaltung erfolgt über die Fortran-Ein- und -Ausgabe, allerdings mit Hilfe eines auch in der Fortran-77-Konvention nicht vorgesehenen VAX-spezifischen Satzschlüsselzugriffs auf Dateien.

Somit kann nun das gesamte MEBA-System als ein Satz von Fortran-Routinen übernommen werden; lediglich ein "Datenkapsel-Modul der unteren Ebene" ist eventuell rechnerunabhängig neu zu erstellen. Eventuell können noch im Vergleich zu gängigen Fortran-IV-Compilern nicht aufwärtskompatible Fortran-77-Übersetzer zu Schwierigkeiten führen.

Da kein aufwendiges Steuersystem notwendig ist, sollte es künftig möglich sein, allein durch die Große der Einzelmethoden umfangmäßig bestimmte Teilsysteme auf Kleinrechnern zu installieren.

Eine andere Möglichkeit der Neukonzeption wird bereits heute ausgenutzt. Häufig stehen einer Institution mehrere durch ein lokales Netz verbundene VAX-Rechner von Typ II/ 780 oder II/750 zur Verfügung. Zur optimalen Auslastung der vorhandenen Kapazitäten, zum Beispiel zur Ausnutzung der Rechenzeit eines nachts üblicherweise ungenutzten Rechners durch Langläufer, können aus wenigen Methoden bestehende Subsysteme kurzzeitig auf andere Rechner ausgelagert werden. Nur MZD, MAD, die zum Beispiel fur Langläufe benötigten Programme und zwei Kommandodateien müssen auf den Zielrechner kopiert. die MAD bei Bedarf zurückgelagert werden.

*Slavko V. Pavelic ist wissenschaitlicher Mitarbeiter der GMD, St. Augustin.