------------------------------------------------------------ | SOFTWARE- | Wartungsunterstuetzung | | | DOKUMENTATION | | OMOS 1630 | |-------------------| Anleitung |-------------| | 11/87 | fuer den Bediener | 2.0 | ------------------------------------------------------------ Programmtechnische Anleitung fuer den Bediener Beschreibung Teil 3 Wartungsunterstuetzung MGS K 1600 VEB Robotron-Vertrieb Die vorliegende Software-Dokumentation, Anleitung fuer den Bediener, Teil 3: "Wartungsunterstuetzung", entspricht dem Stand 11/1987 und unterliegt dem Aenderungsdienst. Nachdruck, jegliche Vervielfaeltigung oder Auszuege daraus sind unzulaessig. Die Ausarbeitung erfolgte durch ein Kollektiv des VEB Robotron- Vertrieb Berlin. Im Interesse einer staendigen Weiterentwicklung werden alle Leser gebeten, Hinweise zur Verbesserung dem Herausgeber mitzuteilen. Herausgeber: VEB Robotron-Vertreib Berlin Mohrenstr.62 PSF 1235 Berlin 1086 (C) Kombinat Robotron 1987 Kurzreferat Der Komplex Wartungsunterstuetzung ermoeglicht dem Bediener die Ueberwachung der Geraetetechnik waehrend der normalen Arbeit. Dazu stehen ihm 3 sich gegenseitig ergaenzende Programmkomponen- ten zur Verfuegung. Durch das System der Fehlerregistrierung werden die wesentlich- sten Fehlerzustaende (auch korrigierbare Fehler, die vom Be- diener im normalen Verlauf unbemerkt bleiben) erfasst und koennen auf Verlangen in aufbereiteter Form ausgedruckt werden. Mit Hilfe der On-Line-Geraetetestprogramme koennen einzelne peri- phere Geraete unter On-Line-Bedingungen neben der normalen Arbeit zielgerichtet getestet werden. Das allgemeine E/A-Testprogramm IOX dient zur Ueberpruefung von Magnetplatten und -baendern, unabhaengig von deren Datenformat. Das letzte Kapitel beschreibt die Testprogramme, die speziell fuer den Test der Geraetetechnik fuer Bildverarbeitungssysteme entwickelt wurden. Achtung! -------- Diese Schrift ist noch nicht entgueltig abgeschlossen. Kapitel 2 wird noch bearbeitet. Die Seitennummern sind nicht aktualisiert. Die Beschreibung fuer die Programme ONPRIN, ONPAPE, ONTAPE, sind der MOOS-Dokumentation zu entnehmen. Inhaltsverzeichnis ------------------ Seite 1. System der Fehlerregistrierung 7 1.1. Allgemeine Grundlagen 7 1.1.1. Exekutiveroutinen 7 1.2. Fehlerregistrierungstask ERRLOG und Fehler- registrierungsinterface ELI 8 1.2.1. Nutzung von ERRLOG und ELI 9 1.3. ELI-Schalter 9 1.3.1. Registrierschalter 9 1.3.2. ERROR-Begrenzungsschalter 10 1.3.2.1. Begrenzungsschalter /LIM 10 1.3.2.2. Begrenzungsschalter fuer schwerwiegende Fehler /HL:n 10 1.3.2.3. Ruecksetzschalter /RE 10 1.3.2.4. Begrenzungsschalter fuer leichte Fehler /SL:n 11 1.3.3. Dateischalter 11 1.3.3.1. Der Append-Schalter /AP 11 1.3.3.2. Der Switch-Schalter /SW 11 1.3.3.3. Der Backup-Schalter /BA 11 1.3.4. Der Display-Schalter /SH 12 1.4. RPT - Task zur Erstellung von Fehlerprotokollen 13 1.4.1. Paketauswahlschalter 13 1.4.1.1. Der Datumsschalter (/DATE) 14 1.4.1.2. Der Geraeteschalter (/DEVICE) 14 1.4.1.3. Der Paketschalter (/PACKET) 15 1.4.1.4. Der Typenschalter (/TYPE) 15 1.4.1.5. Der Kennsatzschalter (/VOLUME) 16 1.4.2. Protokollformatschalter (/FORMAT) 16 1.4.2.1. Kurzprotokolle 16 1.4.2.2. Vollstaendige Protokolle 17 1.4.2.3. Registerprotokolle 18 1.4.3. Schalter fuer die Ausgabebreite (/WIDTH) 18 1.5. RPT - Standardkommandozeile 19 1.6. Fehlernachrichten 19 1.6.1. ELI - Nachrichten 19 1.6.2. ERRLOG - Nachrichten 20 1.6.3. RPT - Nachrichten 21 2. System der On-Line-Geraetetestprogramme 35 2.1. Vorausetzungen fuer die Anwendung der On-Line- Geraetetestprogramme 35 2.2. Anwendungsmoeglichkeiten der On-Line- Geraetetestprogramme 35 2.2.1. Nutzer-Modus 36 2.2.2. Service-Modus 37 2.2.3. Mehrgeraete-Test 38 2.3. Bildung der On-Line-Geraetetestprogramme 39 2.4. Allgemeine Fehlermitteilungen 39 2.4.1. MCR-Kommando-Fehlermeldungen 39 2.4.2. Fehlermeldungen der On-Line-Geraetetestprogramme 40 2.4.3. Umrechnung der logischen Blocknummer und physischen Adresse 41 2.5. Beschreibung der On-Line-Geraetetestprogramme 41 2.5.1. On-Line-Geraetetestprogramm fuer Kassettenplatten- speicher CM 5400 41 3 2.5.1.1. Geraetekennzeichen 41 2.5.1.2. Beschreibung der Testroutinen 42 2.5.1.3. Fehlermitteilungen 45 2.5.1.4. Aktivierung des Nutzer-Modus 47 2.5.1.5. Zusammenfassender Testbericht im Nutzer-Modus 48 2.5.1.6. Aktivierung des Service-Modus 48 2.5.1.7. Auswahl der Testparameter im Service-Modus 48 2.5.1.8. Schalter fuer die Unterbrechung des Service-Modus 50 2.5.1.9. Interaktiver Test im Service-Modus 51 2.5.2. On-Line-Geraetetestprogramm fuer Magnetbandgeraet CM 5300/CM 5303 52 2.5.2.1. Geraetekennzeichen 52 2.5.2.2. Beschreibung der Testroutinen 53 2.5.2.3. Fehlermitteilungen 57 2.5.2.4. Aktivierung des Nutzer-Modus 61 2.5.2.5. Zusammenfassender Testbericht im Nutzer-Modus 62 2.5.2.6. Aktivierung des Service-Modus 62 2.5.2.7. Auswahl der Testparameter im Service-Modus 62 2.5.2.8. Schalter fuer die Unterbrechung des Service-Modus 65 2.5.2.9. Interaktiver Test im Service-Modus 65 2.5.3. On-Line-Geraetetestprogramm fuer Bedieneinheit CM 1608 67 2.5.3.1. Geraetekennzeichen 67 2.5.3.2. Beschreibung der Testroutinen 67 2.5.3.3. Fehlermitteilungen 69 2.5.3.4. Aktivierung des Nutzer-Modus 70 2.5.3.5. Anzeigen des Test-Endes im Nutzer-Modus 70 2.5.3.6. Aktivierung des Service-Modus 70 2.5.3.7. Auswahl der Testparameter im Service-Modus 71 2.5.3.8. Schalter fuer die Unterbrechung des Service-Modus 72 2.5.3.9. Interaktiver Muster-Test im Service-Modus 72 2.5.4. On-Line-Geraetetestprogramm fuer Paralleldrucker CM 6313 73 2.5.4.1. Geraetekennzeichen 73 2.5.4.2. Beschreibung der Testroutinen 74 2.5.4.3. Fehlermitteilungen 75 2.5.4.4. Aktivierung des Nutzer-Modus 75 2.5.4.5. Anzeigen des Testendes 75 2.5.4.6. Aktivierung des Service-Modus 75 2.5.4.7. Auswahl der Testparameter im Service-Modus 76 2.5.4.8. Schalter fuer die Unterbrechung des Service-Modus 77 3. Allgemeines E/A-Testprogramm 80 3.1. Anwendungsbedingungen 80 3.1.1. Einbinden der Task IOX in das System OMOS 1630 80 3.1.2. Aktivieren von IOX 80 3.1.2.1. Installieren 81 3.1.2.2. Aufruf 81 3.1.2.3. Verwendung von Indirektkommandodateien 81 3.2. Arbeitsweise 81 3.2.1. Arbeitsmodi 84 3.2.1.1. Kommandomodus 84 3.2.1.2. Ausfuehrungsmodus 84 3.2.1.3. Interaktiver Modus 85 3.2.2. Testkonfiguration, Geraeteklassen und Testverfahren 86 3.2.3. Testparameter 87 3.2.3.1. Allgemeine Testparameter 88 3.2.3.2. Geraeteabhaengige Testparameter 89 4 3.2.4. Testprotokolle 90 3.2.4.1. Aktivitaetsreport 91 3.2.4.2. Fehlerreports 92 3.3. Beschreibung der Kommandos 93 3.3.1. ABORT - Taskabbruch 94 3.3.2. BADBLOCKS - Festlegen/Anzeigen fehlerhafter Bloecke 95 3.3.3. BUFFERSIZE - Festlegen der Puffergroesse 96 3.3.4. COMPAREDATA - Datenvergleich 97 3.3.5. CONFIGURE - Festlegen/Anzeigen der Testkonfiguration 98 3.3.6. CTRL/C - Steuerungsuebergabe 100 3.3.7. CONTROL-C - Steuerungsuebergabe im interaktiven Modus 101 3.3.8. DESELECT - Ausschluss eines Geraetes vom Test 102 3.3.9. ERRORLIMIT - Festlegen des Fehlerlimits 103 3.3.10. EXECUTE - Parallele Taskbearbeitung 104 3.3.11. EXIT - Beenden der Arbeit von IOX 105 3.3.12. FM-16-D - Plattentest 106 3.3.13. HELP - Kommandohilfe 107 3.3.14. INTERLEAVE - Uebergehen von Bloecken 108 3.3.15. LOGFILE - Reportsteuerung 109 3.3.16. PARAMETERLIST - Informationsausgabe 110 3.3.17. PATTERN - Festlegen/Anzeigen von Testmustern 112 3.3.18. PRINTSUMMARY - Zwischenzeitlicher Report 113 3.3.19. PROCEED - Fortsetzungskommando 114 3.3.20. RANDOM - Zugriffssteuerung 115 3.3.21. RANGE - Festlegen/Anzeigen des Testbereichs 116 3.3.22. RECORDS - Blockanzahl 117 3.3.23. REPORTERRORS - Fehlerreport-Steuerung 118 3.3.24. RESTART - Restartkommando 119 3.3.25. RETRIES - Wiederholungssteuerung 120 3.3.26. RUNTIME - Testdauer 121 3.3.27. SELECT - Geraeteauswahl zum Test 122 3.3.28. SPY - Anfordern von Statusinformationen 123 3.3.29. START - Startkommando 124 3.3.30. SUMMARYTIME - Festlegen des Reportintervalls 125 3.3.31. TEMPORARYFILE - Groesse der Arbeitsdatei 126 3.3.32. VERIFY - Vergleichslesen fuer Platten 127 3.3.33. VOLUMECHECK - Datentraegerpruefung fuer Platten 128 3.3.34. WAIT - Wartekommando 129 3.3.35. WRITECHECK - Schreibpruefung fuer Platten 130 3.4. Durchgaengiges Beispiel einer Testprozedur 131 3.5. Fehlermitteilungen 136 3.5.1. Fehlernachrichten mit Geraeteangaben 136 3.5.2. Fehlernachrichten ohne Geraeteangaben 141 4. Testsystem fuer BVS-Geraete 4.1. Einleitung 4.2. Beschreibung der Testprogramme 4.2.1. Arbeitsweise 4.2.2. Testprogramm fuer Bildspeicher RMST 4.2.3. Testprogramm fuer Grafiksteuerung GDTST 4.2.3. Testprogramm fuer Displayprozessor DDTST 4.2.4. Testprogramm fuer Rollkugeleinheit TBTST 4.3. Testbeispiele 4.3.1. Testbeispiel fuer RMTST 4.3.2. Testbeispiel fuer GDTST 4.3.3. Testbeispiel fuer DDTST 5 Bildverzeichnis --------------- Seite Bild 1 Zusammenwirken der Komponenten des Fehler- registriersystems 12 Bild 2 Beispiel fuer ein Summen-Fehlerprotokoll 21 Bild 3 Beispiel fuer ein Geraetefehler-Protokoll 24 Bild 4 Beispiel fuer ein Paritaetsfehler-Protokoll 26 Bild 5 Beispiel fuer die Auswertung des Fehlerspeichers zur Registrierung von korrigierten 1-Bit-Fehlern 27 Bild 6 Beispiel zu einem Protokoll fuer unerwartete Trap oder Interrupt 28 Tabellenverzeichnis ------------------- Seite Tabelle 1 Schalter 16 Tabelle 2 Fehlerbedingungen fuer Kassettenplattenspeicher 46 Tabelle 3 Test-Parameter fuer Kassettenplattenspeicher 49 Tabelle 4 Fehlerbedingungen fuer Magnetbandgeraete 58 Tabelle 5 Test-Parameter fuer Magnetbandgeraete 63 Tabelle 6 Test-Parameter fuer Bediengeraete 71 Tabelle 7 Test-Parameter fuer Drucker 76 Tabelle 8 Kategorien der IOX-Kommandos Abkuerzungsverzeichnis Sachwortverzeichnis 6 1. System der Fehlerregistrierung --------------------------------- 1.1. Allgemeine Grundlagen -------------------------- Das Teilsystem "Fehlerregistrierung" des OMOS 1630 ermoeglicht dem Anwender eine laufende Ueberwachung der Geraetetechnik waeh- rend der normalen Arbeit. Es werden Informationen ueber Fehler und Ereignisse registriert, die bei dem Geraetesystem auftreten, so dass entweder sofortige Massnahmen ergriffen werden koennen, oder diese Informationen werden fuer eine spaetere Analyse und Protokollierung verwendet. Bei der Fehlerregistrierung werden Fehler der externen Speicher- geraete (Platte und Magnetband), sowie auch Hauptspeicherfehler behandelt. Das Fehlerregistriersystem besteht aus drei Tasks: - ERRLOG (Error Logger) - Fehlerregistrator - ELI (Error Log Interface) - Fehlerregistrierungsinterface - RPT (Report Generator) - Protokollgenerator Wenn die Exekutive oder ein Geraetedriver einen Fehler entdeckt, dann erzeugen die Exekutiveroutinen ein Fehlerregistrierpaket im Pool, um das Ereignis zu beschreiben. Durch ERRLOG wird das Paket vom Pool in die Fehlerregistrierdatei (Error Log File) auf Platte geschrieben. ERRLOG erhaelt Nutzerkommandos vom Fehlerregistrierungsinterface (ELI), welche die ERRLOG-Arbeit steuern. Durch diese Kommandos werden Pakete, die als Kommandopakete bezeichnet werden, an die ERRLOG-Task gesendet. RPT erzeugt Protokolle aus den Informationen der Fehlerregi- strierdatei. 1.1.1. Exekutiveroutinen ------------------------ Die Routinen in OMEX 1630 erfassen folgende Fehlerzustaende: - Unerwartete Traps oder Interrupts Treten Traps oder Interrupts zu nicht belegten Vektoren auf, werden diese bei nicht aktivierter Fehlerregistrierung verwor- fen. Im aktiven Zustand der Fehlerregistrierung sind alle nicht belegten Vektoren mit Adressen von Routinen gefuellt, die eine Auswertung dieser Fehlersituation vornehmen. Derartige Traps oder Interrupts koennen durch Umgebungseinfluesse (z.B. stati- sche Entladungen, Stoerungen in elektrotechnischen Anlagen) vorkommen. Ursache kann aber auch ein gueltiger Interrupt zu einer falschen Adresse sein. - Geraetefehler Eine Anschlusssteuerung brachte einen Interrupt mit gesetztem Fehlerbit im Statusregister. Der Inhalt der Geraeteregister so- wie weitere Informationen ueber den augenblicklichen Systemzu- stand werden abgespeichert. - Interrupt-Time-Outs Die Zeitueberwachung fuer Dateiuebertragungen wird programm- technisch vorgenommen. Bringt ein Geraet im vorgegebenen Zeit- intervall keinen Interrupt, werden Informationen aehnlich denen bei Geraetefehlern gesammelt. 7 - Hauptspeicherfehler Hauptspeicherfehler treten auf, wenn das Paritaetsbit, das bei einer Schreiboperation gespeichert wurde, nicht mit der berech- neten Paritaet uebereinstimmt, wenn die Daten gelesen werden. Beim Auftreten der genannten Fehler sammeln die OMEX-Routinen die Informationen und schreiben diese in die Fehlerregistrierpakete im Systempool. Weiterhin werden Informationen ueber Systemereig- nisse (z.B. das Mounten und Dismounten von Geraeten) einbezogen, welche ebenfalls registriert werden. Ausserdem kann auch eine Textnachricht in die Fehlerregistrierdatei eingefuegt werden, in- dem das MCR-Kommando SSM (s. Anleitung fuer den Bediener, Teil 2) verwendet wird. Im System der Fehlerregistrierung wird zwischen schwerwiegenden (hard) und leichten (soft) Fehlern unterschieden. Schwerwiegende Fehler sind solche, die zum Abbruch einer E/A-Operation fuehren, weil der Geraetedriver die Funktion nach mehrfachen Versuchen nicht ausfuehren kann. Leichte Fehler sind solche, bei denen nach mehrfachen Versuchen die E/A-Operation doch noch ausgefuehrt wer- den kann. Durch die Fehlerregistrierung werden sowohl leichte als auch schwerwiegende Fehler registriert. Wird durch ERRLOG ein Fehlerregistrierpaket in die entsprechende Fehlerregistrierdatei geschrieben, erhaelt dieses eine Nummer, welche seine Position innerhalb der Datei beschreibt. RPT benutzt diese Nummer fuer den Verweis auf das Ereignis bei seinen Opera- tionen. Die Exekutive enthaelt einen Modul fuer die Fehlerregi- strierung (SMSG$), durch welchen Fehlerregistrierpakete an den Fehlerregistrator gesendet werden. Nutzertasks koennen SMSG$ ver- wenden, um mit dem Fehlerregistrator zu korrespondieren. 1.2. Fehlerregistrierungstask ERRLOG und Fehlerregistrierungs- interface ELI -------------------------------------------------------------- ERRLOG empfaengt Ereignis- und Statusinformationen von Geraete- drivern und der Exekutive in Form von Fehlerregistrierpaketen und traegt diese in eine Fehlerregistrierdatei auf Platte ein. Die Exekutive nimmt eine Fehlerbegrenzung vor, d. h., es wird nur eine entsprechende Anzahl von Fehlern fuer jedes Geraet regi- striert. Anschliessend wird die Fehlerregistrierung fuer das ent- sprechende Geraet gestoppt. ELI, das Benutzerinterface fuer ERRLOG, beinhaltet Schalter zum - Starten oder Stoppen der Fehlerregistrierung, sowie deren Be- grenzung - Aendern von Geraetefehlergrenzen bzw. Fehlerzaehlungen - Bestimmen oder Aendern von Registrierdatei- oder Sicherungs- dateinamen - Anzeigen von Informationen ueber den Fehlerregistrierstatus eines beliebigen Geraetes oder des gesamten Systems Um das System der Fehlerregistrierung zu ermoeglichen, muss ERRLOG installiert sein. Die Programme ELI und RPT koennen installiert werden, wenn deren Funktionen genutzt werden sollen. Fuer die Nutzung der Programme ist auch das MCR-Kommando RUN moeglich. 1.2.1. Nutzung von ERRLOG und ELI 8 --------------------------------- Das allgemeine Format des ELI-Kommandos lautet: ELI>[filespec]/switch1[...switchn] filespec Bezeichnet ein Geraet oder den Namen einer Fehlerregistrierda- tei, einer Sicherungsdatei oder einer Datei zum Anhaengen an die aktuelle Fehlerregistrierdatei switches Damit wird eine ERRLOG-Operation festgelegt, geaendert oder an- gezeigt. Es muss mindestens ein Schalter angegeben werden. Bei der Nutzung der ERRLOG-Standardbedingungen ist folgendes Kommando einzugeben: ELI>/LOG Durch dieses Kommando wird ERRLOG gestartet, als Standardregi- strierdatei wird LB:[1,6]LOG.ERR und als Standardsicherungsdatei wird LB:[1,6]BACKUP.ERR benutzt. Weiterhin wird durch den /LOG- Schalter die Fehlerbegrenzung aktiviert. Die Standardfehlergrenze betraegt 5 fuer schwerwiegende und 8 fuer leichte Fehler bei je- dem Geraet. 1.3. ELI-Schalter ----------------- 1.3.1. Registrierschalter ------------------------- [filespec]/LOG /-LOG /NOLOG Durch die Registrierschalter wird die Fehlerregistrierung im System gestartet oder gestoppt. Der /LOG-Schalter startet die Fehlerregistrierung. Es kann wahlweise eine Dateispezifikation angegeben werden, in welche die vom Fehlerregistrator erfassten Daten geschrieben werden. Wird eine bereits existierende Datei angegeben, werden die neuen Daten an diese Datei angefuegt. /-LOG bzw. /NOLOG beenden die Fehlerregistrierung. Nebenschalter: /-LIM Durch den Nebenschalter /-LIM wird die Fehlerbegrenzung ausge- schaltet. /NV Dieser Schalter bewirkt, dass eine neue Version der Fehlerregi- strierdatei erzeugt wird (entweder die Datei, die in der Kom- mandozeile spezifiziert wurde, oder die Standarddatei LB:[1,6] LOG.ERR). 9 1.3.2. ERROR-Begrenzungsschalter -------------------------------- Mit diesen Schaltern wird die Fehlerbegrenzung von ERRLOG gesteu- ert. Die Fehlerbegrenzung kann eingeleitet, beendet oder die Feh- lergrenzen koennen veraendert werden. Wenn ein Geraet eine vom Anwender festgelegte Fehlergrenze bzw. die Standardfehlergrenze erreicht, wird eine Warnungsmeldung ueber das Terminal ausgege- ben: ERRLOG--**WARNING: Device dd: Exceeded (xxxx) Limit (n) Dabei bedeutet xxxx den Typ "soft" bzw. "hard", sowie n die Feh- lergrenze. Bei Erreichen der Fehlergrenze wird die Fehlerregi- strierung fuer den entsprechenden Fehlertyp eingestellt, bis die Fehler- und QIO-Zaehlung auf Null zurueckgestellt, oder die Feh- lergrenze erhoeht wird. Die Fehlerregistrierung fuer ein Geraet wird eingestellt, wenn die Fehlergrenzen fuer beide Fehlertypen erreicht wurden. 1.3.2.1. Begrenzungsschalter /LIM --------------------------------- /LIM /-LIM /NOLIM Durch den Schalter /LIM wird die Fehlerbegrenzung eingeleitet. Dieser Schalter ist Standard bei der Aktivierung der Fehlerregi- strierung. 1.3.2.2. Begrenzungsschalter fuer schwerwiegende Fehler /HL:n ------------------------------------------------------------- dev1:[,...,devn:]/HL:n Durch den /HL-Schalter wird die Anzahl n von schwerwiegenden Feh- lern festgelegt, die fuer die spezifizierten Geraete erfasst wer- den. Als Wert fuer n kann 0 bis 255 angegeben werden. Bei Angabe von 255 wird die Begrenzung der Fehlerregistrierung ausser Kraft gesetzt. Nebenschalter: /SL:n Damit kann die Fehlergrenze fuer leichte Fehler festgelegt wer- den. 1.3.2.3. Ruecksetzschalter /RE ------------------------------ dev1:[,...,devn:]/RE[SET] Durch diesen Schalter wird die QIO- und Fehlerzaehlung fuer die spezifizierten Geraete auf Null zurueckgesetzt. In einer Komman- dozeile koennen bis zu 14 Geraete angegeben werden. Nach erfolg- tem Ruecksetzen der Zaehlung auf Null wird auf dem Terminal fol- gende Meldung ausgegeben: ERRLOG-- Error and QIO counts reset for ddnn: 1.3.2.4. Begrenzungsschalter fuer leichte Fehler /SL:n 10 ------------------------------------------------------ dev1:[,...,DEVN:]/SL:n Durch den /SL-Schalter wird die Anzahl n von leichten Fehlern festgelegt, die fuer die spezifizierten Geraete erfasst werden. Als Wert fuer n kann 0 bis 255 angegeben werden. Bei Angabe von 255 wird die Begrenzung der Fehlerregistrierung ausser Kraft ge- setzt. Nebenschalter: /HL:n Damit kann die Fehlergrenze fuer schwerwiegende Fehler festge- legt werden. 1.3.3. Dateischalter -------------------- 1.3.3.1. Der Append-Schalter /AP -------------------------------- filespec/AP[PEND] Durch diesen Schalter wird die spezifizierte Datei an die aktu- elle Fehlerregistrierdatei angehaengt. Die spezifizierte Datei bleibt nach dem Anhaengen erhalten (Standard). Nebenschalter: /DE[LETE] Die spezifizierte Datei wird nach dem Anhaengen geloescht. 1.3.3.2. Der Switch-Schalter /SW -------------------------------- [filespec]/SW[ITCH] Durch den /SW-Schalter wird die aktuelle Fehlerregistrierdatei in die spezifizierte Datei kopiert und die Fehlerregistrierung be- ginnt in dieser Datei. Bei der Standardoperation werden die Daten an die vorhandene Version der Datei angehaengt und die alte Ver- sion der Fehlerregistrierdatei bleibt erhalten. Nebenschalter: /NV Es wird eine neue Version der spezifizierten Datei erstellt. /DE[LETE] Die aktuelle Fehlerregistrierdatei wird nach dem Kopieren ge- loescht. 1.3.3.3. Der Backup-Schalter /BA -------------------------------- filespec/BA[CKUP] Durch den /BA-Schalter wird eine Datei spezifiziert, die als Sicherungsdatei verwendet wird, wenn der Fehlerregistrator nicht in die aktuelle Fehlerregistrierdatei schreiben kann. Standard fuer die Sicherungsdatei ist LB:[1,6]BACKUP.ERR. 11 Bei Eroeffnung der Sicherungsdatei wird folgende Meldung ueber das Terminal ausgegeben: ERRLOG -- Log file error - logging continuing on backup file Zu diesem Zeitpunkt sollte eine weitere Sicherungsdatei spezifi- ziert werden, falls erneut Probleme mit der Sicherungsdatei oder der Platte, auf der sich die Datei befindet, auftreten. Wenn der Fehlerregistrator versucht, die Fehlerregistrierung in einer nicht existierenden Sicherungsdatei fortzusetzen, wird fol- gende Terminalmeldung ausgegeben: ERRLOG -- Backup file error - logging discontinued Danach wird die Fehlerregistrierung abgebrochen. 1.3.4. Der Display-Schalter /SH ------------------------------- [dev1:,...,devn:]/SH[OW] Mit diesem Schalter werden Informationen ueber die Fehlerregi- strierung fuer die spezifizierten Geraete ausgegeben. Es koennen maximal 14 Geraete in einer Kommandozeile angegeben werden. Wird kein Geraet angegeben, werden die Informationen fuer alle Geraete mit Fehlerregistrierung angezeigt. Beispiel: ELI>/SH Error Logging Status 24-NOV-87 08:42:50 Logging: On Limiting: On Log File: LB0:[1,6]LOG.ERR File ID: DK6: 52,207 Backup File: LB0:[1,6]BACKUP.ERR Device Hard Error Soft Error QIO Name Count/Limit Count/Limit Count DK0: 0./5. 0./8. 44. DK1: 0./5. 0./8. 2632. DK2: 0./5. 0./8. 0. DK3: 0./5. 0./8. 0. MT0: 0./5. 0./8. 2812. MT1: 0./5. 0./8. 0. MT2: 0./5. *8./8. 4678. Der Stern bei der Grenze fuer leichte Fehler bei MT2: zeigt an, dass die Fehlergrenze erreicht ist und die Registrierung von leichten Fehlern fuer dieses Geraet eingestellt ist. Die QIO- Zaehlung erfolgt jedoch weiter, ebenso die Registrierung schwer- wiegender Fehler. 1.4. RPT - Task zur Erstellung von Fehlerprotokollen 12 ---------------------------------------------------- Das allgemeine Format einer RPT-Kommandozeile lautet: [reportfile[/switches]]=[inputfile[/switches]] reportfile Name der Listendatei, die das Fehlerprotokoll enthaelt, oder Geraet (LP:, TI:), ueber welches das Fehlerprotokoll ausgegeben werden soll. switches Schalter, welche die Auswahl und die Formatisierung der Infor- mationen aus der Fehlerregistrierdatei steuern. Die Schalter koennen auf der Eingabe- oder Ausgabeseite der Kommandozeile angegeben werden. Von RPT wird nur die angegebene Reihenfolge der Schalter ausgewertet. inputfile Name der Fehlerregistrierdatei RPT verwendet ausserdem eine Universalbibliothek ERRLOG.ULB, die Moduln zur Steuerung der Ausgabelisten enthaelt. Diese Datei wird standardmaessig verwandt und muss nicht in der Kommandozeile an- gegeben werden. Die Datei muss sich auf dem logischen Geraet LX: oder LB: im UIC [1,6] befinden. Fuer die Nutzung von RPT gelten folgende Standardbedingungen: Protokolldatei Eingabedatei Universalbibliothek Geraet: SY0: LB: LX:, LB: UIC: aktueller UIC [1,6] [1,6] Dateiname: ERRREPORT LOG ERRLOG Dateityp: .LST .ERR .ULB RPT-Schalter koennen nur einmal in einer Kommandozeile angegeben werden. Bei einigen Schaltern ist es moeglich, mehrere Argumente fuer diesen Schalter zu spezifizieren. Dabei ist folgende Syntax zu verwenden: /switch:(arg1,arg2,...,argn) Mehrere Argumente sind bei folgenden Schaltern moeglich: - DEVICE - PACKET - TYPE 1.4.1. Paketauswahlschalter --------------------------- Durch die folgenden Schalter wird festgelegt, welche Fehlerregi- strierpakete ausgewaehlt werden sollen, fuer die ein Protokoll erstellt wird. 1.4.1.1. Der Datumsschalter (/DATE) 13 ----------------------------------- /DA[TE]:arg Argumente: P[REVIOUS]:n (Tage) R[ANGE]:Startdatum:Enddatum T[ODAY] Y[ESTERDAY] Standard: /DA:R:*:* Dieser Schalter gestattet es, Fehlerregistrierpakete entsprechend des Datums auszuwaehlen, an welchem das Ereignis auftrat. Das RANGE-Argument akzeptiert Anfangs- und Enddatumsangaben im stan- dardmaessigen OMOS-Format: DD-MMM-YY oder (DD-MMM-YY HH:MM:SS) Werden Datum und Uhrzeit spezifiziert, muessen die runden Klam- mern angegeben werden. Die Angabe von * beim Startdatum bedeutet, dass alle Pakete bis zum spezifizierten Enddatum ausgewaehlt werden sollen. Die Ver- wendung von * beim Enddatum bedeutet, dass alle Pakete ab dem spezifizierten Startdatum ausgewaehlt werden sollen. 1.4.1.2. Der Geraeteschalter (/DEVICE) -------------------------------------- /DE[VICE]:arg Argumente: device name(,s) ALL Standard: /DE:ALL Durch diesen Schalter werden Pakete entsprechend des angegebenen Geraetes, mehrerer Geraete, oder fuer alle Geraete, ausgewaehlt. Es gelten folgende Konventionen fuer Geraetenamen: dd - es werden alle Geraete mit der Mnemonik dd ausgewaehlt ddnn: - es wird das Geraet ddnn: ausgewaehlt Beispiel: /DE:(DK,MT1:) Es werden die Fehlerregistrierpakete von allen Magnetplatten (DK) und von MT1: ausgewaehlt. 1.4.1.3. Der Paketschalter (/PACKET) 14 ------------------------------------ /P[ACKET]:nnnn.nn[:mmmm.mm] Standard: /P:*:* Durch diesen Schalter werden ein Paket oder ein Paketbereich aus- gewaehlt, indem die Paketnummern angegeben werden. Es koennen auch mehrere Pakete bzw. Paketbereiche als Argumente zu diesem Schalter spezifiziert werden (Syntax s. 1.4.). Die Angabe von * bedeutet, dass alle Pakete vor einer spezifi- zierten Paketnummer (*:234.5) bzw. alle Pakete nach einer spezi- fizierten Paketnummer (234.5:*) auszuwaehlen sind. 1.4.1.4. Der Typenschalter (/TYPE) ---------------------------------- /T[YPE]:[arg] Argumente: A[LL] C[ONTROL] E[RRORS] M[EMORY] PE[RIPHERALS] PR[OCESSOR] S[YSTEM INFORMATION] Standard: /T:A Durch den /TYPE-Schalter werden Fehlerregistrierpakete entsprech- end ihrem Pakettyp ausgewaehlt. Die Argumente des Schalters haben folgende Bedeutung: ALL - alle Fehlerregistrierpakete CONTROL - Kommandopakete, die vom Fehlerregistrier- Interface (ELI) gesendet wurden ERRORS - alle Fehlerregistrierpakete von peripheren Geraeten, des Prozessors und des Speichers MEMORY - Fehlerregistrierpakete von Ereignissen, die im Speicher auftraten (z.B. Speicherpari- taetsfehler) PERIPHERAL - Fehlerregistriepakete von allen peripheren Geraeten, die durch die Fehlerregistrierung unterstuetzt werden PROCESSOR - Fehlerregistrierpakete von Ereignissen, die in der ZE auftraten SYSTEM INFORMATION - Fehlerregistrierpakete von Ereignissen, die im System auftreten, aber nicht speziell an eine Komponente des Geraetesystems gebunden sind (z.B. Zeitaenderungen, Systemservice- nachrichten, Ein- und Ausgliederungen von Geraeten). Es koennen auch mehrere Pakettypen als Argument zu diesem Schal- ter entsprechend der gueltigen Syntax spezifiziert werden (siehe 1.4.). 1.4.1.5. Der Kennsatzschalter (/VOLUME) 15 --------------------------------------- /V[OLUME]:volumelabel Durch den /VOLUME-Schalter werden Pakete fuer periphere Fehler, basierend auf dem Datentraegerkennsatz, ausgewaehlt. 1.4.2. Protokollformatschalter (/FORMAT) ---------------------------------------- /F[ORMAT]:arg Argumente: B[RIEF] F[ULL] R[EGISTER] Standard: /F:B Durch den /FORMAT-Schalter wird festgelegt, welches Protokollfor- mat von RPT zu erzeugen ist. Es koennen Protokolle im Kurzformat (eine Zeile pro Fehler), im Vollformat (alle Informationen des Fehlerregistriepaketes), oder im Registerformat (nur die Register fuer Geraetefehler werden ausgegeben). In den folgenden Abschnit- ten werden die Argumente des Schalters beschrieben. 1.4.2.1. Kurzprotokolle ----------------------- Beispiel: RPT>LP:=/P:10.2:14.1/W:N OMOS 2.00 ERROR LOGGING SYSTEM V2.00 18-NOV-1987 07:43:11 ENTRY TIME STAMP ENTRY TYPE DEVICE ERROR TYPE ----- ----------- ----------------- ------ -------------- 10.2 29-OCT-1987 DEVICE HARD ERROR DK003: CHECKSUM ERROR 10.3 29-OCT-1987 DEVICE HARD ERROR DK003: CHECKSUM ERROR 10.4 29-OCT-1987 DEVICE HARD ERROR DK003: CHECKSUM ERROR 11.1 29-OCT-1987 DEVICE HARD ERROR DK003: CHECKSUM ERROR 11.2 29-OCT-1987 DEVICE HARD ERROR DK003: SEEK ERROR 11.3 29-OCT-1987 DEVICE MOUNT DK005: 11.4 29-OCT-1987 DRIVER LOAD MT 11.5 29-OCT-1987 DEVICE MOUNT DK003: 12.1 30-OCT-1987 STATUS CHANGE 12.2 30-OCT-1987 DEVICE MOUNT DK003: 12.3 30-OCT-1987 DEVICE HARD ERROR DK003: CHECKSUM ERROR 12.4 30-OCT-1987 DEVICE HARD ERROR DK003: CHECKSUM ERROR 13.1 30-OCT-1987 DEVICE DISMOUNT DK003: 13.2 30-OCT-1987 DRIVER LOAD MT 13.3 30-OCT-1987 DEVICE MOUNT DK005: 13.4 30-OCT-1987 DEVICE SOFT ERROR DK005: TIMING ERROR 13.5 30-OCT-1987 DEVICE SOFT ERROR DK005: TIMING ERROR 14.1 30-OCT-1987 DEVICE SOFT ERROR DK005: SEEK ERROR 1.4.2.2. Vollstaendige Protokolle 16 --------------------------------- Beispiel: RPT>LP:=/P:33.6:34.1/F:F/W:N OMOS 2.00 ERROR LOGGING SYSTEM V2.00 18-NOV-1987 07:50:57 PAGE 1 ENTRY 33.6 SEQUENCE 2. TIME CHANGE 04-OCT-1987 14:09:04 SYSTEM INFORMATION: ------ ------------ SYSTEM IDENT PROCESSOR MAPPING CPU FORMAT OMOS2.0 01 K1630 18-BIT CPA 1. REQUESTING TASK: ---------- ----- TI: UIC TASK NAME TASK PRIVILEGE TERMINAL PRIVILEGE TT000: [001,006] ...MCR PRIVILEGED PRIVILEGED TIME CHANGE INFORMATION: ---- ------ ------------ NEW TIME 04-NOV-1987 14:09:04 OMOS 2.00 ERROR LOGGING SYSTEM V2.00 18-NOV-1987 07:50:57 PAGE 2 ENTRY 34.1 SEQUENCE 0. STATUS CHANGE 07-NOV-1987 11:58:04 SYSTEM IDENTIFICATION: ------ --------------- SYSTEM IDENT PROCESSOR MAPPING CPU FORMAT OMOS2.0 01 K1630 18-BIT CPA 1. REQUESTING TASK: ---------- ----- TI: UIC TASK NAME TASK PRIVILEGE TERMINAL PRIVILEGE TT000: [001,054] ...ELI PRIVILEGED PRIVILEGED STATUS: ------- LOGGING STATUS LIMITING STATUS START LOGGING START LIMITING FILE STATUS LOG FILE NAME 17 APPENDING TO FILE (FILE SPECIFICATION DEFAULTED) 1.4.2.3. Registerprotokolle --------------------------- Beispiel: RPT>LP:=/P:10.2/F:R/W:N OMOS 2.00 ERROR LOGGING SYSTEM V2.00 18-NOV-1987 07:48:39 PAGE 1 ENTRY 10.2 SEQUENCE 1. DK003: DEVICE HARD ERROR (CHECKSUM ERROR) 29-OCT-1987 09:33:22 DEVICE SUPPLIED INFORMATION: ------ -------- ------------ NAME VALUE INTERPRETATION RKDS 060301 [15:13] INTERRUPTING DRIVE = 3. [11 ] DRIVE IS AN CM5400 *[ 8 ] SECTOR COUNTER NOT OK [ 7 ] DRIVE READY (HEADS LOADED) [ 6 ] R/W/S READY (NO POSITIONING IN PROGR.) [ 5 ] WRITE PROTECT OFF (WRITE ENABLED) [ 4 ] SC<>SA (SECTOR COUNTER<>SECTOR ADDRESS) [ 3: 0] SECTOR COUNTER = 1. RKER 000032 *[ 4: 2] UNUSED BITS SET *[ 1 ] CHECKSUM ERROR RKCS 100724 *[15 ] ERROR (RKER BITS SET) [13 ] SEARCH NOT COMPLETE [ 8 ] STOP ON SOFT ERROR (RKER 01-00) [ 7 ] CONTROLLER READY [ 6 ] INTERRUPT ENABLED [ 5: 4] BA17,BA16 = 01 (B) [ 3: 1] FUNCTION = READ RKWC 000000 [15: 0] WORD COUNT = 0. WORDS REMAINING RKBA 054324 [15: 0] BUS ADDRESS REGISTER RKDA 060001 [15:13] DRIVE SELECTED = 3. [12: 5] CYLINDER ADDRESS = 0. [ 4 ] SURFACE = UPPER [ 3: 0] SECTOR ADDRESS = 1. RKDB 000000 [15: 0] DATA BUFFER CONTENTS 1.4.3. Schalter fuer die Ausgabebreite (/WIDTH) ----------------------------------------------- /W[IDTH]:arg Argumente: N[ARROW] W[IDE] 18 Standard: /W:W Dieser Schalter gestattet es, die Ausgabebreite des Protokolls auf 80 Zeichen (NARROW) oder 132 Zeichen (WIDE) festzulegen. 1.5. RPT-Standardkommandozeile ------------------------------ Zur Verwendung der RPT-Standards ist folgende Kommandozeile ein- zugeben: RPT>= Dadurch werden die Standards der Dateispezifikation (siehe 1.4.) verwendet, sowie folgende Standards der Schalter: /F[ORMAT]:B[RIEF] /T[YPE]:A[LL] /DA[TE]:R[ANGE]:*:* /DE[VICE]:ALL /PA[CKET]:*:* /W[IDTH]:W[IDE] 1.6. Fehlernachrichten ---------------------- 1.6.1. ELI-Nachrichten ---------------------- ELI -- ERRLOG not installed ERRLOG ist im System nicht installiert. ERRLOG installieren und ELI-Kommando wiederholen. ELI -- Failed to communicate with ERRLOG ELI konnte nicht mit ERRLOG bei Nutzung der Exekutiveanweisung SMSG$ korrespondieren. Fataler Fehler. Eine Anwendermassnahme ist nicht moeglich. ELI -- File name must be specified Es wurde ein BACKUP-, APPEND- oder SWITCH-Schalter benutzt, und kein Dateiname wurde angegeben. ELI-Kommando mit richtiger Syntax wiederholen. ELI -- Get Command Line error Die Prozedur "Get Command Line" war nicht erfolgreich. Es kann eine zeitweilige Fehlerbedingung vorliegen. Das Kommando ist zu wiederholen. ELI -- Illegal switch combination Es wurde eine verbotene Schalterkombination verwendet. Kommando mit richtiger Syntax wiederholen. ELI -- Maximum number of devices exceeded Es wurden mehr als 14 Geraete in einer Kommandozeile bei der Ruecksetzung der QIO- und Fehlerzaehlung spezifiziert. Die Kommandozeile ist mit nur maximal 14 Geraeten zu wiederholen. ELI -- Switch requires device name (ddnn:) only Es wurde UIC und/oder Dateiname bei einem ELI-Schalter angegeben, der nur einen Geraetenamen akzeptiert. Das Kommando ist mit richtiger Syntax zu wiederholen. 19 ELI -- Syntax error Das Kommando ist syntaktisch falsch. Kommando mit richtiger Syntax wiederholen. 1.6.2. ERRLOG-Nachrichten ------------------------- ERRLOG -- Backup file error - logging discontinued Der Versuch, in eine Sicherungsdatei zu schreiben, ist fehlge- schlagen. Es ist eine neue Sicherungsdatei mit dem /BA-Schalter zu bilden. ERRLOG -- Device not in system Es wurde ein Geraet spezifiziert, welches nicht zur Systemkonfi- guration gehoert. Geraetebezeichnung ueberpruefen und Kommando mit richtiger Syntax wiederholen. ERRLOG -- Error and QIO counts for ddnn: Die Fehler- und QIO-Zaehlung fuer das spezifizierte Geraet war bereits zurueckgestellt. ERRLOG -- Error Log packet too long ERROR hat ein Fehlerregistrierpaket ermittelt, welches zu gross war. Das Fehlerregistrierpaket ist verstuemmelt. ERRLOG -- Failed to assign LUN ERRLOG versuchte, eine LUN einem Terminal zuzuordnen, um eine Mitteilung zu senden, was nicht gelungen ist. Das tritt auf, wenn die Fehlergrenze fuer ein Geraet erreicht ist und das Geraet ist an das Terminal bzw. die Task gekettet. Es ist keine Anwendermassnahme erforderlich. Die Meldung zeigt an, dass die Fehlergrenze erreicht ist, aber die Meldung am Ter- minal nicht ausgegeben werden konnte. ERRLOG -- File I/O error Es konnte keine neue Datei eroeffnet, bzw. die alte Datei konnte nicht in die neue Datei kopiert werden. Das Kommando ist erneut einzugeben. ERRLOG -- Log file error - logging continued on backup file Es konnte nicht mehr in die aktuelle Fehlerregistrierdatei ge- schrieben werden. Es wird in die Sicherungsdatei geschrieben. Eine neue Sicherungsdatei sollte mittels des ELI-Kommandos spezi- fiziert werden. ERRLOG -- Logging initialized Anzeige, dass die Fehlerregistrierung beginnt. Informative Nachricht. ERRLOG -- Logging not active Die Fehlerregistrierung ist nicht aktiv. ERRLOG starten und Kommando wiederholen. ERRLOG -- Logging stopped Die Fehlerregistrierung wurde gestoppt. Informative Nachricht. 20 ERRLOG -- No data subpacket Es wurde versucht, ein verstuemmeltes Datenunterpaket zu benutzen Die Datei ist fehlerhaft. ERRLOG -- No device subpacket Es wurde versucht, ein verstuemmeltes Geraeteunterpaket zu be- nutzen. Die Datei ist fehlerhaft. ERRLOG -- Privilege violation Es wurde ein privilegiertes Kommando von einem nichtprivilegier- ten Nutzer eingegeben. ERRLOG -- Task subpacket corrupted Es wurde versucht, ein verstuemmeltes Taskunterpaket zu benutzen. Die Datei ist fehlerhaft. ERRLOG -- Unable to open file Die Fehlerregistrierdatei konnte nicht eroeffnet werden. Die Re- gistrierung wird in der Sicherungsdatei fortgesetzt. Eine neue Sicherungsdatei sollte mittels des ELI-Kommandos spezi- fiziert werden. ERRLOG -- Unknown command packet subtype Es wurde ein unbekannter Kommandopakettyp ermittelt. Die Datei ist fehlerhaft. ERRLOG -- WARNING: Device ddnn: exceeded xx Limit (x) Die Fehlergrenze fuer das angegebene Geraet fuer schwerwiegende oder leichte Fehler ist erreicht. Die Fehlerregistrierung kann durch Ruecksetzen oder Aenderung der Fehlergrenzen fortgesetzt werden. 1.6.3. RPT- Nachrichten ----------------------- ERLCNF-F-ARGNOTUNQ, Argument specification is not unique Es wurden nicht genuegend Zeichen in einem Schalterargument spe- zifiziert. Es kann mit einem anderen Argument verwechselt werden. Die Syntax ist zu pruefen und das Kommando ist zu wiederholen. ERLCNF-W-BADSUBPKT, Possible corruption in the subpacket in item Es wurde ein Unterpaket gefunden, das verstuemmelt ist. Die Datei ist fehlerhaft. ERLCNF-W-DUILLFORM, MSCP format code is undefined Es wurde ein Formatfehler aufgefunden. Die Datei ist fehlerhaft. ERLCNF-F-ILLARGCOM, Illegal argument combination Es wurde eine unzulaessige Kombination von Argumenten bei einem Schalter spezifiziert. Syntax pruefen und Kommando wiederholen. ERLCNF-F-ILLFILSPC, Illegal file specification - Es wurde eine unzulaessige Dateispezifikation angegeben. Syntax pruefen und Kommando wiederholen. 21 ERLCNF-W-ILLPACCOD, Illegal code in packet , Code= Der Code fuer das Paket ist fehlerhaft. Die Datei ist fehlerhaft. ERLCNF-F-ILLPACRAN, Illegal packet range-Low= High= Es wurden Paketnummern angegeben, die ausserhalb des Bereiches liegen, oder nicht dem erforderlichen Format entsprechen. Syntax pruefen und Kommando wiederholen. ERLCNF-W-ILLPACSBC, Illegal subcode in packet , Code = , Subcode = Der Untercode fuer das Paket ist fehlerhaft. Die Datei ist fehlerhaft. ERLCNF-F-ILLSWTARG, Illegal switch argument - Das Schalterargument ist falsch bzw. unzulaessig. Syntax pruefen und Kommando wiederholen. ERLCNF-F-MULARGSPC, Argument specified multiple times Ein RPT-Schalterargument wurde mehrfach spezifiziert. Syntax pruefen und Kommando wiederholen. ERLCNF-F-MULSWTSPC, Switch specified multiple times Es wurde ein RPT-Schalter mehrfach spezifiziert. Syntax pruefen und Kommando wiederholen. ERLCNF-F-NOINPFILE, No input file specified Es wurde keine Eingabedatei angegeben. Dieser Fehler tritt auf, wenn kein Gleichheitszeichen in der Kommandozeile angegeben wur- de. Syntax pruefen und Kommando wiederholen. ERLCNF-F-OPNINPFIL, Failed to open the input file Die Eingabedatei konnte nicht geoeffnet werden. FCS-Fehlercode pruefen, Fehlerbedingung beseitigen und Kommando wiederholen. ERLCNF-F-OPNREPFIL, Failed to open the report file Die Protokolldatei konnte nicht geoeffnet werden. FCS-Fehlercode pruefen, Fehlerbedingung beseitigen und Kommando wiederholen. ERLCNF-F-SWTNOTUNQ, Switch specification is not unique Es wurden nicht genuegend Zeichen fuer einen Schalter spezifi- ziert. Syntax pruefen und Kommando wiederholen. ERLCNF-F-SYNTAXERR, Command line syntax error Die Kommandozeile ist syntaktisch falsch. Syntax pruefen und Kommando wiederholen. ERLCNF-F-TOOFEWARG, Too few arguments in switch Es wurde ein Schalter angegeben, der ein oder mehrere Argumente erforderte, die nicht spezifiziert wurden. Syntax pruefen und Kommando wiederholen. ERLCNF-F-UNKNWARG, Unknown argument - Es wurde ein unbekanntes Argument spezifiziert. Syntax pruefen und Kommando wiederholen. 22 ERLCNF-F-UNKNWSWT, Unknown switch - Es wurde ein unbekannter RPT-Schalter spezifiziert. Syntax pruefen und Kommando wiederholen. 23 2. System der On-Line-Geraetetestprogramme -------------------------------------------- 2.1. Voraussetzungen fuer die Anwendung der On-Line- Geraetetestprogramme ---------------------------------------------------- Die On-Line-Geraetetestprogramme (OGTP) werden selektiv fuer ein bestimmtes zu testendes Geraet gestartet und laufen parallel zu den normalen Systemoperationen ab. Sie sind geraetespezifisch an- gelegt und muessen bei der Systemgenerierung fuer die jeweiligen zu testenden Geraetedriver beruecksichtigt werden. Die Arbeit mit den OGTP setzt voraus: - Kenntnis des OMEX - Konzeptes - Existenz anwendbarer OGTP - Groesse des Datenpuffers darf nicht veraendert worden sein (bei der Generierung wurde als Standardwert 1024 Byte verein- bart) - Kenntnis der Arbeitsweise der peripheren Geraete - Nutzer ist in Bezug auf die Initialisierung der OGTP nicht privilegiert Waehrend des Laufes der OGTP ist das Teilsystem "Fehlerregistrie- rung" automatisch gesperrt fuer Fehleranzeigen, die von dem getesteten Geraet kommen. Um die Fehlermeldungen auch in den Testbericht aufzunehmen, sollte das OGTP auf einem Bediengeraet mit Hard-Copi-Einrichtung aktiviert wer- den. Fuer den Daten- traeger auf dem zu testenden Geraet darf kein MOUNT-Kommando gegeben worden sein. Er darf keine zu schuetzenden Daten enthalten, da die OGTP im Verlauf des Tests alle Datenauf- zeichnungen ueberschreiben. In Systemen mit Mehrnutzer-Schutz kann ein oeffentliches Geraet nicht getestet werden. Es muss durch einen privilegierten Nutzer in den Status eines nicht oeffentlichen Geraetes gesetzt werden. Ein nicht oeffentliches Geraet muss fuer den Geraetetest zum pri- vaten Geraet erklaert werden. Nach dem Abschluss der Diagnose muss das Geraet mit dem MCR-Kommando DEALLOCATE explizit zurueck- gegeben werden, wenn man eingetragen bleiben will. In Systemen ohne Mehrnutzer-Schutz ist mit der Aktivierung des OGTP das ausgewaehlte Geraet fuer die Dauer des Tests gegen den Zugriff durch andere Nutzer geschuetzt. Fuer eine Unterbrechung der OGTP im Service-Modus muss die Task CCF unter dem Namen ...CCF mit hoher Prioritaet installiert sein. Sie wird als Kommando benutzt. 2.2. Anwendungsmoeglichkeiten der On-Line-Geraetetest- programme ------------------------------------------------------ Der Geraetetest kann im - Nutzer-Modus oder - Service-Modus betrieben werden. 24 Im Nutzer-Modus ist die Aktivierung des Geraetetestes sehr ein- fach. Das OGTP laeuft ohne weitere Unterbrechung vollstaendig durch. Es registriert alle erkannten Fehler und stellt einen Testbericht zusammen. Die wesentlichen Anwendungen der Geraete- tests im Nutzer-Modus sind: - regulaere vorbeugende Instandhaltung - moegliche Bestaetigung, dass das Geraet und nicht der Daten- traeger defekt ist - Test eines Geraetes, das durch das Teilsystem "Fehlerregistrie- rung" mit einer hohen Fehlerrate ausgewiesen wurde. Der Service-Modus ist eine Ergaenzung des Nutzer-Modus und i.a. dem Kundendienst vorbehalten, da er tiefergehende Kenntnisse des Betriebssystems erfordert. Im Service-Modus werden dieselben OGTP verwendet, wobei nur bestimmte Teilprogramme ausgewaehlt werden und die Testfolge modifiziert werden kann, um die angegebene Fehlerbedingung zu lokalisieren. Die Arbeit im Service-Modus wird im Zusammenhang mit den geraetespezifischen OGTP beschrieben. 2.2.1. Nutzer-Modus ------------------- Die Aktivierung des On-Line-Geraetetestprogrammes im Nutzer-Modus erfordert nur wenig mehr als den Namen des zu testenden Geraetes (Mnemonik und Nummer der Einheit) und des zugehoerigen OGTP (ist dem Geraetetyp zugeordnet und wird nach diesem benannt). In der folgenden Aktivierungsprozedur sind Bedienereingaben unterstrichen: >ALLOCATE geraetename (nur fuer Systeme mit Mehrnutzer-Schutz) -------------------- >RUN $geraetename ---------------- START geraetetyp DIAGNOSTIC*TIME OF DAY = stunde:minute:sekunde DEVICE? geraetename ----------- **WARNING**geraetename:RESIDENT DATA WILL BE DESTROYD **WARNING** CONTINUE? Y (N oder RETURN allein bricht den Test ab) - Die doppelte Eingabe der Geraeteidentifikation, die Warnmeldung und die Fortsetzungspause sind Pruefstellen zum Schutz gegen un- beabsichtigte Geraeteauswahl und moeglichen Datenverlust. In Abhaengigkeit vom zu testenden Geraet ist u.U. eine zusaetz- liche Information bei der Aktivierung des OGTP notwendig. Diese geraetespezifischen Informationen werden im Zusammenhang mit den entsprechenden OGTP beschrieben. Das aktivierte OGTP laeuft ohne weitere Unterbrechung vollstaendig durch. Es kann vorzeitig abge- brochen werden durch Eingabe von CTRL/C ------ MCR>ABORT ----- Nach vollstaendigem Durchlauf des OGTP wird ein Testbericht zusammengestellt, der folgende allgemeine Informationen enthaelt: 25 geraetetyp UNIT NO. n PASS COUNT = ... TOTAL ERRORS ENCOUNTERED = ... TOTAL FUNKTIONS ISSUED = ... TOTAL WORDS TRANSFERRED = ... END OF geraetetyp DIAGNOSTIC*TIME OF DAY = stunde:minute:sekunde Waehrend der Diagnose erkannte Fehlerzustaende werden ueber das Geraet gemeldet, ueber das auch das OGTP aktiviert wurde. Art und Zuordnung der Fehlerzustaende sowie die entsprechenden Fehlermit- teilungen werden im Zusammenhang mit den Geraetebezogenen OGTP beschrieben. 2.2.2. Service-Modus -------------------- Die Aktivierung eines On-Line-Geraetetestprogrammes im Service- Modus setzt die Kenntnis der fuer das Geraet vereinbarten Testpa- rameter voraus. Durch die Testparameter-Auswahl wird die Test-Reihenfolge festge- legt. Bei der Aktivierung wird auch das Ereignisflag (33-48) festgelegt, durch welches das laufende Testprogramm unterbrochen werden kann (z.B. zur Veraenderung der Testparameter). Der allge- meine Teil der Aktivierungsprozedur laeuft wie folgt ab: >ALLOCATE geraetename (nur fuer Systeme mit Mehrnutzer-Schutz) -------------------- >RUN $geraetetyp --------------- START geraetetyp DIAGNOSTIC*TIME OF DAY = stunde:minute:sekunde DEVICE? geraetename ----------- **WARNING**geraetename:RESIDENT DATA WILL BE DESTROYD **WARNING** CONTINUE? SERVICE (N oder RETURN allein bricht den Test ab) ------- TEST PARAMETERS (OKTAL) = nnnnn ----- EVENT FLAG FOR INTERVENTION (DEZIMAL) = NN (32CCF nn nn = Flagnummer (33-48) ------ Setzen des Ereignisflag durch die Kommando-Task CCF und Antwort mit 0 auf die Frage "TEST PARAMETERS (OKTAL)" des OGTP. Der Testbericht fuer den laufenden Pass wird zusammengestellt, bevor das Programm abgeschlossen wird. 26 - Abbruch ueber MCR-Kommando ABORT zu einer beliebigen Zeit CTRL/C ------ MCR>ABORT oder ABORT Taskname ----- -------------- Der Testbericht fuer den laufenden Pass wird nicht ausgegeben. - Antwort auf eine beliebige Anforderung mit CTRL/Z. Der Testbericht fuer den laufenden Pass wird nicht ausgegeben. Die Testparameter mit ihren zugeordneten Testfolgen werden im Zusammenhang mit den geraetespezifischen OGTP beschrieben. 2.2.3. Mehrgeraete-Test ----------------------- Sollen mehrere Geraete gleichzeitig getestet werden (Partitionbe- legung beachten), so muss bei jedem RUN-Kommando ein Taskname mit angegeben werden. Beispiel fuer den gleichzeitigen Test des Bediengeraetes und des Druckers: >ALLOCATE TT0: ------------- >RUN $CM1608/TASK = TT0 ---------------------- . . . CONTINUE? Y - CTRL/C ------ MCR>ALLOCATE LP1: ------------- >RUN $CM5300/TASK = LP1 ---------------------- . . . CONTINUE? Y - Die Fehlerausschriften und der Testbericht, die auf dem Terminal erscheinen, koennen anhand der mitgelieferten UNIT NO. identifi- ziert werden. Soll ein OGTP vor seiner Vollendung abgebrochen werden, muss der Taskname mit angegeben werden, z.B.: CTRL/C. MCR>ABORT LP1 --------- 27 2.3. Bildung der On-Line-Geraetetestprogramme --------------------------------------------- Alle fuer die Bildung der OGTP benoetigten Module befinden sich in den Bibliotheken UMD.OLB (OGT-Hauptprogramme) und UML.OLB (Unter- programme) auf der Platte UTILITY. Die OGTP werden durch die Indirekt-Kommandodatei OMOSGEN2.CMD, welche den UIC [200,200] besitzt und sich auf der Platte UTILITY befindet, gebildet. Diese Indirekt-Kommandodatei arbeitet in Dialogverkehr mit dem Bediener. Alle Anfragen werden reich kommentiert und eindeutig gestellt. Die Kommandotask CCF fuer die Unterbrechung der OGTP im Service-Modus wird ebenfalls durch die Indirekt-Kommandodatei OMOSGEN2.CMD gebildet. Eine ausfuehrliche Beschreibung erfolgt in der Schrift Anleitung fuer den Systemprogrammierer, Teil 2: Inbetriebnahme des BS OMOS 1630. 2.4. Allgemeine Fehlermitteilungen ---------------------------------- Waehrend der Aktivierung der OGTP koennen durch MCR oder das OGTP die folgenden Fehlermeldungen ausgegeben werden. 2.4.1. MCR-Kommando-Fehlermitteilungen -------------------------------------- XXX -- SYNTAX ERROR Eingabeformat fuer MCR ist falsch. Neueingabe. ALL -- DEVICE ALLOCATED TO OTHER USER 1) Ausgewaehltes Geraet steht unter Steuerung eines anderen Nu- tzers. Es kann nicht zugewiesen werden, bis dieser Nutzer es zurueckgibt oder austraegt oder ein privilegierter Nutzer es zuruecknimmt. ALL -- DEVICE NOT IN SYSTEM 1) Ausgewaehltes Geraet wurde bei der Systemgenerierung nicht angegeben. Es kann nicht durch das OGTP getestet werden. ALL -- FEATURE NOT SUPPORTED ALLOCATE-Kommando ist nicht im System implementiert. Meldung ignorieren und mit der Initiierung fortfahren. ALL -- PUBLIC DEVICE 1) Ausgewaehltes Geraet wurde als oeffentliches Geraet dekla- riert. Es kann einem Nutzer nicht zugewiesen werden, solange es nicht als nichtoeffentliches Geraet erklaert wurde. HEL -- INVALID ACCOUNT 1) Der Name oder der angegebene UIC ist nicht im Verzeichnisfile enthalten oder das angegebene Kennwort ist unkorrekt. HEL -- OTHER USER LOGGED ON 1) Ein anderer Nutzer hat das Terminal im Anmeldestatus gelassen. Es kann nicht genutzt werden, bis es durch ein BYE-Kommando abgemeldet wurde. HEL -- TERMINAL ALLOCATED TO OTHER USER 1) Dieses Terminal ist einem anderen Nutzer zugewiesen. Es kann nicht genutzt werden, bis dieser Nutzer es zurueckgibt oder austraegt oder ein privilegierter Nutzer es zuruecknimmt. 28 INS -- FILE NOT FOUND Das spezifizierte OGTP wurde bei der Systemgenerierung nicht aufgenommen oder die Task-Abbild-Datei ist nicht im System bekannt (als [1,M], wobei M=50 fuer ein System ohne Adresszu- weisung und M=54 fuer ein System mit Adresszuweisung gilt). MCR -- NOT LOGGED IN 1) Ein System mit Mehrnutzer-Schutz erwartet am Terminal die Anmeldung mit dem HELLO-Kommando, bevor ein anderes Kommando ausser HELP verwendet wird. 1) Das entsprechende Kommando und diese Fehlermitteilungen sind nur fuer Systeme mit Mehrnutzer-Schutz gueltig. 2.4.2. Fehlermitteilungen der On-Line-Geraetetestprogramme ---------------------------------------------------------- Die folgenden Fehlermitteilungen koennen gebracht werden, nachdem die Steuerung von MCR an das ausgewaehlte OGTP uebergeben wurde: *DEVICE OFF-LINE* Ausgewaehltes Geraet ist nicht physisch oder logisch verfuegbar. *DEVICE MOUNTED OR ALLOCATED TO OTHER USER* Zeigt an, dass fuer das ausgewaehlte Geraet ein MOUNT-Kommando gegeben wurde (fuer den Test muss das Geraet "ausgegliedert" sein), oder dass das Geraet einem anderen Nutzer zugewiesen wurde (dieser Fall kann eintreten, wenn fuer ein System mit Mehrnutzer-Schutz kein ALLOCATE-Kommando verwendet wurde). *ILLEGAL FUNCTION (MAY BE WRONG DIAGNOSTICS)* Zeigt an, dass das falsche On-Line-Geraetetestprogramm akti- viert wurde, oder dass die benoetigte Funktion nicht im aus- gewaehlten OGTP enthalten ist oder der zugehoerige Driver nicht mit Diagnosemoeglichkeit generiert ist. *DEVICE OR DRIVER NOT AVAILABLE FOR DIAGNOSTICS* Das ausgewaehlte Geraet oder sein zugehoeriger Driver mit Diagnosemoeglichkeiten ist nicht im System enthalten. *INVALID DEVICE OR UNIT* Geraeteidentifikation (Mnemonik und/oder Nummer der Einheit) ist nicht korrekt oder der zugehoerige Geraetedriver ist nicht geladen. 29 2.4.3. Umrechnung der logischen Blocknummer und physischen Adresse ---------------------------------------------------------- In den Fehlerausschriften der OGTP wird die physische Adresse bei Plattengeraeten als Sektor-Spur-Nummer angegeben. Sollten die fehlerhaften Sektoren mit der BAD-Option des MCR-Kommandos INITVOLUME ausgetestet werden, muss die physische Adresse in die logische Blocknummer (LBN) konvertiert werden. Die Umrechnung erfolgt mittels der Formel: LBN = (((Zyl.-Nr. * Spuren/Zyl.) + Spur-Nr.) * Sektoren/Spur) + Sektor-Nr. Die Angaben erfolgen dezimal. Beispiel: Fuer die Kassettenplatte CM 5400 wird die Adresse (dezimal) Zylinder = 150 Spur = 1 Sektor = 5 folgendermassen in die logische Blocknummer 3617 umgerechnet. LBN = (((150 * 2) + 1) * 12) + 5 = (300 + 1) * 12 + 5 = 3612 + 5 = 3617 ---- 30 2.5. Beschreibung der On-Line-Geraetetestprogramme ------------------------------------------------------ 2.5.1. On-Line-Geraetetestprogramm fuer Kassettenplatten- speicher CM 5400 ----------------------------------------------------------- 2.5.1.1. Geraetekennzeichen --------------------------- Bezeichnung: Kassettenplattenspeicher, KPS ESER-Chiffre: CM 5400 Leistungsparameter Plattenanzahl: 1 Festplatte, 1 Kassettenplatte Beide Platten koennen unabhaengig voneiander vom OGTP ausgewaehlt werden. Umdrehungsgeschwindigkeit: 2400 U/min mittlere Zugriffszeit: 12,5 ms (Sektor), 50 ms (Spur) Datentraeger Typ: ISOT CM EC 5269-01:1-22-24-12 IBM 5440 BASF 614 Durchmesser: 14" Zylinder: 204 Die Ersatzzylinder (201-203) sind nicht adressierbar. Spuren/Zylinder: 2 Sektoren/Spur: 12 Byteanzahl/Sektor: 512 Speicherkapazitaet: 25 MBit/Platte (Brutto) 2,506752 MByte/Platte Speicherdichte der Innenspur: 87 Bit/mm Interface Uebertragungsrate: 2,5 MBit/s bitseriell zur AKP 2.5.1.2. Beschreibung der Testroutinen -------------------------------------- Das OGTP testet die ordnungsgemaesse Adressierbarkeit aller Zylinder, Spuren und Sektoren sowie das Schreiben und Lesen von Daten auf dem Plattengeraet unter ausgewaehlten Bedingungen. Es wird weder eine ECC-Berichtigung im Arbeitsverlauf durchgefuehrt noch ein Fehlerblock erstellt. Die anschliessend beschriebenen Tests werden in nichtunterbrech- baren 1-Pass Folgen im nutzer-Modus ausgefuehrt. Die im Folgenden erwaehnten Fehlernummern erscheinen in den Fehlerausschriften wieder, wo ihre Bedeutung erlaeutert wird (siehe 2.5.1.3.). Adressierungstest ----------------- Kopf-Positionierung: Dieser Test ueberprueft, ob die richtige Kopf-Position auf allen Zylindern der aufgelegten Kassettenplatte erreicht wird. Er untergliedert sich in 2 Teile: Suchen mit aufeinanderfolgend stetig steigenden Adressen und Suchen mit ueberkreuzten Adressen (abwechselnd niedrige und hohe Adressen). Fuer das Suchen mit steigenden Adressen (implizites Suchen) wird mittels Lese-Kopf-Kommando abwechselnd die Adresse von Zylinder 0 31 und Zylinder n gesucht, wobei n fuer jedes Suchkommando im Be- reich von 1 bis 199 um jeweils 1 erhoeht wird. Nach jedem Suchen von Zylinder 0 oder Zylinder n wird diegelesene Zylinderadresse mit der erwarteten verglichen. Fuer das kreuzweise Suchen wird mittels Lese-Kopf-Kommandoabwechselnd die Adresse des Zylinders a, wobei a mit 0 beginntund des Zylinders b, wobei b mit 199 beginnt, gesucht. Nach jedem Suchen wird a um 1 erhoeht und b um 1 erniedrigt. Dieser Teil der Uebung wird solange durchgefuehrt, bis b gleich 0 ist. Die Zylinderposition wird nach jedem Suchprozess verglichen. (Hierzu Fehlernummer: 1,2,3,4,5) Sektor-Adressierung: Dieser Test ueberprueft die Adressierbarkeit der aufgelegten Kassettenplatte von Sektor 0 bis Sektor 11 auf Zylinder 0. Dazu wird ein Datenmuster, das der Sektornummer entspricht, in jeden Sektor geschrieben, wieder gelesen und mit dem geschriebe- nen verglichen. Alle Fehlerbedingungen werden dabei erfasst. (Hierzu Fehlernummer: 6,7,8) Spur-Adressierung: Dieser Test ueberprueft die Adressierbarkeit der Spuren 0 und 1. Dazu wird jede Spur mit einem Datenmuster, das der Spurnummer entspricht, beschrieben, gelesen und die Daten anschliessend verglichen. Alle Fehlerbedingungen werden erfasst. (Hierzu Fehlernummer: 9,10,11) Zylinder-Adressierung: Dieser Test ueberprueft alle Zylinder auf ordnungsgemaesse Adressierbarkeit. Der Sektor 0 auf jedem Zylinder (durchgehend von 0 bis 199) wird mit einem Datenmuster, das der Zylindernummer entspricht, beschrieben, gelesen und die Daten anschliessend verglichen. Alle Fehlerbedingungen werden erfasst. (Hierzu Fehlernummer: 12,13,14) Spur-Uebergang: Dieser Test ueberprueft den Datentransfer ueber 2 Sektoren, wobei auf dem letzten Sektor einer Spur begonnen wird und auf dem 1. Sektor der naechstfolgenden Spur fortgesetzt wird. Zuerst wird bei der Uebung ein Schreibkommando mit 512 Worten auf Sektor 11, Spur 0, Zylinder 0 mit einem Datenmuster bestehend aus lauter Einsen ausgegeben. Danach wird der Sektor 0 von Spur 1, Zylinder 0 gelesen und die Daten geprueft, ob sie lauter Einsen enthalten. Alle fehlerbedingungen werden erfasst. (Hierzu Fehlernummer: 15,16,17) Zylinder-Uebergang: Dieser Test ueberprueft den Datentransfer ueber 2 Sektoren, wobei auf dem letzten Sektor eines Zylinders begonnen wird und auf dem 1. Sektor des naechstfolgenden Zylinders fortgefahren wird. Zuerst wird bei der Uebung ein Schreibkommando mit 512 Worten auf Sektor 11, Spur 1, Zylinder 0 mit einem Datenmuster bestehend aus lauter Einsen ausgegeben. Danach wird der Sektor 0 von Spur 0, Zylinder 1 gelesen und die Daten geprueft, ob sie lauter Einsen enthalten. Alle Fehlerbedingungen werden erfasst. (Hierzu Fehlernummer: 18,19,20) 32 Daten-Zuverlaessigkeitstest --------------------------- Dieser Test ueberprueft die Zuverlaessigkeit des Plattengeraetes beim Schreiben und Lesen von Daten variabler Muster auf allen gueltigen Plattenadressen. Benutzt werden folgende Muster: 1) alles 0 2) alles 1 3) Schachbrettmuster (abwechselnd 1 und 0) 4) fliessende 1 (fortlaufende Veraenderung der Bitposition in jedem Wort) 5) Zufallszahlen 6) Zaehlmuster (beginnend mit 1 addieren 1 in jedem geschrie- benen Wort) Im Nutzer-Modus wird nur das Muster 4 (Variabel 1) fuer die gesammte Testfolge verwendet. Jedes Muster wird auf alle Plattenadressen geschrieben und anschliessend 8 mal gelesen und verglichen, um moegliche Lese- fehler herauszufinden. Beim Erkennen irgendeines Fehlers waehrend des Lesens wird die fehlerhafte Adresse ausgeschrieben. Anschliessend wird das Lesen bis zu 8 mal wiederholt. Falls die Wiederholung erfolgreich verlaufen ist, wird die Anzahl der bis dahin erfolglosen Wiederholungen ausgeschrieben und es wird zur naechsten Plattenadresse uebergegangen. Falls die 8 Wiederho- lungsversuche erfolglos blieben, wird die Wiederholung beendet und ebenfalls zur naechsten Plattenadresse uebergegangen. Das Ausbleiben der Wiederholungsmeldung kennzeichnet somit eine er- folglose Wiederholung. Zufallstest ----------- Dieser Test ueberprueft, ob das Geraet verschiedenlange Daten- transfers mit Zufallsdaten-Mustern in beliebig ausgewaehlte Plattenbereiche ausfuehren kann. Folgender Arbeitsablauf wird 512 mal wiederholt: 1) Erzeugen von gueltigen Kombinationen von Zufallsadressen fuer Zylinder, Spur und Sektor. 2) Schreiben eines Musters mit Zufallsdaten regelloser Laenge, beginnend auf einer zufaellig ausgewaehlten Plattenadresse. Die Wortanzahl liegt zwischen 2 und 512. 3) Aufsuchen einer anderen zufaelligen Plattenadresse. 4) 8 maliges Lesen der vorher geschriebenen Zufallsdaten mit dazwischengeschobenen Suchen anderer zufaelliger Adressen. Der Zweck dieser Kommandofolge ist das Problem der Leseverminde- rung oder des Paritaetsfehlers, die durch Kopfvibrationen begruendet sind. 5) Vergleich der zurueckerhaltenen Daten. Bei Erkennen eines beliebigen Fehlers waehrend des Lesens wird die fehlerhafte Adresse ausgeschrieben. Anschliessend wird das Lesen bis zu 8 mal wiederholt. Falls die Wiederholung erfolgreich verlaufen ist, wird die Anzahl der bis dahin erfolglosen Wieder- holungen ausgeschrieben und es wird zur naechsten Plattenadresse uebergegangen. Falls die 8 Wiederholungsversuche erfolglos blie- ben, wird die Wiederholung beendet und ebenfalls zur naechsten Plattenadresse uebergegangen. Das Ausbleiben der wiederholungs- meldung kennzeichnet somit eine erfolglose Wiederholung. 33 (Hierzu Fehlernummer: 23,24,25,26) Formatierungsroutine -------------------- Die Formatierungsroutine bereitet die Kassettenplatte zur Nutzung fuer OMEX 1630 vor. Es werden folgende Teile abgear- beitet: 1)Schreiben des kompletten Vorsatzes in jeden Sektor 2)Vergleichen des Inhaltes der Adresse jedes Sektorkopfes 3)EXIT Die Formatierung, falls ausgewaehlt, verlaeft immer bis zum vollstaendigen Ende und beendet danach das OGTP. Der Vorsatz jedes Sektors wird 1 mal geschrieben. Kann ein Sektor nicht formatiert, verglichen oder die Zylinder-Spur- Sektoradresse nicht erkannt werden, wird die folgende Mitteilung ausgegeben: UNABLE TO FORMAT SECTOR AT ADDRESS HEADER VERIFY ERROR AT ADDRESS Eine zufriedenstellende Beendigung des Formatierungsvorganges wird gekennzeichnet durch die Mitteilung: FORMATTING COMPLETE Die Mitteilung FORMATTING FAILED zeigt an, dass 1 oder mehrere Sektoren nicht formatiert und/oder kontrolliert werden konnten. (Hierzu Fehlernummer: 27,28,29) 2.5.1.3. Fehlermitteilungen --------------------------- Waehrend der Testfolge entdeckte Fehlerbedingungen, die nach Ausruestungsfehlern und Datenfehlern unterschieden sind, werden auf dem angewiesenen Bediengeraet angezeigt. Bei Ausruestungs- fehler wird ein Fehlerbit (Bit 15) im Steuer-/Statusregister (RKCS) gesetzt. Datenvergleichsfehler kommen vor, wenn das OGTP bei einer Datenuebertragung andere als die ausgesendeten Daten empfaengt. Einige Bedingungen koennen sowohl Ausrue- stungsfehler als auch Datenvergleichsfehler verursachen. Im Folgenden werden die verschiedenartigen Fehlermitteilungen ausfuehrlich dargestellt. Tabelle 2 listet die Fehlernummern und ihre entsprechenden fehlerhaften Bedingungen auf. Ausschriftenformat fuer Ausruestungsfehler: CM5400 UNIT NO. m ERROR NO. n RKDS= Inhalt des Geraetestatusregisters RKER= Inhalt des Fehlerregisters RKCS= Inhalt des Steuer-/Statusregisters RKWC= Inhalt des Wortzaehlers RKBA= Inhalt des Busadresszaehlers RKDA= Inhalt des Plattenadressregisters 34 Ausschriftenformat fuer Datenvergleichsfehler: CM5400 UNIT NO. m ERROR NO. n EXPECTED= ausgesendete Daten RECEIVED= empfangene Daten Ausschriftenformat fuer Sektorfehler: CM5400 UNIT NO. m ERROR NO. n EXPECTED = ausgesendete Daten RECEIVED = empfangene Daten CYLINDER = Nummer (oktal und dezimal) TRACK = Nummer (oktal und dezimal) SECTOR = Nummer (oktal und dezimal) WORD NO. IN SECTOR = Nummer (oktal und dezimal) Ausschriften fuer andere Fehler: CONTENTS OF RKDA INCORRECT (Inhalt des Sektoradressregisters ist fehlerhaft) HEADER VERIFY ERROR AT ADDRESS a (Vorsatz-Vergleichsfehler bei Adresse a) UNABLE TO FORMAT SECTOR AT ADDRESS b (unerlaubtes Sektorformat bei Adresse b) REREAD SAME DATA n TIMES BEFORE ERROR (dieselben Daten sind n mal gelesen worden, bevor ein Fehler auftrat) ERROR NO. x RECOVERED AFTER y RETRIES (Fehlernummer x nach y Versuchen) 35 Tabelle 2 Fehlerbedingungen fuer Kassettenplattenspeicher Fehler- Fehlerbedingungen Nr. ---------------------------------------------------------------- 1 Fehler nach Lese-Kopf-Kommando auf Zylinder 0. 2 Die bei einem Lese-Kopf-Kommando erreichte Zylinder- adresse stimmt nicht mit der ausgewaehlten Adresse ueberein. 3 Fehler nach Lese-Kopf-Kommando auf einem Zylinder zwischen 1 und 199 4 Fehler nach Lese-Kopf-Kommando auf einem Zylinder, dessen Adresse im stetigen Steigen von 0 bis 199 gebildet worden ist. 5 Fehler nach Lese-Kopf-Kommando auf einem Zylinder, dessen Adresse im stetigen Fallen von 199 bis 0 gebildet worden ist. 6 Fehler waehrend des Schreibens eines Datenmusters, das die Sektornummer enthaelt in einen Sektor. 7 Fehler waehrend des Lesens eines Datenmusters, das die Sektornummer enthaelt von einem Sektor 8 Datenvergleichsfehler; das gelesene Datenmuster von einem Sektor auf Spur 0, Zylinder 0 enthaelt nicht die entsprechende Sektornummer. 9 Fehler waehrend des Schreibens eines Datenmusters, das die Spurnummer enthaelt in den Sektor 0 einer Spur auf Zylinder 0. 10 Fehler waehrend des Lesens eines Datenmusters, das die Spurnummer enthaelt von dem Sektor 0 einer Spur auf Zylinder 0. 11 Datenvergleichsfehler; das gelesene Datenmuster von Sektor 0, Zylinder 0 einer Spur enthaelt nicht die entsprechende Spurnummer. 12 Fehler waehrend des Schreibens eines Datenmusters, das die Zylindernummer enthaelt in Sektor 0 eines Zylinders. 13 Fehler waehrend des Lesens eines Datenmusters, das die Zylindernummer enthaelt von Sektor 0 eines Zylinders. 14 Datenvergleichsfehler; das gelesene Datenmuster von Sektor 0 eines Zylinders enthaelt nicht die ent- sprechende Zylindernummer. 15 Fehler waehrend des Schreibens von Daten ueber 2 Sek- toren. Die Datenuebertragung wurde begonnen auf Zylin- der 0, Spur 0, Sektor 11 und beendet auf Spur 1, Sektor 0. Das Datenmuster besteht aus lauter Einsen. 16 Fehler waehrend des Lesens von 2 Worten (Datenmuster ist gleich alles Einsen) von Zylinder 0, Spur 1, Sektor 0. 17 Datenvergleichsfehler; das gelesene Datenmuster von Zylinder 0, Spur 1, Sektor 0 enthaelt nicht das entsprechende Datenmuster von lauter Einsen. 18 Fehler waehrend des Schreibens von Daten ueber 2 Sek- toren. Die Datenuebertragung wurde begonnen auf Zylin- der 0, Spur 1, Sektor 11 und beendet auf Spur 0, Sektor 0 des nachfolgenden Zylinders. Das Datenmuster besteht aus lauter Einsen. 36 Tabelle 2 (Fortsetzung) Fehler- Fehlerbedingungen Nr. ---------------------------------------------------------------- 19 Fehler waehrend des Lesens von 2 Worten (Datenmuster ist gleich alles Einsen) von Zylinder 1, Spur 0, Sektor 0. 20 Datenvergleichsfehler; das gelesene Datenmuster von Zylinder 1, Spur 0, Sektor 0 enthaelt nicht das entsprechende Datenmuster von lauter Einsen. 21 Fehler waehrend des Schreibens eines Testmusters. 22 Fehler waehrend des Lesens eines Testmusters. Fehlerhafte Bedingungen koennen auch beim Datenver- gleich vorkommen. Die von der Platte gelesenen Daten enthalten nicht das ausgesendete Testmuster. 23 Fehler waehrend des Schreibens eines Zufalls-Daten- musters auf einem beliebig ausgewaehlten Plattenbereich. 24 Fehler nach der Aussendung eines Suchkommandos mit einer zufaelligen Plattenadresse. 25 Fehler waehrend des Lesens eines Zufalls-Datenmusters von einem beliebig ausgewaehlten Plattenbereich. 26 Datenvergleichsfehler; das gelesene Datenmuster ist ungleich dem ausgesendeten Datenmuster. 27 Fehler waehrend des Schreibens eines Vorsatzes in einen Sektor. 28 Fehler waehrend des Lesens eines Vorsatzes von einem Sektor. 29 Der Vorsatz zur Identifikation eines Sektors enthaelt kein richtiges Format. 30 Fehler nach Aussenden eines Suchkommandos fuer einen ausgewaehlten oberen Zylinder. 31 Fehler nach Aussenden eines Suchkommandos fuer einen ausgewaehlten unteren Zylinder. 2.5.1.4. Aktivierung des Nutzer-Modus ------------------------------------- Fuer die Testung des Kassettenplattengeraetes muss eine Arbeits- platte vorhanden sein. In der folgenden Aktivierungsprozedur sind Bedienereingaben unterstrichen. >ALLOCATE DKn: (n-Einheit-Nr.; nur fuer Systeme mit ------------- Mehrnutzer-Schutz) >RUN $CM5400 ----------- START CM5400 DIAGNOSTIC*TIME OF DAY = stunde:minute:sekunde DEVICE? DKn: ---- **WARNING** CM5400:RESIDENT DATA WILL BE DESTROYED **WARNING** CONTINUE? Y (N oder RETURN allein bricht den Test ab) - FORMAT DISK ONLY? (N-Beginn der Testfolge im Nutzer-Modus Y-nur Formatieren und Ende des OGTP) Der vollstaendige Durchlauf des Programmes dauert 20 Minuten. Das Formatieren dauert annaehernd 4 Minuten. Ein vorzeitiger Abbruch kann durch das MCR-Kommando ABORT erreicht werden. 37 2.5.1.5. Zusammenfassender Testbericht im Nutzer-Modus ------------------------------------------------------ Nach dem vollstaendigen Abschluss der Testfolge des OGTP wird fol- gender Bericht auf der Bedieneinheit ausgegeben: CM5400 UNIT NO. n (n-Einheit-Nr.) PASS COUNT= (Durchlaufzaehler) TOTAL ERRORS ENCOUNTERED= (Summe der gefundenen Fehler) TOTAL FUNCTIONS ISSUED= (Summe der geprueften Funktionen) TOTAL WORDS TRANSFERED= (Summe der uebertragenen Worte) END OF CM5400 DIAGNOSTIC*TIME OF DAY=stunde:minute:sekunde PASS COUNT und TOTALS sind kummulativ fuer den Dauertest, welcher nur im Service-Modus moeglich ist, von Bedeutung. 2.5.1.6. Aktivierung des Service-Modus -------------------------------------- Bei der Aufnahme dieses Modus werden Kenntnisse von der Auswahl der Testparameter, des interaktiven Tests, der Unterbrechungsmoeglichkeit und der im gegenwaertigen System verwendeten Ereignisflags verlangt. Ausserdem muss die Task CCF unter dem Namen ...CCF (entspricht einem Kommando) mit hoher Prioritaet installiert sein. Unterstrichener Text in der folgenden Aktivierungsprozedur stellt Bedienereingaben dar. >ALLOCATE DKn: (n-Einheit-Nr.; nur fuer Systeme mit ------------- Mehrnutzer-Schutz) >RUN $CM5400 ----------- START CM5400 DIAGNOSTIC*TIME OF DAY = stunde:minute:sekunde DEVICE? DKn: ---- **WARNING** CM5400:RESIDENT DATA WILL BE DESTROYED **WARNING** CONTINUE? SERVICE (N oder RETURN allein bricht den Test ab) ------- TEST PARAMETERS (OCTAL)= nnnnnn ------ EVENT FLAG FOR INTERVENTION (DEZIMAL) = nn (32 CCF nn (nn-gewuenschtes Ereignisflag; 32ALLOCATE MTn: (n-Einheit-Nr.; nur fuer Systeme mit ------------- Mehrnutzer-Schutz) >RUN $CM5300 ----------- START CM5300 DIAGNOSTIC*TIME OF DAY = stunde:minute:sekunde DEVICE? MTn: ---- **WARNING** CM5300:RESIDENT DATA WILL BE DESTROYED **WARNING** CONTINUE? Y (N oder RETURN allein bricht den Test ab) - QUICK TOTAL TAPE CHECK? (Y-es wird die Zuverlaessigkeit des Bandes geprueft) N-bedeutet den Beginn der Testfolge im Nutzer-Modus) Der vollstaendige Durchlauf des Programmes dauert ca. 20 Minuten. Ein vorzeitiger Abbruch kann durch das MCR-Kommando ABORT er- reicht werden. 52 2.5.2.5. Zusammenfassender Testbericht im Nutzer-Modus ------------------------------------------------------ Nach dem vollstaendigen Abschluss der Testfolge des On-Line-Ge- raetetestprogrammes wird folgender Bericht auf der Bedieneinheit ausgegeben: CM5300 UNIT NO. n (n-Einheit-Nr.) PASS COUNT= (Durchlaufzaehler) TOTAL ERRORS ENCOUNTERED= (Summe der gefundenen Fehler) TOTAL FUNCTIONS ISSUED= (Summe der geprueften Funktionen) TOTAL WORDS TRANSFERED= (Summe der uebertragenen Worte) END OF CM5300 DIAGNOSTIC*TIME OF DAY=stunde:minute:sekunde PASS COUNT und TOTALS sind kummulativ fuer den Dauertest, welcher nur im Service-Modus moeglich ist, von Bedeutung. 2.5.2.6. Aktivierung des Service-Modus -------------------------------------- Bei der Aufnahme dieses Modus werden Kenntnisse von der Auswahl der Testparameter, des interaktiven Tests, der Unterbrechungsmoeglichkeit und der im gegenwaertigen System verwendeten Ereignisflags verlangt. Ausserdem muss die Task CCF unter dem Namen ...CCF (entspricht einem Kommando) mit hoher Prioritaet installiert sein. Unterstrichener Text in der folgenden Aktivierungsprozedur stellt Bedienereingaben dar. >ALLOCATE MTn: (n-Einheit-Nr.; nur fuer Systeme mit ------------- Mehrnutzer-Schutz) >RUN $CM5300 ----------- START CM5300 DIAGNOSTIC*TIME OF DAY = stunde:minute:sekunde DEVICE? MTn: ---- **WARNING** CM5300:RESIDENT DATA WILL BE DESTROYED **WARNING** CONTINUE? SERVICE (N oder RETURN allein bricht den Test ab) ------- TEST PARAMETERS (OCTAL)= nnnnnn ------ EVENT FLAG FOR INTERVENTION (dezimal) = nn (32 CCF nn (nn-gewuenschtes Ereignisflag; 32? @\[ ]^_ Die Uebung ist richtig ausgefuehrt, wenn obige Zeichen auf dem Bildschirm erscheinen. 2.5.3.3. Fehlermitteilungen --------------------------- Gesonderte Fehlermitteilungen werden nicht ausgegeben. Auf dem Bildschirm kann die ordnungsgemaesse Ausfuehrung einer Uebung verfolgt werden. Hier ist der Anschluss einer Hard-Copi-Ein- richtung zur nachtraeglichen Auswertung von Nutzen. 60 2.5.3.4. Aktivierung des Nutzer-Modus ------------------------------------- In der folgenden Aktivierungsprozedur sind Bedienereingaben unterstrichen: >ALLOCATE TTn: (n-Einheit-Nr.; nur fuer Systeme mit ------------- Mehrnutzer-Schutz) >RUN $CM1608 ----------- START CM1608 (BDE K8911) DIAGNOSTIC*TIME OF DAY = stunde: minute:sekunde DEVICE ? TTn: ---- CONTINUE ? Y - (N oder RETURN allein bricht den Test ab) Der vollstaendige Durchlauf des Programmes dauert 3 Minuten. Ein vorzeitiger Abbruch kann durch das MCR-Kommando ABORT erreicht werden. 2.5.3.5. Anzeigen des Test-Endes im Nutzer-Modus ------------------------------------------------ Nach dem vollstaendigen Abschluss der Testfolge des OGTP wird folgende Mitteilung auf dem Bediengeraet ausgegeben: END OF CM1608 (BDE K8911) DIAGNOSTIC*TIME OF DAY = stunde: minute:sekunde 2.5.3.6. Aktivierung des Service-Modus -------------------------------------- Bei der Aufnahme dieses Modus werden Kenntnisse von der Auswahl der Testparameter, des interaktiven Tests, der Unterbrechungsmoeglichkeit und der im gegenwaertigen System verwendeten Ereignisflags verlangt. Ausserdem muss die Task CCF unter dem Namen ...CCF (entspricht einem Kommando) mit hoher Prioritaet installiert sein. Unterstrichener Text in der folgenden Aktivierungsprozedur stellt Bedienereingaben dar. >ALLOCATE TTn: (n-Einheit-Nr.; nur fuer Systeme mit ------------- Mehrnutzer-Schutz) >RUN $CM1608 ----------- START CM1608 (BDE K8911) DIAGNOSTIC*TIME OF DAY = stunde: minute:sekunde DEVICE? TTn: ---- CONTINUE? SERVICE (N oder RETURN allein bricht den Test ab) ------- TEST PARAMETERS (OCTAL)= nnnnnn ------ EVENT FLAG FOR INTERVENTION (dezimal) = nn (32 CCF nn (nn-gewuenschtes Ereignisflag; 32 Einmal begonnen, werden die Zeilen solange wiederholt, bis eine Unterbrechung oder Abbruch des OGTP durch MCR-Kommando erfolgt. 63 2.5.4. On-Line-Geraetetestprogramm fuer Paralleldrucker CM 6313 --------------------------------------------------------- 2.5.4.1. Geraetekennzeichen --------------------------- Bezeichnung: Paralleldrucker PD, VT 27065 ESER-Chiffre: CM 6313 Leistungsparameter Druckgeschwindigkeit: 660 Zeilen/min Druckbreite: 136 Zeichen/Zeile max. Anzahl der Durchschlaege: 5 Zeichenvorrat: 96 Zeichen (lat./kyr. gross) Datentraeger Art: Leporellopapier Breite: 100-430mm Interface Typ: IFSP Uebertragungsrate: 1,5 KByte/s Zeichenpuffer fuer 1 Zeile, in 8 ms gefuellt) K 1600-AS: AIP 2.5.4.2. Beschreibung der Testroutinen -------------------------------------- Das OGTP testet die ordnungsgemaesse Ausgabe der alphanumeri- schen Zeichen und Sonderzeichen sowie die Ausfuehrung von Po- sitionierfunktionen. Der Drucker wird geprueft wie ein Bildschirmgeraet. Seitenfor- matsteuerfunktionen werden nicht geprueft. Die Testausgabe er- folgt direkt. In einer Zeile werden 132 Positionen getestet. Carriage-Return-Test -------------------- Dieser Test ueberprueft, ob das Geraet ordnungsgemaess von allen Zeilenpositionen auf die Position 0 zurueckgeht. Als Testfolge wird verwendet: 1) Drucken 131 Space (Leerzeichen) und ein Backslash (\) 2) RETURN-Kommando 3) Drucken 131 Space und ein Slash (/) 4) RETURN-Kommando 5) Wiederholen der Folgen 1 bis 4 131 mal in der Weise, dass vor dem Backslash und Slash jeweils 1 Space weniger als vorher ausgegeben wird. Diese Uebung ist richtig ausgefuehrt, wenn 1 Zeile Kreuze (x) infolge Ueberdruck entsteht. Space Test ---------- Dieser Test ueberprueft die ordnungsgemaesse Ausfuehrung des Leerzeichens. Als Testfolge wird verwendet: 1) Drucken eines Backslash (\) in jeder 2. Position begin- nend bei Position 0. 64 2) Zurueckpositionieren auf Position 0 und wechselweises Drucken von Leerzeichen und Slash (/). Diese Uebung ist richtig ausgefuehrt, wenn folgendes saege- zahnartiges Testmuster entsteht: \/\/\/\/\/\/\/\/\ usw. Tabulator Test -------------- Dieser Test ueberprueft bei einem Drucker, der mit Tabulator- einrichtung ausgeruestet ist, die ordnungsgemaesse Ausfuehrung des Tabulatorschrittes von der 1. zur naechsten Tabulatorposi- tion oder von einer Stellung zwischen 2 Tabulatoren zur naech- sten Tabulatorposition. Als Testfolge wird verwendet: 1) Ausgabe von Slash (/) auf jeder Tabulatorposition (die je- weils 8 Leerzeichen entspricht) einer Zeile, beginnend von Position 0 an. 2) Danach Ausgabe von 7 Zeilen dergestallt, dass beginnend auf Position 0 jeweils eine Anzahl von Leerzeichen, die der Zeilennummer -1 entspricht, gefolgt von einem Slash auf jeder naechstfolgenden Tabulatorposition, ausgesendet werden. Die Uebung ist richtig ausgefuehrt, wenn auf dem Drucker folgendes Testmuster erscheint: TAB TEST / / / / / / / / / / / / / / / / / / / / usw. / / / / / / / / / / / / / / / / / / / / Line Feed Test -------------- Dieser Test ueberprueft die Ausfuehrung der Zeilenschaltung. Als Testfolge wird verwendet: 1) Drucken eines Backslash (\) auf Position 0. 2) Ausgabe eines Zeilenschaltkommandos (ohne Return) 3) Ausgabe eines Backslash 4) Hintereinander 130 mal Ausgabe der Kombination Line Feed und Backslash. Diese Uebung ist richtig ausgefuehrt, wenn auf dem Drucker eine Diagonallinie, beginnend auf Position 0, Zeile 0 und endend auf der letzten Position von Zeile 132 erscheint. Zeichenvorratstest ------------------ Dieser Test ueberprueft die Vollstaendigkeit von lateinischen und kyrillischen Buchstaben, alphanumerischen Zei- chen und Sonderzeichen. Die Zeichen werden in Gruppen zu je 3 Sonderzeichen, beginnend mit ABC und endend mit 789, auf einer ganzen Zeile ausgegeben. Danach folgen die Sonderzeichen, eben- 65 falls in Gruppen zu je 3 Zeichen: !"# $ '() *+, -./ :;< =>? @[\ ]^_ Die Uebung ist richtig ausgefuehrt, wenn obige Zeichen ausge- druckt werden. 2.5.4.3. Fehlermitteilungen --------------------------- Gesonderte Fehlermitteilungen werden nicht ausgegeben. Das Druckbild zeigt an, ob eine Uebung ordnungsgemaess ausgefuehrt worden ist. 2.5.4.4. Aktivierung des Nutzer-Modus ------------------------------------- In der folgenden Aktivierungsprozedur sind Bedienereingaben unterstrichen. >ALLOCATE LPn: (n-Einheits-Nr.; nur fuer Systeme mit ------------- Mehrnutzer-Schutz) >RUN $CM6313 ----------- START CM6313 DIAGNOSTIC*TIME OF DAY = stunde:minute:sekunde DEVICE ? LPn: ---- CONTINUE ? Y - (N oder RETURN allein bricht den Test ab) Der vollstaendige Durchlauf des Programmes dauert 2 Minuten. Ein vorzeitiger Abbruch kann durch das MCR-Kommando ABORT erreicht werden. 2.5.4.5. Anzeigen des Testendes ------------------------------- Nach dem vollstaendigen Abschluss der Testfolge des OGTP wird folgende Mitteilung auf dem Bediengeraet ausgegeben: END OF CM6313 DIAGNOSTIC*TIME OF DAY = stunde:minute:sekunde 2.5.4.6. Aktivierung des Service-Modus -------------------------------------- Bei der Aufnahme dieses Modus werden Kenntnisse von der Auswahl der Testparameter, des interaktiven Tests, der Unterbrechungsmoeglichkeit und der im gegenwaertigen System verwendeten Ereignisflags verlangt. Ausserdem muss die Task CCF unter dem Namen ...CCF (entspricht einem Kommando) mit hoher Prioritaet installiert sein. Unterstrichener Text in der folgenden Aktivierungsprozedur 66 stellt Bedienereingaben dar. >ALLOCATE LPn: (n-Einheit)Nr.; nur fuer Systeme mit ------------- Mehrnutzer-Schutz) >RUN $CM6313 ----------- START CM6313 DIAGNOSTIC-TIME OF DAY=stunde:minute:sekunde DEVICE? LPn: ---- CONTINUE? SERVICE (N oder RETURN allein bricht den Test ab) ------- TEST PARAMETERS (OCTAL) = nnnnnn ------ EVENT FLAG FOR INTERVENTION (dezimal) = nn (32 CCF nn (nn-gewuenschtes Ereignisflag; 32INS $IOX/schalter ... 3.1.2.2. Aufruf --------------- IOX kann von allen Bedienterminals aus aufgerufen werden. Alle zu testenden Geraete sind mit dem MCR-Kommando ALLOCATE an das entsprechende Terminal zu binden. Platten, die im Format FM16-D zu testen sind, sind einzugliedern (MCR-Kommando MOUNT). Ist IOX installiert, ruft man das Programm ueber seinen Tasknamen auf. Der Name ist ... IOX, der Aufruf lautet: >IOX worauf mit: IOX> vom Programm her geantwortet wird. Nach Erhalt dieser Programmeldung koennen die gewuenschten Kommandos gegeben werden. Ist IOX nicht installiert, kann man es mittels des MCR- bzw. DCL- Kommandos RUN aufrufen. In diesem Fall wird als Taskname die Bezeichnung des Terminals verwendet, von dem aus IOX aufgerufen wurde. Die Antwort von IOX (Programmeldung) besteht dann aus diesem Tasknamen: (z.B. Aufruf von TT1:) >RUN LB:[1,54] IOX TT1> 3.1.2.3. Verwendung von Indirektkommandodateien ----------------------------------------------- Nach der Programmeldung von IOX auf dem Eingabeterminal koennen alle Steuerkommandos interaktiv eingegeben werden. Anstelle der Eingabe dieser Kommandos kann auch der Name einer Indirektkomman- dodatei angegeben werden, die eine Folge von Kommandos enthaelt. Der Standarddateityp ist "CMD". IOX akzeptiert nur einstufige Indirektkommandodateien (d.h. in der Indirektkommandodatei darf keine weitere Kommandodatei aufgerufen werden.) Beispiel: IOX> @TEST Dabei wird die Datei TEST.CMD auf dem Standardgeraet unter dem UFD des laufenden UIC vorausgesetzt, die eine Folge gueltiger Steuerkommandos fuer IOX beinhalten muss. 3.2. Arbeitsweise ----------------- Die Anwendung von IOX setzt verschiedene Festlegungen, die durch den Bediener getroffen werden muessen, voraus. Diese beziehen sich auf folgende prinzipielle Bedingungen: - Geraeteklassen und einzelne Geraete, die in den Test einbezogen werden sollen - Art des Testverfahrens, das fuer die jeweiligen Geraete zur 47 Anwendung kommen soll (IOX unterscheidet 3 prinzipiell unter- schiedliche Testverfahren) - Testparameter fuer jeden Test (Festlegen bestimmter Muster von Testdaten fuer Plattentests, Anzahl von Pruefsaetzen auf Mag- netbaendern, Zeitdauer des Tests u.v.a.) Diese Festlegungen werden durch das Eingeben von Steuerkommandos realisiert, d.h., der Ablauf der E/A-Tests wird in Form einer Implementierung der getroffenen Entscheidungen vorgeschrieben. Die Ablaufsteuerung von IOX mittels Steuerkommandos erfolgt in folgenden Schritten: 1. Aufrufen von IOX 2. Festlegen der Testkonfiguration, d.h. der Geraete, die in den Test einzubeziehen sind 3. Festlegen der Testart fuer jedes in der Testkonfiguration befindliche Geraet 4. Setzen der Testparameter fuer den Test der festgelegten Ein- heiten 5. Anlauf der Geraetetests. Dabei besteht die Moeglichkeit der Unterbrechung zur Neufestlegung der Angaben gemaess Pkt. 2-4 6. Ueberwachen von Aktivitaets- und Fehlerreports, die von IOX waehrend der Abarbeitung erzeugt werden 7. Beenden von IOX oder Wiederholen des Vorganges mit Pkt. 2 Ablauf des Tests: ----------------- IOX fuehrt Tests auf Platten und Magnetbaendern durch. Die Daten- traeger muessen eingegliedert sein und duerfen nicht von anderen Nutzern gebunden sein. IOX kann simultan 28 Geraete testen (Stan- dardwert). Eine groessere Anzahl von simultan zu testenden Gerae- ten kann durch Editieren der Kommandodatei fuer das Bilden der IOX-Task festgelegt werden (max. 250). Der Testablauf im allge- meinen ist folgendermassen: 1. Schreiben von Bloecken von 1024. Bytes eines definierten Datenmusters auf einen eingegliederten Datentraeger 2. Lesen des Datenmusters 3. Pruefen auf Uebereinstimmung der geschriebenen und gelesenen Daten 4. Mitteilung ueber Abweichungen Dieser Prozess wiederholt sich bis zum definierten Testende. Der Testablauf fuer verschiedene Geraeteklassen ist im Detail unterschiedlich: Platten (DM:,DK:,DY:): Es wird ein Datenpuffer auf der Platte be- schrieben und danach ein vergleichendes Lesen durchgefuehrt. Als Testparameter koennen gesetzt werden: - zu schreibendes Datenmuster - der zu testende Bereich der physischen Bloecke auf der Platte - Auswahl, ob die Bloecke sequentiell oder 48 direkt adressiert zu testen sind Magnetbaender (MT:) Das zu testende Magnetband wird zurueck- gespult. Es wird der Testsatz geschrieben, bis zum Beginn des Testsatzes zurueckgesetzt und der Testsatz nochmals zum Vergleich gelesen. Dieser Vorgang wie- derholt sich. Als Testparameter koennen gesetzt werden: - zu schreibendes Datenmuster - Groesse der Datenpuffer - Anzahl der Testsaetze Datentraegerorganisation: ------------------------- Es werden zwei Datentraegerorganisationen unterschieden, die IOX behandeln kann: - FM16-D - Datentraeger (dateistrukturiert) - NFS - Datentraeger (nichtdateistrukturiert) Magnetbaender werden als NFS-Datentraeger behandelt. Platten koennen FM16-D- oder NFS-Datentraeger sein. FM16-D- Platten sind solche, die mit dem MCR-Kommando INITVOLUME ini- tialisiert wurden und demzufolge einen Datentraegerbeschreibungs- satz (HOME-Block) haben. NFS-Platten sind solche, die nicht der Datentraegerorganisation des OMOS 1630 entsprechen. Kommandokategorien des IOX: --------------------------- Die IOX-Kommandosprache unterscheidet vier prinzipielle Gruppen von Kommandos: 1. Funktionskommandos: . Festlegen der Geraetekonfiguration zum Testen . Festlegen der Testart . Starten von anderen Systemtasks, die parallel zu den Gerae- tetests ablaufen sollen 2. Steuerkommandos: . Starten und Stoppen des IOX-Prozesses . Setzen der verschiedenen IOX-Modi (s. 3.2.1.) . Rueckkehr zur Exekutive 3. Anzeigekommandos: . Information ueber aktuelle Testparameter . Ausgabe von Statusinformationen und Aktivitaetsreports 4. Parameterkommandos: . Festlegen von Testparametern Tabelle 8: Kategorien der IOX-Kommandos 49 Funktions- | Steuerungs- | Anzeige- | Parameter- | kommandos | ---------------------------------------------------------------- SELECT | ABORT | BADBLOCKS (1) | BADBLOCKS (1) DESELECT | CTRL/C | CONFIGURE (1) | BUFFERSIZE EXECUTE | EXIT | PARAMETERLIST | COMPAREDATA FM16-D | PROCEED | PATTERN (1) | CONFIGURE (1) VERIFY | RESTART | PRINTSUMMARY | CONTROL_C | START | RANGE (1) | ERRORLIMIT | | SPY | INTERLEAVE | | | LOGFILE | | | PATTERN (1) | | | RANDOM | | | RANGE (1) | | | RECORDS | | | REPORTERRORS (1) | | | RETRIES | | | RUNTIME | | | SUMMARYTIME | | | TEMPORARYFILE | | | VOLUMECHECK | | | WAIT | | | WRITECHECK ---------------------------------------------------------------- 1) Kommandos sind sowohl als Anzeige- als auch als Parameter- kommandos verwendbar 3.2.1. Arbeitsmodi ------------------ IOX arbeitet in drei unterschiedlichen Arbeitsmodi. Fuer jeden Modus sind bestimmte Funktionen zugelassen. Die folgenden Abschnitte beschreiben die Funktionen der Modi, wie der Uebergang von einem Modus in einen anderen zu realisieren ist und welche Kommandos im jeweiligen Modus zugelassen sind. Die drei Modi sind: - Kommandomodus - Ausfuehrungsmodus - interaktiver Modus 3.2.1.1. Kommandomodus ---------------------- Der Kommandomodus ist derjenige, in den man eintritt, wenn man IOX aufgerufen hat und erstmalig die Programmeldung erhalten hat. In diesem Modus legt man die Testkonfiguration fest, setzt Test- parameter fuer die einzelnen Geraete und initiiert zusaetzliche Tasks. Im Kommandomodus erfolgt noch keine Testausfuehrung, und die durch das EXECUTE-Kommando initiierten Tasks werden in Warte- schlangen eingereiht. Die Eingabe von erzeugt als Antwort von IOX die Programmeldung. Mit CTRL/C erhaelt MCR die Steuerung fuer eine einzugebende Kommandozeile. 3.2.1.2. Ausfuehrungsmodus -------------------------- Der Uebergang vom Kommandomodus in den Ausfuehrungsmodus erfolgt 50 mit dem START-Kommando. Mit diesem Kommando laufen die Testroutinen des IOX gemaess den festgelegten Testparametern an und die Abarbeitung der Tasks, die mit EXECUTE initiiert wurden, beginnt. Es wird die interne Zeitroutine (Uhr) von IOX gestartet und die Ausgabe von zeitabhaengigen Fehler- und Aktivitaetsreports erfolgt. Der im Kommandomodus auf YES oder NO gesetzte Parameter CONTROL_C entscheidet ueber die Moeglichkeit der Unterbrechbarkeit des Ausfuehrungsmodus und den Uebergang in den interaktiven Modus. CONTROL_C NO : CTRL/C bewirkt die Uebergabe der Steuerung an MCR (Meldung MCR>). erzeugt die Systemmeldung >. CONTROL_C YES: IOX akzeptiert keine andere Eingabe als CTRL/C. CTRL/C erzeugt die Programmeldung des IOX. Der Ausfuehrungsmodus wird verlassen und in den interaktiven Modus eingetreten 3.2.1.3. Interaktiver Modus --------------------------- Die Eingabe von CTRL/C (CONTROL_C YES) bewirkt das Verlassen des Ausfuehrungsmodus und Eintreten in den interaktiven Modus. Im interaktiven Modus ist das Korrigieren von Testparametern durch die Eingabe von Parameterkommandos, Anzeigen von Testparametern u.a. moeglich. Im interaktiven Modus laufen Test- routinen und durch EXECUTE initiierte Tasks. Wurde das Parameterkommando LOGFILE NO im Kommandomodus gegeben, werden Aktivitaets- und Fehlerreports fuer die Zeit, in der sich IOX im interaktiven Modus befindet, ausgesetzt. (Bei LOGFILE YES werden sie weiterhin in die LOG-Datei geschrieben (siehe 3.3.15., LOGFILE)). Im interaktiven Modus sind mit Ausnahme folgender Kommandos alle Kommandos des IOX gueltig: BUFFERSIZE RUNTIME RESTART START Diese Kommandos sind nur im Kommandomodus gueltig. Gibt man sie im interaktiven Modus, kommt die Fehlernachricht: IOX -- Command valid only in command mode BUFFERSIZE ist als Argument der Kommandos SELECT und VERIFY auch im interaktiven Modus verwendbar (jedoch nicht als eigenstaen- diges Kommando). PATTERN kann als Informationskommando verwendet werden (nicht zum Auswaehlen eines anderen Testmusters). Die Kommandos ABORT PROCEED PRINTSUMMARY SPY sind nur im interaktiven Modus anwendbar bzw. sinnvoll. PRINTSUMMARY und SPY im Kommandomodus ergeben keine 51 aussagefaehigen Informationen, da keine Tests aktiv sind. ABORT veranlasst die Beendigung aller Tests und initiierter Tasks sowie Rueckkehr in den Kommandomodus. PROCEED veranlasst die Rueckkehr in den Ausfuehrungsmodus. Verbleiben keine auszufuehrenden Aktivitaeten, beendet IOX die Testroutinen. Die Betaetigung der Tasten RETURN und CTRL/C haben im interaktiven Modus die gleiche Bedeutung wie im Kommandomodus. Funktion und Syntax aller gueltigen IOX-Kommandos sind in Kapitel 3.3. detailliert beschrieben. 3.2.2. Testkonfiguration, Geraeteklassen und Testverfahren ---------------------------------------------------------- Um ein Geraet testen zu koennen, muss es sich in der Testkonfiguration von IOX befinden. Standardmaessig befindet sich bei IOX das jeweils erste Geraet aller durch OMOS unterstuetzten Geraeteklassen (nur Platten und Baender), d.h. das Geraet mit der logischen Einheitennummer "0" (z.B. DK0:, DM0:, DY0:, MT0:) in der Testkonfiguration. Um die Geraetetestkonfiguration zu erweitern, kann man das Kommando CONFIGURE verwenden (s. Pkt. 3.3.5.). Mit diesem Kommando lassen sich Geraete der Klassen DISK - DM:, DR:, DK:, DY: TAPE - MT: hinzufuegen. Die Aufnahme logischer Geraete, die mittels MCR- Kommando ASSIGN physischen Geraeten zugewiesen wurden, ist moeglich. Diese sind dann einer der beiden Geraeteklassen zuzuordnen. Zusaetzliche Geraete der in der Standardkonfiguration enthaltenen Geraeteklassen werden automatisch der jeweiligen Klasse zugeordnet. DK0: ist standardmaessig als DISK vereinbart. Bei Aufnahme von DK1: in die Testkonfiguration wird dieses Geraet automatisch auch als DISK vereinbart. Der Versuch, DK1: als TAPE zu konfigurieren, wuerde zu Fehlern fuehren. Testverfahren bei IOX: ---------------------- Die Auswahl, welche Geraete in den geplanten Testlauf einbezogen werden und nach welchem der durch IOX realisierten Testverfahren sie zu behandeln sind, erfolgt durch die folgenden Funktionskommandos: FM16-D: Ein Geraet mit einem Datentraeger, der der Datentrae- gerorganisation des OMOS entspricht, ist in den Test einzubeziehen. Inhalt und Struktur des Datentraegers bleiben beim Test erhalten. SELECT: Eine Geraeteeinheit mit einer Datentraegerorganisa- tion, die nicht der des OMOS entspricht (NFS), wird in den Test einbezogen. Der ablaufende Test zerstoert den bisherigen Aufbau des Datentraegers. VERIFY: Ein Geraet mit NFS-Datentraeger wird in den Test ein- bezogen. Inhalt des Datentraegers bleibt erhalten. Testen mit VERIFY beinhaltet nur ein Lesen vom Daten- traeger. 52 Auf Geraeten, die mit der Geraeteklasse TAPE konfiguriert sind, sind immer Datentraeger eingegliedert, die von IOX als NFS- Datentraeger betrachtet werden. Auf Geraeten der Klasse DISK koennen FM16-D- oder NFS-Datentraeger eingegliedert sein. 3.2.3. Testparameter -------------------- Testparameter legen Art und Weise der Testverfahren von IOX fest. Das bezieht sich auf Angaben wie: - Testdauer - Anzahl von Testsaetzen auf Baendern - Bereiche von physischen Bloecken auf Magnetplatten, die in den Test einbezogen werden sollen - Steuerung der Aktivitaets- und Fehlerreports (moeglich ist direkte Ausgabe ueber Terminal oder auf eine Nachrichtendatei (Logfile) Es gibt 2 Arten von Testparametern: - allgemeine - geraetespezifische. 3.2.3.1. Allgemeine Testparameter --------------------------------- Allgemeine Testparameter werden durch folgende Kommandos festgelegt und sind bei der Abarbeitung von IOX fuer alle in den Test einbezogenen Geraete wirksam: CONFIGURE CONTROL_C LOGFILE PATTERN REPORTERRORS RUNTIME SUMMARYTIME (Beschreibung der Kommandos s. Pkt. 3.3.) 3.2.3.2. Geraeteabhaengige Testparameter ---------------------------------------- Geraeteabhaengige Testparameter beziehen sich jeweils auf spezielle Geraete, die mit den Kommandos FM16-D, SELECT oder VERIFY in den Test einbezogen werden. Damit koennen geltende Standardparameterwerte korrigiert werden. Je nach Testverfahren (ausgewaehlt mit einem der drei genannten Funktionskommandos) fuer ein Geraet, koennen unterschiedliche Testparameter gesetzt werden. a) Parameterkommandos fuer FM16-D-Datentraeger Folgende Parameterkommandos sind fuer Platten im Format FM16-D anzugeben: COMPAREDATA ERRORLIMIT INTERLEAVE RANDOM 53 TEMPORARYFILE Die Parameterkommandos koennen vor der Eingabe des FM16-D- Funktionskommandos oder innerhalb der Kommandozeile des Funktionskommandos gegeben werden. b) Parameterkommandos fuer NFS-Datentraeger Folgende Parameterkommandos sind fuer das Testen von NFS-Daten- traegern (Platten, Magnetbaendern, Magnetbandkassetten) moeglich: NFS-Platten | Magnetbbaender ----------------------------------- BADBLOCKS | BUFFERSIZE BUFFERSIZE | ERRORLIMIT COMPAREDATA | RECORDS ERRORLIMIT | RETRIES INTERLEAVE | RANDOM | RANGE | RETRIES | VOLUMECHECK | WRITECHECK | ----------------------------------- Als Parameterkommandos koennen in der Kommandozeile des SELECT- Funktionskommandos angegeben werden: BADBLOCKS BUFFERSIZE ERRORLIMIT INTEREAVE RANDOM RANGE RETRIES Die Parameterkommandos koennen auch innerhalb der Kommandozeile des VERIFY-Funktionskommandos angegeben werden (Ausnahme: BADBLOCKS ist als separates Kommando einzugeben). (Beschreibung der Kommandos s. Pkt. 3.3.) 3.2.4. Testprotokolle --------------------- IOX erzeugt waehrend der Abarbeitung Testprotokolle (im folgenden als Reports bezeichnet). Es gibt zwei Kategorien von Reports: - Aktivitaetsreport - Fehlerreport Innerhalb dieser Kategorien werden wiederum verschiedene Arten von Reports unterschieden. (s. 3.2.4.1. - 3.2.4.2.) Die Festlegungen, ob die Reports direkt auf das Terminal auszugeben sind, von dem aus IOX aktiviert wurde, oder ob die Reports in eine Datei (Logfile) zu schreiben sind, wird mit dem Kommando LOGFILE festgelegt (s. Pkt. 3.3.). 3.2.4.1. Aktivitaetsreports --------------------------- 54 Aktivitaetsreports bestehen aus: - Zeitinformationen: . Intervalle zwischen zwei Reports (wird mit Kommando SUMMARYTIME festgelegt) . Zeitdauer, waehrend der IOX bereits aktiv ist . verbleibende Zeit fuer den laufenden Test - Informationen zu Geraeteeinheiten: . Zahl der E/A-Anforderungen an das Geraet . Zahl der ohne Fehler getesteten Datenbloecke . Anzahl der aufgetretenen Fehler - Informationen ueber die Ausfuehrung asynchroner Systemtraps (AST's) - Informationen ueber die Wiederholung von Warteschleifen (Idle- Loops) Aktivitaetsreports koennen zu verschiedenen Zeitpunkten, zu denen IOX aktiv ist, abgefordert werden bzw. werden in diesem Zeitraum periodisch unaufgefordert ausgegeben. Dementsprechend werden sie auch unterschieden: a) Gesamtreport Wird automatisch am Ende eines Tests ausgegeben. b) Intervallreport Wird in den Zeitintervallen periodisch ausgegeben, die mit dem Kommando SUMMARYTIME festgelegt wurden. (1.. n min.) c) Zwischenzeitliche Reports Werden dann ausgegeben, wenn man zwischen zwei Intervallreports das Kommando PRINTSUMMARY eingibt. Es werden dann alle Aktivitaeten angezeigt, die sich zwischen letzten Intervallreports und dem Zeitpunkt der Eingabe des PRINTSUMMARY- Kommandos ereignet haben. Format und Inhalt aller drei Aktivitaetsreports sind bis auf die erste Informationszeile gleich: Gesamtreports sind gekennzeichnet durch: A C C U M U L A T E D T O T A L S - - - - - - - - - - - - - - - - - Intervall- und zwischenzeitliche Reports geben als erste Zeile aus: IOX -- Summary of exerciser aktivity at dd-mmm-yy hh:mm:ss Der weitere Inhalt des Reports besteht aus folgender Information (im Beispiel laeuft der Test der Platteneinheit mit dem logischen Geraetenamen SY0:): . . 55 . TIME -- Run: 1 min. Elapsed: 2 min. Remaining: 3 min. SY0: -- 1.870 R/W-requests totaling 1.870 blocks with no errors ASTs executed: 1.871 Idle-loop iterations: 1.800 . . . Die Kommandos, die die Ausgabe von Aktivitaetsreports steuern, sind: LOGFILE PRINTSUMMARY SPY SUMMARYTIME 3.2.4.2. Fehlerreports ---------------------- Fehlerreports werden ausgegeben, um aufgetretene E/A-Fehler oder Datenvergleichsfehler mitzuteilen. Dementsprechend werden diese beiden Arten von Fehlerreports unterschieden. Die Festlegung, ob Fehlerreports ausgegeben werden oder nicht, wird mit dem Kommando REPORTERRORS getroffen. Datenvergleichsfehler --------------------- Bei auftretenden Datenvergleichsfehler wird die eigentliche E/A- Operation erfolgreich beendet. Es wird beim Vergleichen der gelesenen Daten mit den vorher geschriebenen Daten festgestellt, dass Unterschiede bestehen. Die Mitteilung hat folgendes Format: IOX -- ddnn: data compare error at block xxxx (decimal) xxxx (octal) Good data: nnnnnn Bad date: nnnnnn Word position: n (decimal) n (octal) Buffer contained xxx. additional errors Der Report enthaelt Informationen zu: - Geraeteeinheit, auf der der Vergleichsfehler festgestellt wurde (ddnn:) - Startblock, bei dem der Fehler festgestellt wurde (dezimale und oktale Blocknummer) - urspruenglich geschriebene Daten (Good data) - gelesene Daten (Bad data) - Position des ersten Wortes im Testpuffer, bei dem der Vergleichsfehler festgestellt wurde (Word position) - Anzahl weiterer Vergleichsfehler, die beim Vergleich aller Worte im Testpuffer aufgetreten sind. E/A-Fehlerreports ----------------- E/A-Fehlerreports werden ausgegeben, wenn die eigentlichen E/A- Operationen nicht erfolgreich beendet wurden. Es wird ein entsprechender Fehlercode ausgegeben. Moegliche Fehlercods sind: IE.ABO Operation abgebrochen 56 IE.BBE physisch defekter Block IE.DAO Datenueberlauf IE.DNR Geraet nicht bereit IE.EOT Bandende erreicht IE.FHE schwerwiegender Geraetefehler IE.OFL Geraet Off-Line IE.PRI Schutzrechtsverletzung IE.VER unkorrigierbarer Fehler IE.WCK Schreibprueffehler IE.WLK Schreibschutzfehler N/A unerwarteter Fehler Aufbau und Inhalt der den Fehlercodes entsprechenden Fehlernach- richten sind in Abschnitt 3.5. dargestellt. 3.3. Kommandobeschreibung ------------------------- Im folgenden Abschnitt werden alle von IOX akzeptierten Kommandos in alphabetischer Reihenfolge dargestellt und naeher erlaeutert. Die Beschreibung jedes Kommandos beinhaltet: - Art des Kommandos (Funktions-, Steuer-, Anzeige- oder Parame- terkommando) - alle gueltigen Formate des Kommandos - Beschreibung der zulaessigen Kommandoschalter - Einschraenkungen in bezug auf die Verwendbarkeit bei einzelnen Operationsmodi (wenn nichts angegeben ist, ist das Kommando im Kommando- und im interaktiven Modus verwendbar) - Geraete- und Testarten, auf die das Kommando anwendbar ist - Standardwerte fuer Kommandoschalter (wenn vorhanden) Kommandos koennen vollstaendig in Gross- oder in Kleinbuchstaben oder gemischt eingegeben werden. Die Verkuerzung der Kommandos ist bis auf das jeweils dargestellte Minimum an einzugebenden Zeichen moeglich. Die Mustersyntax der Kommandos ist in Grossbuchstaben dargestellt. Kleinbuchstaben in den Musterkommandos stellen Kommandoelemente dar, die vom Bediener durch konkrete Werte (alphanumerische Zeichen) zu belegen sind. Alle numerischen Schalter stellen dezimale Werte dar. 57 --------------------------------------------------------------- A[BORT] {[/ALL] } {[taskname]} --------------------------------------------------------------- 3.3.1. Taskabbruch ------------------ Funktion: Steuerkommando Formate : ABORT - Beendigung der Ausfuehrung von I/O-Tests und Tasks, die durch EXECUTE initiiert wurden. Diese Kommandoform ist nur im interaktiven Modus sinnvoll, da im Kommandomodus kein Test in Verarbeitung ist. ABORT /ALL - Im interaktiven Modus Abbruch aller durch EXECUTE initiierten Tasks und Entfernung der Tasks aus der Liste der auszufuehren- den Tasks. - Im Kommandomodus Entfernung aller durch EXECUTE initiierten Tasks aus der Liste der auszufuehrenden Tasks. ABORT taskname - Wie ABORT /ALL, wirkt aber nur auf die mit taskname bezeichnete Task. Das Abbrechen von Tasks, die an das Terminal gebunden sind und mit MCR-Kommando aktiviert wurden, ist mittels ABORT-Kommando des IOX nicht moeglich. 58 ---------------------------------------------------------------- BA[DBLOCKS] ddnn: [blocknumbers] ---------------------------------------------------------------- 3.3.2. Festlegen/Anzeigen fehlerhafter Bloecke ---------------------------------------------- Funktion: . Geraeteabhaengiges Parameterkommando . Anzeigekommando BADBLOCKS ermoeglicht das Ausschliessen von defekten Plattenbloecken (mit dem Systemhilfsprogramm BAD loka- lisiert) vom Test bzw. das Anzeigen von Bloecken, die als defekt definiert wurden. BADBLOCKS findet nur An- wendung fuer NFS-Platten. Formate : . BADBLOCKS als Parameterkommando BADBLOCKS wirkt bei Angaben von Blocknummern als Para- meterkommando. Es werden "Bad Blocks" fuer den Daten- traeger auf dem angegebenen Geraet festgelegt. Die Angabe der Blocknummern erfolgt in 2 Formaten: a) einzeln durch Kommas getrennt: n1,n2,n3,n4...,nn b) Zusammenhaengender Bereich, fuer die die jeweils niedrigste und die Anzahl der defekten Bloecke durch ":" getrennt anzugeben ist: n:m,n1:m1,...,nn:mn Die Kombination beider Formen ist moeglich. Beispiel: IOX>BADBLOCKS DK1: 3:3,10:4,99,100:50,51 . BADBLOCKS als Anzeigekommando Bei fehlender Angabe der Blocknummer wirkt das Kommando als Anzeigekommando. Es wird die Liste der als fehler- haft geltenden Bloecke (wie im Parameterkommando fest- gelegt) fuer den Datentraeger auf dem angegebenen Geraet angezeigt. Die Bloecke werden immer als Bereiche von zusammenhaengenden Bloecken angezeigt (niedrigste Blocknummer:Blockanzahl). Beispiel (bezogen auf o.a. Parameterkommando): >BADBLOCKS DK1: >0003:005 >0010:004 >0099:051 >0151:001 59 ----------------------------------------------------------------- [BU]FFERSIZE buffersize ----------------------------------------------------------------- 3.3.3. Festlegen der Puffergroesse ---------------------------------- Funktion: Mit BUFFERSIZE als eigenstaendiges Parameterkommando kann die Standardpuffergroesse fuer alle Lese/Schreib- operationen festgelegt werden. Die Festlegung dieser Groesse erfolgt vor der Auswahl von Geraeten zum Testen. BUFFERSIZE ist nur im Kommandomodus gueltig. Die mit BUFFERSIZE festgelegte Puffergroesse kann mit Werten in den Kommandozeilen von SELECT und VERIFY veraendert werden (jedoch ist nur eine Verringerung der Puffergroesse moeglich). Der mit BUFFERSIZE festgelegte Standardpuffer wird beim Test von NFS-Platten und Magnetbaendern verwendet. Beim Testen von FM16-D-Platten wird immer ein Puffer von 512. Bytes verwendet. Bei Nichtverwendung von BUFFERSIZE wird der Standard- puffer von IOX mit 1024. Bytes fuer NFS-Datentraeger festgelegt. Format: BUFFERSIZE nnnn. Die mit nnnn. angegebene Groesse wird auf einen Wert bis zur naechsten durch 4 teilbaren Groesse aufgerundet. Hinweis: Verwendet man das Muster 0 (PATTERN 0 - Randomdaten- muster) zum Datenvergleich, ist die Puffergroesse mit max. 3400 anzugeben, da sonst unvorhersehbare Vergleichsfehler auftreten koennen. 60 ---------------------------------------------------------------- COM[PAREDATA] {Y[ES]} {N[O] } ---------------------------------------------------------------- 3.3.4. Datenvergleich --------------------- Funktion: COMPAREDATA ist ein geraeteabhaengiges Parameterkom- mando. Es wirkt sich auf Geraetetests aus, die mit den Kommandos FM16-D und SELECT ausgewaehlt werden. COMPAREDATA als eigenstaendiges Kommando legt einen Standardwert fuer diese Tests fest. Mit der Angabe von COMPAREDATA in FM16-D- und SELECT- Kommandos kann dieser Standard fuer einzelne Geraete korrigiert werden. Formate: COMPAREDATA YES aktiviert den Vergleich von Datenmustern und erzeugt Fehlerreports bei Nichtuebereinstimmung von geschriebe- nen und gelesenen Daten. COMPAREDATA NO unterdrueckt diese Aktivitaeten. COMPAREDATA YES ist Standard. 61 ---------------------------------------------------------------- CONF[IGURE] [ddnn:[=type]] ... ---------------------------------------------------------------- 3.3.5. Festlegen/Anzeigen der Testkonfiguration ----------------------------------------------- Funktion: Allgemeines Parameterkommando Anzeigekommando Mit CONFIGURE als Parameterkommando werden Geraete der aktuellen Testkonfiguration hinzugefuegt. Mit CONFIGURE als Anzeigekommando (ohne Angabe von Geraetebezeichnung) kann die aktuele Geraetekonfigura- tion auf dem Bedienterminal angezeigt werden. Die Voraussetzung dafuer, dass ein Geraet mit VERIFY, SELECT oder FM16-D fuer den Test ausgewaehlt werden kann, ist, dass es sich in der Testkonfiguration be- findet. Prinzipiell befinden sich von allen vom System unterstuetzten Platten- und Magnetbandgeraeten diejeni- gen mit der Geraetenummer "0" in der Grundkonfiguration von IOX. Sie brauchen nicht gesondert konfiguriert zu werden. Formate: . CONFIGURE ddnn:[=type] (Parameterkommando) ddnn: Geraetemnemonik fuer das Geraet, das in die Testkonfi- guration aufgenommen werden soll (auch logische Ge- raete, die mit MCR ASN-Kommando physischen Geraeten zugeordnet wurden, sind angebbar). type: Geraetetyp - moeglich ist die Angabe von: DISK - Plattengeraete TAPE - Bandgeraet Fuer den Geraetetyp gelten folgende Standards: - Fuer Geraetetypen, die von IOX als Plattengeraete erkannt werden: DISK (wenn bereits ein Geraet mit gleicher Geraetemnemonik in der Konfiguration ist, z.B DK1: ist DISK, weil DK0: als Platte in der Grund- konfiguration vorhanden ist) - Analoges gilt fuer Geraetetypen, die von IOX als Bandgeraete erkannt werden (z.B. MT1:) Der Versuch, Geraete mit TAPE zu konfigurieren, deren "erstes" Geraet vom Typ DISK ist, fuehrt zu Fehlern (analog DISK-TAPE) mit folgender Ausschrift: IOX - ddnn: specified device typ is inconsistent - Fuer Geraete, deren Mnemoniks dem System noch nicht bekannt sind, wird standardmaessig der Typ DISK angenommen. 62 . CONFIGURE (Anzeigekommando) Beispiel: MCR> ASN MT1:=MQ MCR> ASN DK2:=DT0: IOX> CONFIGURE DISKS: DK0:, DR0:, DM0:, DY0: TAPES: MT0: IOX> CONFIGURE MQ:=TAPE,DK1:, DT: IOX -- DT0: device type not specified, defaulting to 'DISK' IOX> CONFIGURE DISKS: DK0:, DR0:, DK1:, DM0:, DY0:, DT0: TAPES: MT0:, MQ0: 63 ---------------------------------------------------------------- CTRL/C ---------------------------------------------------------------- 3.3.6. Steuerungsuebergabe -------------------------- Funktion: Steuerkommando - CTRL/C im Kommandomodus und im interaktiven Modus bewirkt die Uebergabe der Steuerung an MCR fuer eine Kommandozeile. - Die Wirkung von CTRL/C im Ausfuehrungsmodus haengt davon ab, wie das Parameterkommando CONTROL_C ange- geben wurde. Wenn CONTROL-C NO: CTRL/C wirkt im Ausfuehrungsmodus wie im Kommando- und im interaktiven Modus. Wenn CONTROL_C YES: Mit CTRL/C wird der Uebergang vom Ausfuehrungsmodus in den interaktiven Modus realisiert. 64 ---------------------------------------------------------------- CON[TROL_C] {Y[ES} {N[O]} ---------------------------------------------------------------- 3.3.7. Steuerungsuebergabe im interaktiven Modus ------------------------------------------------ Funktion: Parameterkommando Das Kommando legt fest, ob die Ausfuehrung der IOX- Tests unterbrechbar sein soll, d.h. ob ein Uebergang vom Ausfuehrungsmodus in den interaktiven Modus moeg- lich sein soll. Die Angabe des Parameterkommandos hat nur Auswirkungen auf den Gebrauch der CTRL/C-Eingabe im Ausfuehrungsmodus. Im Kommando- und im interaktiven Modus ist die Eingabe von CTRL/C unbeeinflussbar und identisch (s. CTRL/C). Formate: CONTROL_C YES: Im Ausfuehrungsmodus wird von IOX nur CTRC/C als Ein- gabe akzeptiert. Jede andere Eingabe bewirkt die Aus- gabe der Fehlermitteilung: IOX -- Only ^C allowed Bei Eingabe von CTRL/C wird in den Kommandomodus einge- treten. Man erhaelt die Programmeldung "IOX>", und die Eingabe von weiteren IOX-Kommandos ist moeglich. CONTROL_C NO: Die Eingabe von CTRL/C im Ausfuehrungsmodus bewirkt die Ausgabe der Meldungen "MCR>" oder ">" bei Eingabe von . Die Eingabe von MCR-Kommandos kann erfolgen. Die Unterbrechung des IOX-Tests zur Eingabe von weiteren Kommandos ist nicht moeglich. Der Standardwert fuer CONTROL_C wird von IOX mit YES festgelegt. 65 ---------------------------------------------------------------- DES[ELECT] ddnn: ---------------------------------------------------------------- 3.3.8. Ausschluss eines Geraetes vom Test ----------------------------------------- Funktion: Funktionskommando Mit DESELECT koennen Geraete, die mit den Kommandos FM16-D, SELECT oder VERIFY zum Test ausgewaehlt wur- den, davon wieder ausgeschlossen werden. Format: DES[ELECT] ddnn: ddnn: Spezifikation des gewuenschten Geraetes Arbeitsweise: Wird das Kommando im Kommandomodus gegeben, so wird das Geraet aus der Liste der zu testenden Geraete ge- strichen (zu diesem Zeitpunkt sind keine Tests in Abarbeitung). Gibt man DESELECT im interaktiven Modus (Tests sind in Verarbeitung) ein, wird der Test fuer das angegebene Geraet abgebrochen und das Geraet aus der Liste der zu testenden Geraete gestrichen. Hierbei wird folgendermassen verfahren: - Bei NFS-Datentraegern: . Beenden der laufenden E/A-Operation . Loeschen der Liste defekter Bloecke (nur bei Platten) . Freigeben des Pufferbereiches . Freigeben des Geraetes durch IOX - Bei FM16-D-Datentraegern: . Beenden der laufenden E/A-Operation . Schliessen und Loeschen der temporaeren Dateien . Freigeben des Pufferbereiches DESELECT entfernt das Geraet nicht aus der Testkonfiguration. 66 ---------------------------------------------------------------- ER[RORLIMIT] n ---------------------------------------------------------------- 3.3.9. Festlegen des Fehlerlimits --------------------------------- Funktion: Geraetebezogens Parameterkommando Mit der Angabe von "n" wird festgelegt, wieviele Fehler zwischen zwei Intervallreports durch IOX ak- zeptiert werden, ehe das Geraet vom weiteren Test ausgeschlossen wird. ERRORLIMIT als eigenstaendiges Kommando legt die zulaessige Fehlerzahl fuer alle in den Test einbezogenen Geraete als Standardwert fest. Die Angabe von ERRORLIMIT innerhalb der Kommandozeilen von FM16-D, SELECT, VERIFY ermoeglicht die Aenderung dieses Wertes fuer ein spezielles Geraet. Der Standardwert, der von IOX angenommen wird, ist 10. 67 ---------------------------------------------------------------- EXE[CUTE] taskname kommandozeile ---------------------------------------------------------------- 3.3.10. Parallele Taskbearbeitung --------------------------------- Funktion: Funktionskommando Man verwendet EXECUTE, um beliebige andere Tasks (Systemtasks oder nutzergeschriebene) parallel zur Abarbeitung von IOX zu aktivieren. Das Betriebssystem muss die Exekutiveleistung SPWN$ (Mutter-Tochterbeziehung von Tasks) unterstuetzen. Die Tasks, die man mit EXECUTE aktiviert, muessen in- stalliert sein. Gibt man das EXECUTE-Kommando im Kom- mandomodus, so reiht IOX diese Task in eine Warte- schlange ein. Die Abarabeitung beginnt, wenn das START-Kommando gegeben wird und IOX in den Ausfueh- rungsmodus eintritt. Gibt man EXECUTE im interaktiven Modus ein, so laeuft die Task unmittelbar nach Kommandoeingabe an. Format: EXE[CUTE] taskname kommandozeile... taskname - Name, unter dem die Task im System installiert ist kommandozeile - Angabe von Parametern bzw. Schal- tern entsprechend der Syntax, die das entsprechende Programm verlangt Beispiel: IOX>EXE ... BAD #DK0:/LI Mit diesem Kommando wird die Auflistung defekter Bloecke mittels BAD fuer das Geraet DK0: parallel zu den IOX-Testroutinen aktiviert. Man kann die ausgegebenen Bloecke dann in die Liste der defekten Bloecke von IOX eintragen, um diese Bloecke von IOX- Tests auszuschliessen. Die Angabe von "#" ist bei allen Utilities notwendig. Wird dieses Symbol weggelassen (wie z.B. bei PIP oder VFY sonst ueblich), so greifen diese Programme grund- saetzlich auf SY: zu, unabhaengig davon, welches Ge- raet angegeben wurde. 68 ---------------------------------------------------------------- EXI[T] ---------------------------------------------------------------- 3.3.11. Beendigung der Arbeit von IOX ------------------------------------- Funktion: Steuerkommando Die Eingabe von EXIT beendet die Arbeit von IOX. Die Steuerung wird an die Exekutive des Betriebssystems uebergeben. 69 ---------------------------------------------------------------- F[M16-D] dduu: [kommando=schalter] ---------------------------------------------------------------- 3.3.12. Plattentest ------------------- Funktion: Funktionskommando Eine eingegliederte FM16-D-Platte wird zum Test ausge- waehlt. Der Inhalt der Platte bleibt erhalten. Der Test erfolgt mit temporaer erzeugten Dateien, die mit Been- digung des Tests geloescht werden. Das Kommando, im Kommandomodus gegeben, bewirkt, dass das Geraet in die Liste der zu testenden Geraete ein- getragen wird. Der eigentliche Test laeuft mit Eintritt in den Ausfuehrungsmodus (mittels START-Kommando) an. Im interaktiven Modus beginnt IOX sofort nach Eingabe des Kommandos mit dem Test. Format: F[M16-D] dduu: [kommando=schalter]... dduu: - Geraetespezifikation fuer das Geraet, das ausgewaehlt wird. kommando=schalter - Angabe folgender Parameterkommandos ist moeglich: COMPAREDATA ERRORLIMIT INTERLEAVE RANDOM TEMPORARYFILE Mit diesen Parameterkommandos lassen sich spezielle Testparameter fuer das ausgewaehlte Geraet neu festlegen. Hat man sie einmal ausgewaehlt, kann man sie nicht mehr veraendern, ohne das Geraet mit DESELECT vorher wieder zu streichen. Werden keine Parameterkom- mandos innerhalb der FM16-D-Kommandozeile angegeben, wird das Geraet mit den momentan festgelegten Standard- parametern getestet. Werden mehrere Kommandos in einer Zeile angegeben, so sind sie durch Leerzeichen voneinander zu trennen. Beispiel: IOX>FM16-D DK: COMPAREDATE=YES RANDOM=NO TEMPORARYFILE=600 DK0: Wird zum E/A-Test ausgewaehlt. IOX vergleicht geschriebene mit gelesenen Daten. Die Bloecke werden sequentiell verarbeitet. Es wird eine Arbeitsdatei von 600 Bloecken temporaer erzeugt und verwendet. 70 ---------------------------------------------------------------- H[ELP] ---------------------------------------------------------------- 3.3.13. Kommandohilfe --------------------- Man verwendet das HELP-Kommando, um eine Liste der IOX-Kommandos auf dem Terminal zu erhalten. 71 ---------------------------------------------------------------- IN[TERLEAVE] ---------------------------------------------------------------- 3.3.14. Uebergehen von Bloecken ------------------------------- Funktion: Geraeteabhaengiges Parameterkommando Mit dem Kommando wird festgelegt, wieviel Bloecke uebergangen werden sollen, bevor IOX den naechsten Datenpuffer schreibt. Das Kommando wirkt nur bei sequentiellem Testen (wenn RANDOM NO gesetzt wurde). Wird INTERLEAVE ist als eigenstaendiges Kommando angegeben, legt man damit den Faktor fuer alle zu testenden Geraete fest. Man kann diesen Standard fuer einzelne Geraete veraendern, indem man das Kommando innerhalb der Kommandozeilen von FM16-D, SELECT oder VERIFY angibt. Format: IN[TERLEAVE] n n - Anzahl der zu uebergebenden Bloecke Standardwert: 4 72 ---------------------------------------------------------------- L[OGFILE] {Y[ES]} {N[0] } ---------------------------------------------------------------- 3.3.15. Reportsteuerung ----------------------- Funktion: Allgemeines Parameterkommando Das Kommando steuert die Ausgaben von Aktivitaets- und Fehlerreports. Formate: LOGFILE NO - Alle Meldungen werden auf das Terminal ausgegeben LOGFILE YES - Alle Reports, ausser zusammengefasste Aktivitaetsreports, die man mit PRINTSUMMARY erzeugt, werden in einer Plattendatei (Standard UFD auf dem Geraet SY:) abgelegt. Diese Datei wird einmal durch IOX angelegt und danach nur noch erweitert. Der Name der Datei ist yyyyyy.LOG, wobei yyyyyy der Name der Task ist, unter dem IOX laeuft (z.B. IOX, vom Nutzer festgelegter Name oder Name des Terminals, z.B. TT1). Zusaetzlich zu den Aktivitaets- und Fehlerreports wer- den in die Datei folgende Informationen geschrieben. - Beginn des Tests, gefolgt von der Ausgabe des PARAMETERLIST-Kommandos - Ende des Tests - Zeitpunkt der Eroeffnung der Datei - Wann Eintragungen in die Datei beendet wurden - Abbruch eines Tests So beginnen alle Tests mit: IOX -- Datum Uhrzeit ....EXERCISER STARTED ... und enden mit: IOX -- Datum Uhrzeit ....EXERCISER TERMINATED ... Der Standardwert wird von IOX mit LOGFILE NO festgelegt. 73 ---------------------------------------------------------------- PAR[AMETERLIST] ---------------------------------------------------------------- 3.3.16. Informationsausgabe --------------------------- Funktion: Informationskommando Es werden alle den laufenden Test betreffenden wich- tigen Informationen auf dem Terminal ausgegeben. Es werden 4 Gruppen von Informationen ausgegeben: . geltende Standardparameter . IOX-Pufferstatistiken . Liste der durch FM16-D, VERIFY oder SELECT zum Testen ausgewaehlten Geraete (wenn der Test stattfand) . Liste der durch EXECUTE initiierten Tasks (wenn sie abgearbeitet wurden) Format: PAR[AMETERLIST] Im einzelnen werden folgende Informationen ausgegeben: - Fuer Standardparameter gelten die Werte fuer alle Geraete fuer folgende Parameter: BUFFERSIZE COMPAREDATA ERRORLIMIT CONTROL_C INTERLEAVE COGFILE PATTERN RANDOM RECORDS REPORTERRORS RUNTIME RETRIES SUMMARYTIME VOLUMECHECK TEMPORARYFILE WAIT WRITECHECK - Pufferstatistik in der Form: totalmemory: freeblock: freebytes: fragments totalmemory: Groesse des IOX-Puffers in Bytes freeblock: Groesse des groessten freien Blockes im IOX-Puffer in Bytes freebytes: Gesamtzahl aller im IOX-Puffer verfueg- baren Bytes fragments: Anzahl zusammenhaengender freier Bloecke im IOX-Puffer - Angaben zu Geraeten, die zum Test ausgewaehlt wurden (inklusive geraetespezifischer Testparameter). Die Ausgabe erfolgt in folgender Form: Device Mode Buffersize Filesize/Records/Range Parameters ------ ---- ---------- ---------------------- ---------- device mode buffersize filesize/records/range parameter 74 wobei: device - Geraetemnemonik eines zum Test ausgewaehl- ten Geraetes ist z.B. DKO: mode - Modus, der dem zu testenden Geraet zuge- ordnet wurde: VFY SEL F16 filesize - temporaere Dateigroesse (in Bloecken) bei FM16-D records - Satzzahl bei Testen mit SELECT (Magnetbaender) range - Bereich der Bloecke (Blocknummern von - bis) bei Testen mit VERIFY fuer NFS-Platten buffersize - Puffergroesse bei Lesen/Schreiben Diese Groesse kann fuer Magnetbaender, NFS- Platten und Magnetbandkassetten angegeben werden. Fuer FM16-D-Platten wird eine feste Groesse von 512. Bytes (1 Plattenblock) verwendet. parameters - Geraetespezifische Parameter Fuer Parameter, die mit einem Wert zu bele- gen sind, wird dieser angegeben (z.B. ERR=10, wenn ERRORLIMIT 10 spezifiziert wurde). Fuer Parameter, die mit YES oder NO angegeben werden, wird die Kurzform des Parameters ausgegeben, wenn der Parameter mit YES spezifiziert wurde (z.B. RAN, wenn RANDOM YES gegeben). - Angaben zu Tasks, die mit EXECUTE initiiert wurden, in folgender Form: Tasks Status Command Line ----- ------ --------------- task status kommandozeile wobei: task - Taskname der initiierten Task status - Momentaner Taskstatus bei der Verarbeitung: QUEUED - Warten in Schlange ACTIVE - aktiv SUCCES - erfolgreich beendet WARNING - beendet mit Warnungen ERROR - beendet mit Fehler SEVERE ERROR - wegen Fehler abgebrochen moeglich. kommandozeile - Kommandozeile, mit der die Task ini- tiiert wurde: z.B. DK0:/LI, wenn BAD mit Kommando EXECUTE ...BAD #DK0:/LI initiiert wurde. 75 ---------------------------------------------------------------- PAT[TERN] [n] ---------------------------------------------------------------- 3.3.17. Festlegen/Anzeigen von Testmustern ------------------------------------------ Funktion: Allgemeines Parameterkommando (mit Argument) bzw. Informationskommando (ohne Argument) Mit dem Parameterkommando wird das Datenmuster, das zum Testen verwendet wird, festgelegt. Mit dem Informa- tionskommando werden alle verfuegbaren Muster (0 - 12) angezeigt und das momentan verwendete mit einem "*" gekennzeichnet. Formate: PATTERN n (n = 0 ... 12) PATTERN Beispiel: IOX> PATTERN 3 IOX> PATTERN 0 = Random Data 1 = 000 000, 000 000 2 = 177 777, 177 777 3 = 125 252, 052 525 * 4 = 165 555, 133 333 5 = 163 126, 163 126 6 = 055 555, 155 555 7 = 022 222, 122 222 8 = 111 111, 111 111 9 = 007 417, 007 417 10 = 021 042, 021 042 11 = 104 210, 104 210 12 = 052 652, 052 652 Muster 0 (Random Data - Zufallsdaten) ist das Standardmuster fuer IOX. 76 ---------------------------------------------------------------- PRI[NTSUMMARY] ---------------------------------------------------------------- 3.3.18. Zwischenzeitliche Reportausgabe --------------------------------------- Funktion: Informationskommando, nur im interaktiven Modus gueltig Bei Eingabe des PRINTSUMMARY-Kommandos werden zwischen- zeitliche Fehler- und Aktivitaetsreports ausgegeben. Diese Reports haben den gleichen Aufbau wie die zyklisch erzeugten Intervallreports. Die ausgegebenen Reports beziehen sich inhaltlich auf den Zeitraum zwischen Ausgabe des letzten Intervallreports und dem Zeitpunkt, zu dem PRINTSUMMARY gegeben wurde. Sie werden immer auf dem Terminal ausgegeben, auch wenn eine LOG-Datei verwendet wird (s. Pkt. 3.2.4.). Format: PRI[NTSUMMARY] (ohne Argument) 77 ---------------------------------------------------------------- PRO[CEED] ---------------------------------------------------------------- 3.3.19. Fortsetzungskommando ---------------------------- Funktion: Steuerkommando, das nur im interaktiven Modus gueltig ist Mit PROCEED wird der interaktive Modus verlassen und in den Ausfuehrungsmodus eingetreten. IOX beendet seine Arbeit, wenn keine Tests mehr zur Verarbeitung anste- hen, ansonsten werden diese oder initiierte Tasks wei- ter abgearbeitet. Aktivitaets- und Fehlerreports werden wieder auf das Terminal ausgegeben, wenn LOGFILE NO gesetzt wurde (bei LOGFILE YES werden auch im interaktiven Modus diese Reports in die LOG-Datei geschrieben). PROCEED wird dann verwendet, wenn man erreichen will, dass nach Abarbeitung aller anstehenden Tests IOX abgebrochen werden soll bzw. wenn man die Ausgabe von Reports bei nichtaktivierter LOG-Datei fortsetzen moechte. Format: PRO[CEED] (ohne Argument) 78 ---------------------------------------------------------------- RAND[OM] {Y[ES]} {N[O] } ---------------------------------------------------------------- 3.3.20. Zugriffssteuerung ------------------------- Funktion: Geraeteabhaengiges Parameterkommando Man waehlt aus, ob beim Testen von Platten die Bloecke im Direktzugriff oder sequentiell verarbeitet werden. Format: RANDOM YES - es werden Blocknummern ueber den Zufallszahlengenerator von IOX erzeugt und diese direkt adressiert RANDOM NO - es werden sequentiell aufeinanderfol- gende Bloecke verarbeitet. Die Angabe von INTERLEAVE n bei Verwendung von RANDOM NO bewirkt, dass jeweils n Bloecke uebergangen werden. Beispiel: IOX>INT 8 IOX>RAND N Es wird der jeweils achte Block auf der Platte getestet. RANDOM kann als Parameterkommando innerhalb der Kommandozeilen VERIFY, SELECT und FM16-D verwendet werden, um den Standard, der fuer alle Platten gilt, zu korrigieren. Anfangsstandard ist RANDOM YES. 79 ---------------------------------------------------------------- RANG[E] ddnn: [minimum:maximum] ---------------------------------------------------------------- 3.3.21. Festlegen/Anzeigen des Testbereichs ------------------------------------------- Funktion: Geraeteabhaengiges Parameterkommando (mit Argument) oder Informationskommando (ohne Argument), wobei "ddnn:" immer anzugeben ist. Mit dem Parameterkommando wird fuer eine spezielle NFS- Platte der Bereich der zu testenden Bloecke (fuer Test mit VERIFY und SELECT) festgelegt. Mit dem Informationskommando wird der Bereich angezeigt. Format: RANG[E] ddnn: [minimum:maximum] Beispiel: IOX> RANG DK1: 300:500 Der Standardwert fuer RANGE ist plattentypabhaengig und ist Block 0. bis Block (max. Blocknummer - 60.), z.B. fuer DK: 0. --> 4740. Nur das Parameterkommando ist innerhalb der Kommandozeilen von SELECT bzw. VERIFY gueltig. Das Informationskommando ist nur alleinstehend zulaessig. 80 ---------------------------------------------------------------- REC[ORDS] n ---------------------------------------------------------------- 3.3.22. Blockanzahl ------------------- Funktion: Geraeteabhaengiges Parameterkommando Man definiert die Zahl der Saetze, die auf mit SELECT ausgewaehlten Magnetbaendern zu testen sind. Format: RECORDS n Als eigenstaendiges Kommando gilt der angegebene Wert fuer alle mit SELECT zu testenden Magnetbaender. Innerhalb einer SELECT-Kommandozeile gilt der Wert nur fuer eine spezielle Geraeteeinheit. n=0 bewirkt Testen bis zum Bandende. Es wird dann eine Bandendemeldung ausgegeben und die Einheit vom Test ausgeschlossen. Anfangsstandardwert fuer den Satzzaehler ist 1024. 81 ---------------------------------------------------------------- REP[ORTERRORS] {Y[ES]} {N[O] } ---------------------------------------------------------------- 3.3.23. Fehlerreportsteuerung ----------------------------- Funktion: Allgemeines Parameterkommando, das steuert, ob Fehlerreports erzeugt werden oder nicht (Inhalt und Aufbau sowie Arten der Fehlerreports s. Pkt. 3.2.4.2.) IOX gibt die Fehlerreports zur Ausgabe an ein Terminal mit folgenden Einschraenkungen: - Aktivitaetsreports werden von Fehlerreports nicht unterbrochen - bei aktivierter LOG-Datei werden Fehlerreports in dieser abgelegt - im interaktiven Modus werden keine Fehlerreports auf Terminal ausgegeben Format: REPORTERRORS YES - Es werden Fehlerreports ausgegeben REPORTERRORS NO - Es werden keine Fehlerreports ausgegeben Anfangsstandard ist REPORTERRORS YES. 82 ---------------------------------------------------------------- RES[TART] ---------------------------------------------------------------- 3.3.24. Restartkommando ----------------------- Funktion: Steuerkommando Das Kommando ist nur im Kommandomodus gueltig. Mit RESTART wird IOX in den Anfangsstatus versetzt, indem folgende Funktionen ausgefuehrt werden: - Freigabe aller bis dahin zum Test ausgewaehlten Geraete - Ruecksetzen aller Parameter auf ihre Standardwerte - Entfernen aller bis dahin mit EXECUTE initiierten Tasks aus der Warteschlange - Entfernen aller Geraete aus der Testkonfiguration, die nicht zur Standardkonfiguration gehoeren Format: RES[TART] (ohne Argumente) 83 ---------------------------------------------------------------- RET[RIES] {Y[ES]} {N[O] } ---------------------------------------------------------------- 3.3.25. Wiederholungssteuerung ------------------------------ Funktion: Geraeteabhaengiges Parameterkommando zum Testen von NFS-Platten und Magnetbaendern Es wird die Wiederholung von Lese-/Schreibvorgaengen durch den Geraetedriver gesteuert Format: RETRIES YES - Die standardmaessigen Wiederholversuche des Drivers werden zur Fehlerbeseiti- gung genutzt. RETRIES NO - Es wird kein Wiederholversuch unter- nommen. Das Kommando kann als Parameterkommando in der Komman- dozeile des SELECT- bzw. VERIFY-Kommandos verwendet werden. Der Standardwert ist RETRIES YES. 84 ---------------------------------------------------------------- RUN[TIME] minutes ---------------------------------------------------------------- 3.3.26. Testdauer ----------------- Funktion: Allgemeines Parameterkommando Ist nur im Kommandomodus verwendbar. Es wird fuer alle zu testenden Geraete die Testdauer festgelegt (in Mi- nuten). Format: RUN[TIME] minutes minutes: Angabe der Testdauer in Minuten. Bei Angabe von 0 wird der Test solange fort- gefuehrt, bis mit IOX-ABORT oder MCR-ABORT abgebrochen wird. Anfangsstandardwert ist 5 Minuten. 85 ---------------------------------------------------------------- SELECT ddnn: [Kommandos=Werte] ---------------------------------------------------------------- 3.3.27. Geraeteauswahl zum Test ------------------------------- Funktion: Funktionskommando Mit SELECT werden Magnetbaender und NFS - Platten zum Testen ausgewaehlt. Der auf den Datentraegern befindliche Inhalt wird ueberschrieben. Das Geraet, das mit SELECT ausgewaehlt werden soll, muss sich bereits in der Testkonfiguration von IOX be- finden (entweder mit CONFIGURE eingegliedert oder Ge- raet ist in der Grundkonfiguration von IOX). Innerhalb der Kommandzeile von SELECT kann eine Viel- zahl von Parameterkommandos angegeben werden (welche, ist abhaengig vom Geraetetyp), die die allgemein fuer IOX definierten allgemeinen Standardparameter aktuali- sieren. Gibt man keine geraetespezifischen Parameter an, so wird das Geraet mit den allgemeinen Parametern getestet. Ist ein Geraet mit SELECT und entsprechenden Parametern ausgewaehlt, lassen sich diese nicht mehr veraendern, ohne das Geraet vorher mit DESELECT auszugliedern. SELECT im Kommandomodus gegeben, bewirkt, dass das Ge- raet in eine Liste der zu testenden Geraete aufgenommen wird, die mit Eintritt in den Ausfuehrungsmodus (START- Kommando) sequentiell abgearbeitet wird. SELECT im interaktiven Modus bewirkt einen sofortigen Start der Testroutinen. Format: SELECT ddnn: [kommando=...] ddnn: Geraetemnemonik des zu testenden Geraetes Kommando: ein fuer den jeweiligen Geraetetyp guel- tiges Parameterkommando (Kommandos werden mit SPACE oder TAB voneinander getrennt) Folgende Parameterkommandos sind fuer die Geratetypen angebbar: NFS-Platten Magnetbaender BUFFERSIZE BUFFERSIZE COMPAREDATA ERRORLIMIT ERRORLIMIT RECORDS INTERLEAVE RETRIES RANDOM RANGE RETRIES VOLUMECHECK WRITECHECK 86 ---------------------------------------------------------------- SP[Y] [ddnn:] ---------------------------------------------------------------- 3.3.28. Anfordern von Statusinformationen ----------------------------------------- Funktion: Informationskommando Nur im interaktiven Modus angebbar. Es werden die Statusinformationen eines bestimmten (wenn Geraete- mnemonik angegeben) im Test befindlichen Geraetes oder aller (wenn keine Geraetemnemonik angegeben) im Test befindlichen Geraete auegeben. Format: SPY ddnn: ddnn: Geraetemnemonik des betreffenden Geraetes, dessen Statusinformationen ausgegeben werden sollen, kann weggelassen werden (s.o.). Beispiel: SPY DK0: DK0: -- TYPE=F16 VBN=305 queued FUNCTION=WRITE dabei sind: DK0: Geraetemnemonik TYPE: Geraetetesttyp - moeglich F16 (FM16-D- Datentraeger) SEL (SELECT) VFY (VERIFY) VBN: Virtuelle Blocknummer, die momentan verarbei- tet wird (bei NFS-Datentraegern, logische Blocknummer) I/O: E/A-Status, hier "AST queued" FUNCTION: E/A-Funktionstyp, READ oder WRITE moeglich SPY erzeugt immer Angaben auf Terminal, auch wenn LOG-Datei aktiviert wurde. 87 ---------------------------------------------------------------- ST[ART] ---------------------------------------------------------------- 3.3.29. Startkommando --------------------- Funktion: Steuerkommando Nur im Kommandomodus zulaessig. Bei Eingabe von START wird der Kommandomodus verlassen und in den Ausfueh- rungsmodus eingetreten; das Testen der ausgewaehlten Geraete wird gestartet, die interne IOX-Uhr laeuft an und alle mit EXECUTE initiierten Tasks. Fehler und Aktivitaetsreports (soweit zugelassen) werden erzeugt. Format: ST[ART] (ohne Argument) 88 ---------------------------------------------------------------- SU[MMARYTIME] minutes ---------------------------------------------------------------- 3.3.30. Festlegen des Reportintervalls -------------------------------------- Funktion: Allgemeines Parameterkommando Das Zeitintervall zwischen zwei Intervallreports wird definiert. Format: SU[MMARYTIME] minutes minutes - Zeitabstand in Minuten Standard : 1 Minute Bei Angabe von "0" werden Intervallreports unterdrueckt. 89 ---------------------------------------------------------------- T[EMPORARYFILE] filesize ---------------------------------------------------------------- 3.3.31. Festlegen der Arbeitsdateigroesse ----------------------------------------- Funktion: Geraeteabhaengiges Parameterkommando Es wird die Groesse einer Arbeitsdatei definiert, die beim Testen von FM16-D-Platten mit dem FM16-D-Kommando verwendet werden soll. Die Datei wird nach Beendigung des Tests wieder geloescht. Format: T[EMPORARYFILE] filesize filesize: Groesse der Arbeitsdatei in Bloecken Das Kommando kann eigenstaendig gegeben werden (gilt dann fuer alle Geraete, die mit FM16-D getestet werden) oder als Bestandteil einer FM16-D-Kommandozeile (gilt dann nur fuer ein spezielles Geraet). Anfangsstandard bei IOX ist 500. Bloecke. 90 ---------------------------------------------------------------- VE[RIFY] ddnn: [Kommandos=Werte] ---------------------------------------------------------------- 3.3.32. Vergleichslesen fuer Platten ------------------------------------ Funktion: Funktionskommando zur Auswahl von NFS-Platten. Plat- teninhalte werden nur gelesen. Es erfolgt kein Schreiben auf die Datentraeger. Der Inhalt der Platten bleibt erhalten. VERIFY im Kommandomodus gegeben, bewirkt, die Aufnahme des Geraetes in die Liste der zu testenden Geraete. Der Test selber laeuft erst mit Eintritt in den Kommando- modus (mittels START) an. Im interaktiven Modus laeuft der Test sofort an. Format: VE[RIFY] ddnn: [kommandos=...] ddnn: - Geraetemnemonik kommandos - ein fuer den Test von NFS-Platten gueltiges Parameterkommando. (Kommandos werden durch SPACE oder TAB voneinander getrennt) Gueltige Parameterkommandos sind: BUFFERSIZE ERRORLIMIT INTERLEAVE RANDOM RANGE RETRIES 91 ---------------------------------------------------------------- VO[LUMECHECK] {Y[ES]} {N[O] } ---------------------------------------------------------------- 3.3.33. Datentraegerpruefung fuer Platten ----------------------------------------- Funktion: Geraeteabhaengiges Parameterkommando Der Wert gilt nur fuer NFS-Plattentests mit SELECT. Das Kommando steuert, ob Platten, die als NFS-Platten mit SELECT ausgewaehlt wurden, auf das Vorhandensein eines "Home-Block" und damit einer FM16-D-Struktur ueberprueft werden sollen. Format: VOLUMECHECK YES - IOX laesst das Testen einer FM16-D- Platte mittels SELECT nicht zu VOLUMECHECK NO - IOX ignoriert die Struktur einer FM16-D-Platte und gibt keine Warnung aus, wenn eine solche mit SELECT getestet werden soll. VOLUMECHECK NO sollte nur dann verwendet werden, wenn man wirklich beabsichtigt, eine FM16-D-Platte zu ueberschreiben. VOLUMECHECK kann innerhalb der SELECT Kommandozeile verwendet werden. Anfangsstandard bei IOX ist VO Y. 92 ----------------------------------------------------------------- WA[IT] Y[ES] N[O] ---------------------------------------------------------------- 3.3.34. Wartekommando --------------------- Funktion: Allgemeines Parameterkommando Es wird bestimmt, ob IOX waehrend seiner Abarbeitung auf Ereignisflags warten soll, die das Ende von E/A- Operationen signalisieren. Das Kommando wirkt nicht auf Tasks, die mit EXECUTE initiiert wurden. Format: WAIT YES - Waehrend laufender E/A-Operation wird auf das betreffende Ereignisflag gewartet. In dieser Zeit kann die Exekutive andere Tasks ausfuehren. WAIT NO - Waehrend E/A-Operationen fuehrt IOX sog. "idle"-Schleifen (Warteschleifen) aus. Damit bindet IOX alle Systemressourcen. Der Zustand ist fuer den Programmdurch- satz unguenstig. Man sollte WAIT NO nur dann setzen, wenn man dies wirklich beab- sichtigt. Anfangsstandard ist WAIT YES. 93 ---------------------------------------------------------------- WR[ITECHECK] {Y[ES]} {N[O] } ---------------------------------------------------------------- 3.3.35. Schreibpruefung fuer Platten ------------------------------------ Funktion: Geraeteabhaengiges Parameterkommando Wird nur beim Testen von NFS-Platten mittels SELECT verwendet. Mit dem Kommando wird festgelegt, ob die Driver Schreibpruefungen auf NFS-Platten durchfuehren sollen oder nicht. Format: WR[ITECHECK] YES - Der Driver fuehrt die Funktion IO.WLC (write logical block with check) anstelle von IO.WLB (write logical block). Damit wird ein ver- gleichendes Lesen des vorher ge- schriebenen Datenworts im Puffer der Plattenanschlusssteuerung rea- lisiert. Bei auftretenden Fehlern und zugelassenen Schreibwiederho- lungen (RETRIES YES) wird der Vor- gang wiederholt, bis der Schreibvor- gang erfolgreich war bzw. der Wie- derholungszaehler des Drivers er- reicht ist. War RETRIES NO gesetzt bzw. ist der Wiederholungszaehler erreicht, wird eine Fehlermeldung ausgegeben. WR[ITECHECK] NO - Es wird keine Schreibpruefung durchgefuehrt. WRITECHECK kann in der Kommandozeile des SELECT-Kommandos angegeben werden und gilt dann nur fuer das spezielle Geraet. Standardwert ist WRITECHECK NO. 94 3.4. Durchgaengiges Beispiel einer IOX-Testprozedur --------------------------------------------------- Nachffolgend wird anhand eines Beispiel der prinzipielle Ablauf und die Verwendung ausgewaehlter IOX-Befehle dargestellt. Das Beispiel beinhaelt die Verwendung bzw. Angaben zu folgenden IOX- Komponenten: - nutzbaren IOX-Testverfahren - Setzen und Anzeigen von Testparametern - Aktivieren eines zusaetzlichen Systemhilfsprogrammes - Ausgabe von Aktivitaetsreports - Provozierung von Reaktionen auf fehlerhafte Kommandoeingaben Beispiel -------- >ALL DK2: } >MOU DK1:/OVR } 1.) >MOU DK3:/OVR } >IOX } IOX>CONF } 2.) Disks: DK0 DM0 DR0 DX0 DY0 SY0 } } Tapes: } 3.) MT0 } IOX>CONF DK1: DK2: DK3: MT1: } 4.) IOX>CONF } } Disks: } } DK0 DK1 DK2 DK3 DM0 DR0 DX0 DY0 SY0 } 5.) } Tapes: } } MT0 MT1 } IOX>PAR } } BUFFERSIZE=1024.) COMPAREDATA= YES } ERRORLIMIT= 10.) CONTROL_C= YES } 6.) INTERLEAVE= 4. LOGFILE= NO } PATTERN= 0. RANDOM= YES } RECORDS= 1024. REPORTERRORS= YES } RUNTIME= 5. RETRIES= YES } SUMMARYTIME= 1. VOLUMECHECK= YES } TEMPORARYFILE= 500. WAIT= YES } WRITECHECK= NO } } Buffer space usage= 5862.:4060.:4060.:1. } 95 IOX>PAT 0 = Random Data * } 1 = 000000,000000 } 2 = 177777,177777 } 3 = 125252,052525 } 4 = 165555,133333 } 5 = 163126,163126 } 7.) 6 = 055555,155555 } 7 = 022222,122222 } 8 = 111111,111111 } 9 = 007417,007417 } 10 = 021042,021042 } 11 = 104210,104210 } 12 = 052652,052652 } IOX>RUN 6 } IOX>SUM 3 } IOX>REPORTER N } 8.) IOX>BUF 2048 } IOX>PAT 5 } IOX>FM16 DK3: TEMP=600 } 9.) IOX>SEL MT1: REC=2000 } 10.) IOX>EXE ...VFY#DK1:/RC } 11.) IOX>PAT } 0 = Random Data } 1 = 000000,000000 } 2 = 177777,177777 } 3 = 125252,052525 } 4 = 165555,133333 } 5 = 163126,163126 * } 12.) 6 = 055555,155555 } 7 = 022222,122222 } 8 = 111111,111111 } 9 = 007417,007417 } 10 = 021042,021042 } 11 = 104210,104210 } 12 = 052652,052652 } IOX>PAR } 13.) } Device Mode Buffersize Filesize/Records/Range Parameters } ------ ---- ---------- ---------------------- ---------- } 14.) DK3: F16 512. 600. COM RET RAN } ERR=10. } MT1: SEL 2048. 2000. COM RET } ERR=10. } Task Status Command line } ---- ------ ------------ } 15.) BUFFERSIZE=1024. COMPAREDATA= YES } ERRORLIMIT= 10. CONTROL_C= YES } INTERLEAVE= 4. LOGFILE= NO } PATTERN= 0. RANDOM= YES } RECORDS= 1024. REPORTERRORS= YES } 16.) RUNTIME= 6. RETRIES= YES } SUMMARYTIME= 3. VOLUMECHECK= YES } TEMPORARYFILE= 500. WAIT= YES } WRITECHECK= NO } } Buffer space usage= 9958.:2044.:4416.:3. } 96 IOX>ST } 17.) READ CHECKING OF FILES ON DK1: - BLOCKING FACTOR 4.} 18.) IOX> -- Task "...VFY" is completed. Status=SUCCESS } 19.) IOX> -- Only ^C allowed } 20.) ^C } 21.) IOX>PRI } } IOX -- Summary of exerciser activity at 15-SEP-87 09:37:02 TIME -- Run:1 min. Elapsed:1 min. Remaining:5 min } 22.) DK3: -- 2,084. R/W requests totaling 2,048. blocks } with no errors } MT1: -- 524. R/W requests totaling 524. blocks } with no errors } AST's executed: 2,894. } Idle-loop iterations: 2,226. } IOX>VER DK2: ERR=50 } 23.) IOX>SPY } DK2: -- Mode=VFY LBN=4,497. I/O=AST queued Function=READ} DK3: -- Mode=F16 VBN=113. I/O=AST queued Function=READ } 24.) MT1: -- Mode=SEL LBN=343. I/O=AST queued Function=READ } IOX>PRO } 25.) IOX -- Summary of exerciser activity at 15-SEP-87 09:38:47 } TIME -- Run:3 min. Elapsed:3 min. Remaining:3 min } DK2: -- 923. R/W requests totaling 3,692. blocks } with 7 errors } DK3: -- 4,589. R/W requests totaling 4,589. blocks } with no errors } 26.) MT1: -- 1,374. R/W requests totaling 1,374.blocks } with no errors } Unreported error count: 7. } AST's executed: 2,894. } Idle-loop iterations: 5,015. } IOX -- Summary of exerciser activity at 15-SEP-87 09:41:47} TIME -- Run:3 min. Elapsed:6 min. Remaining:0 min } DK2: -- 2,116. R/W requests totaling 8,464. blocks } with 11 errors } DK3: -- 4,730. R/W requests totaling 4,730. blocks } with no errors } MT1: -- 1,601. R/W requests totaling 1,601. blocks } 26.) with no errors } Unreported error count: 11. } AST's executed: 2,894. } Idle-loop iterations: 2,226. } 97 A C C U M U L A T E D T O T A L S } - - - - - - - - - - - - - - - - - } TIME -- Run:6 min. Elapsed:6 min. Remaining:0 min } DK2: -- 3,039. R/W requests totaling 12,156. blocks } with 18 errors } DK3: -- 9,319. R/W requests totaling 9,319. blocks } with no errors } 27.) MT1: -- 2,975. R/W requests totaling 2,975.blocks } with no errors } AST's executed: 16,855. } Idle-loop iterations: 10,274. } IOX>EXI } 28.) 98 Erlaeuterungen zum Testablauf IOX --------------------------------- 1. Binden und Eingliedern der zum Test vorgesehenen Geraete. 2. Aufruf von IOX. 3. Eingabe des Kommandos CONFIGURE, um die Standards Testkonfi- guration anzeigen zu lassen. 4. Hinzufuegen von weiteren Geraeten zur Testkonfiguration. 5. Mit dem Kommando CONFIGURE wird ueberprueft, ob die vorher eingegebenen Geraete von IOX in die Testkonfiguration aufge- nommen wurden. 6. Auf das Kommando PARAMETERLIST werden die Standardparameter angezeigt. 7. Das Kommando PATTERN bringt die 13 moeglichen Muster zur An- zeige, die IOX beim Testen der Geraete auf den Datentraeger schreibt. Das zu dieser Zeit aktuelle Muster ist durch einen Stern gekennzeichnet. 8. Es werden geraeteunabhaengige Testparameter eingegeben. RUNTIME 6 setzt die Laufzeit des Tests auf 6 Minuten; SUMMARYTIME 3 bewirkt, dass IOX alle 3 Minuten Aktivitaets- reports ausgibt; REPORTERRORS N unterdrueckt Fehlerreports; BUFFERSIZE 2048 legt die Groesse des IOX-Testpuffers auf 2048. Bytes fest, und PATTERN 5 bestimmt, dass bei FM16-D-oder SELECT-Tests zu schreibende Muster. 9. Waehlt DK3: zum FM16-D-Test aus und setzt die Groesse der beim Testen verwendeten temporaeren Datei auf 600. Bloecke. 10. Waehlt MT1: zum SELECT Test aus; der Satzzaehler wird auf 2000. gesetzt.11. Durch das EXECUTE-Kommando wird die Task ...VFY in die Warteschlange auszufuehrender Tasks eingereiht. Die Task soll eine Lesepruefung auf DK1: durchfuehren. 12. Aufruf der Datenmuster wie bei 7. Das jetzt gueltige Muster ist das Muster 5. 13. Mit dem Kommando PARAMETERLIST werden noch einmal alle Para- meter aufgerufen. 14. Anzeige der zum Test ausgewaehlten Geraete, des Test- modus und der geraetespezifischen Parameter. 15. Anzeige der in die IOX-Warteschlange aufgenommenen Task und des fuer diese Task gueltigen Kommandos. 16. Anzeige der allgemeinen, zum Teil durch die Kommandos bei 8. geaenderten Parameter. 17. Start des IOX-Tests. IOX befindet sich dann im Ausfuehrungs- modus. 18. Ausschrift der parallel zum IOX Test laufenden Task...VFY. 19. Mitteilung von IOX, dass die Task ...VFY erfolgreich beendet wurde. 20. Es wurde versucht, eine Eingabe zu machen, ohne vorher durch ^C IOX in den interaktiven Modus zu bringen. 21. ^C setzt IOX in den interaktiven Modus. 22. Das Kommando PRINTSUMMARY fordert einen Report ueber die Aktivitaeten seit dem letzten Aktivitaetsreport bzw. seit Start des Tests bis zum Zeitpunkt, zu dem IOX dieses Kommando erhaelt. 23. DK2: wird zum VERIFY-Test ausgewaehlt. Die Anzahl der Fehler, die zwischen den Aktivitaetsreports akzeptiert werden, bevor IOX DK2: vom Test ausschliesst, wird auf 50 gesetzt. Der Test laeuft sofort nach Eingabe des Kommandos an. 24. Das Kommando SPY bringt alle im Test befindlichen Geraete, die auf ihnen laufenden Tasks, die virtuelle bzw. logische 99 Blocknummer des gerade getesteten Blockes und die gerade ausgefuehrte Funktion zur Anzeige. 25. PROCEED bringt IOX wieder in den Ausfuehrungsmodus, so dass die Aktivitaetsreports wieder auf dem Terminal ausgegeben werden. 26. Aktivitaetsreports 27. Nach Ablauf der im Kommando RUNTIME angegebenen Zeit beendet IOX alle Tests, gibt einen zusammengefassten Aktivitaets- report ueber die gesamte Zeit des Tests und kehrt in den Kommandomodus zurueck. 28. Mit dem Kommando EXIT verlaesst man IOX und tritt in MCR ein. 100 3.5. Fehlermitteilungen von IOX ------------------------------- IOX erzeugt bei auftretenden Fehlern entsprechende Nachrichten. Es werden zwei Kategorien von Fehlermitteilungen unterschieden: - Fehler mit Geraeteangaben - Fehler ohne Geraeteangaben Ferner wird zwischen Datenvergleichsfehlern und E/A-Fehlern unterschieden. (s. Pkt. 3.2.4.2.) Fehlernachrichten mit Geraeteangaben haben folgendes Format: taskname -- ddnn:message Fehlernachrichten ohne Geraeteangaben haben folgendes Format: taskname -- message dabei sind: taskname - Name, unter dem IOX momentan laeuft message - spezielle Fehlerinformation ddnn: - Geraetemnemonik fuer das Geraet, an dem der Fehler aufgetreten ist Im folgenden sind alle Fehlermitteilungen, die auftreten koennen, aufgelistet in folgender Form: IOX .......... Fehlermitteilung E: .......... Erlaeuterung N: .......... Nutzerreaktion zur Beseitigung des Fehlers Alle Fehlernachrichten verwenden den Buchstaben "x", um anzuzeigen, dass IOX diese Stellen mit den passenden Kommandos, tasknamen oder Werten ausfuellt. 3.5.1. Fehlernachrichten mit Geraeteangaben ------------------------------------------- Die Fehlernachrichten sind in alphabetischer Reihenfolge nach dem ersten Buchstaben, der der Geraetespezifikation folgt, aufgefuehrt. IOX -- ddnn: bad block, xxx (decimal) xxx (octal) Erklaerung: Der Fehlercode IE.BBE (bad block error) wurde IOX uebergeben. Nutzeraktion: Man verwende das BADBLOCKS Kommando, um die Num- mern der defekten Bloecke einzugeben (nur NFS- Platten). IOX -- ddnn: block number out of range E: Man hat das BADBLOCKS-Kommando verwendet, um Blocknummern in die Liste der defekten Bloecke einzugeben, die sich ausserhalb des Bereichs befinden, der mit RANGE festgelegt wurde. IOX -- ddnn: buffer size is greater than default E: Die Puffergroesse, die man im SELECT- oder VERIFY-Kommando an- gegeben hat, ist groesser als der aktuelle Standard, der durch 101 das BUFFERSIZE Kommando selbst gesetzt wurde. N: Entweder Vergroessern des Standardpuffers (durch BUFFERSIZE selbst) oder Verkleinern der Puffergroesse fuer das Geraet (Verwenden von PUFFERSIZE innerhalb der Kommandozeilen von SELECT oder VERIFY). IOX -- ddnn: data compare error at block xxx (decimal) xxx (octal) Bood data: xxxxx bad data: xxxxx Word position: xxx (decimal) xxx (octal) Buffer ccntained xx. additional errors E: IOX fand einen Fehler beim Vergleich der gelesenen mit den geschriebenen Daten. Dieser Fehlertext zeigt die erste Block- nummer, in der der Fehler beim Datentransfer auftrat, die richtigen und die falschen Daten, die Wortposition des ersten im Puffer gefundenen Fehlers und die Anzahl der weiteren aufgetretenen Fehler. N: Keine. Wenn der Fehler andauert, trage man die Blocknummer in die Liste der defekten Bloecke ueber BADBLOCKS ein (nur fuer NFS-Platten). IOX -- ddnn: data overrun at block xxx (decimal) xxx (octal) E: Der Code IO.DAO (Datenueberlauf) wurde IOX uebergeben. Die gegebene Satzgroesse war groesser als die gelesene Satzgroesse. Der Fehler erscheint nur bei Bandgeraeten. N: Keine IOX -- ddnn: device type not specified - defaulting to "DISK" E: Diese Nachricht teilt mit, dass man ein Geraet zur Testkon- figuration hinzugefuegt hat und das IOX standardmaessig als Platte konfiguriert. N: Keine IOX -- ddnn: does not support the x command E: Das Kommando x ist unvertraeglich mit der Geraetespezifikation ddnn:. N: Keine IOX -- ddnn: duplicate block number E: Die Blocknummer, die man mit BADBLOCKS eingegeben hat, ist schon in der Liste des Geraetes. N: Keine IOX -- ddnn: end of tape detected - unit now deselected E: Der Fehlercode IO.EOT wurde erhalten (Bandende erreicht). IOX versuchte, einen Satz nach der End-of-Tape Marke zu schreiben. N: Keine, es handelt sich nur um eine Information. IOX -- ddnn: error threshold exceeded - unit now deselected E: Die Zahl der Fehler, die mit ERRORLIMIT festgelegt wurde, ist erreicht worden. N: Keine 102 IOX -- ddnn: error while reading home block E: Wenn VOLUMECHECK zugelassen ist, tritt dieser auf, wenn IOX beim Versuch, den Home Block eines FM16-D-Datentraegers zu lesen, einen Fehler erkennt. N: Die ausgewaehlte Platte kann defekt sein. Wenn man gerade eine Arbeitsplatte testet, sollte man die Platte noch einmal mit VOLUMECHECK NO testen. IOX -- ddnn: failed to attach E: IOX kann diese Einheit nicht binden. N: Die Einheit kann durch einen anderen Nutzer montiert oder ge- bunden sein. Man versichere sich, dass die Platte fuer das Terminal, auf dem IOX laeuft, montiert und gebunden ist. IOX -- ddnn: failed to detach E: Ein Fehler tritt ein, waehrend IOX versucht, eine Einheit freizugeben, die vorher gebunden wurde. N: Keine. Moegliches Betriebssystem. IOX -- ddnn: Failed to open temporary file E: IOX kann nicht genug freie Blocke auf der Platte finden, um eine temporaere Datei anzulegen, die so gross ist, wie mit dem TEMPORARYFILE-Kommando festgelegt wurde. N: Spezifizieren einer kleineren temporaeren Datei, entweder durch Ruecksetzen der Standardgroesse durch TEMPORARYFILE selbst oder durch Verwendung von TEMPORARYFILE innerhalb des FM16-D-Kommandos, um den Standardwert fuer die TEMPORARYFILE- Groesse fuer jedes Geraet einzeln zu ueberschreiben. Wenn man den Anfangsstandard von 500 Bloecken verwendet und die Mitteilung erscheint, ist es notwendig, entsprechenden Platz auf der Platte zu schaffen. IOX -- ddnn: fatal hardware error - unit now deselected E: Der Fehlercode IE.FHE (fatal hardware error) wurde erbracht. N: Pruefen der Hardware. IOX -- ddnn: illegal range E: Der Bereich von Bloecken, der fuer das betreffende Geraet mit dem RANGE-Kommando angegeben wurde, liegt ausserhalb der Grenzen, die moeglich sind. N: Man verwende das RANGE-Kommando ohne Argument, um den Standardbereich der Platte zu pruefen, dann gibt man einen gueltigen Bereich von Bloecken an. IOX -- ddnn: invalid block number E: Die Blocknummer, die man mit dem BADBLOCKS-Kommando eingegeben hat, ist keine gueltige Nummer fuer dieses Geraet. N: Keine 103 IOX -- ddnn: I/O is unsatisfied at timeout - function: xxxx E: Wenn IOX die Verarbeitung stoppt, wartet es 5 Sekunden auf den Stop von E/A-Arbeiten. Wenn ein Magnetband das Zurueckspulen in dieser Zeit nicht beendet hat, kann diese Nachricht erscheinen. Die Funktion, die das Time Out bewirkt hat, ist xxxx. N: Keine IOX -- ddnn: I/O request aborted - unit now deselected E: Der Fehlercode IE.AB0 (Operation abgebrochen) wurde zurueck- gesendet. N: Keine IOX -- ddnn: is already configured E: Man versucht, ein Geraet mit dem CONFIGURE-Kommando einzuglie- dern, das bereits in der Testkonfiguration ist. N: Man nutze das CONFIGURE Kommando als Informationskommando, um zu pruefen, welche Geraete bereits konfiguriert sind. IOX -- ddnn: is already selected E: Man versucht, ein Geraet zum Test auszuwaehlen, das bereits zum Test ausgewaehlt ist. N: Man verwende das PARAMETERLIST-Kommando, um sich anzeigen zu lassen, welche Geraete alle bereits zum Test ausgewaehlt sind. IOX -- ddnn: is not configured E: Man hat ein Kommando gegeben, dass nur fuer ein konfiguriertes Geraet gueltig ist. N: Man verwende das CONFIGURE-Kommando, um das betreffende Geraet zu konfigurieren. IOX -- ddnn: is not mounted or allocated for NFS Operations E: Man hat ein Geraet mit SELECT oder VERIFY zum Test ausge- waehlt, das nicht ordnungsgemaess als NFS Datentraeger zum Testen montiert oder reserviert wurde. N: Man reserviere oder montiere das Geraet. IOX -- ddnn: is not ready - unit now deselected E: Der Fehlercode IE.DNR (Geraet nicht bereit) wurde erbracht. N: Man waehle das Geraet erneut aus. IOX -- ddnn: is not selected E: Man hat ein geraeteabhaengiges Parameterkommando (BADBLOCKS oder RANGE) gegeben, das nur nach Auswaehlen des Geraetes gueltig ist. N: Auswaehlen des Geraetes und Neueingabe des Kommandos. IOX -- ddnn: is offline E: Der Fehlercode IE.OFL (Geraet Off Line) wurde an IOX ueber- geben. Das Geraet wurde waehrend des Tests Off Line, oder es war off-line zu dem Zeitpunkt, als man versuchte, das Geraet fuer den Test auszuwaehlen. Wenn das Geraet waehrend des Tests 104 off-line wurde, haengt IOX den Zusatz "- unit now deselected" an die Fehlernachricht an. N: Absichern, dass das Geraet On Line ist. IOX -- ddnn: is write locked - unit now deselected E: Fehlercode IO.WLK (Geraet schreibgeschuetzt). Das Geraet ist schreibgeschuetzt. N: Man pruefe den Schreibschutzschalter am Geraet und den MCR Schreibschutzstatus. IOX -- ddnn: LUN assignment failure E: Das bedeutet, dass das Geraet ddnn: im System nicht physisch vorhanden ist. Es kann heissen, dass man die Zahl der Geraete, die IOX unterstuetzt, ueberschritten hat. Die Standardzahl ist 28 Geraete, das Maximum ist 246. N: Wenn das Geraet nicht physisch vorhanden ist, unternimmt man nichts. Wenn man die Zahl der Geraete, die IOX unterstuetzt, ueberschritten hat, veraendere man die Kommandodatei zum Taskbilden von IOX, IOX.CMD, um IOX zu erlauben, mehr Geraete zu unterstuetzen. IOX -- ddnn: privilege violation - unit now deselected E: Fehlercode IE.PRI (Schutzrechtsverletzung). Das Geraet ist nicht reserviert oder durch einen anderen Nutzer montiert. N: Man pruefe, wer der Eigentuemer des Geraetes ist. IOX -- ddnn: specified device type is inconsistent E: Man versucht, ein Geraet ddnn: als Bandgeraet zu konfigurie- ren, obwohl ein dd:Geraet bereits als Plattengeraet konfigu- riert wurde. Das gleiche trifft zu, wenn man dd versucht, als Platte zu konfigurieren, und ein anderes Geraet vom Typ dd ist schon als Bandgeraet konfiguriert. N: Man verwende CONFIGURE als Informationskommando, um die Ge- raete in der Testkonfiguration zu ueberpruefen. Man konfigu- riere die Einheit unter Verwendung einer anderen Geraete- mnemonic. IOX -- ddnn: unexpected error xx E: IOX erhielt einen Fehlercode, den es nicht verarbeiten kann. Der Fehlercode ist xx (octal). N: Keine IOX - ddnn: unexpected request to queue I/O - request aborted E: IOX erhielt einen AST von einem Geraet, nachdem IOX dieses Geraet bereits ausgegliedert hatte. N: Ueberpruefen des Geraetes IOX -- ddnn: unrecoverable error at block xx (decimal) xx (octal) E: Fehlercode IE.VER (nicht korrigierbarer Fehler). Dieser Feh- lercode zeigt einen Fehler an, der nicht zu korrigieren ist. N: Pruefen des Geraetes und des Datentraegers. 105 IOX -- ddnn: VOLUMECHECK failure. Unit contains a home block E: Die Einheit ist Datei-strukturiert, weil das Geraet einen Home Block enthaelt. Diese Fehlerausschrift wird durch SELECT erzeugt, wenn man versucht, einen FM16-D-Datentraeger auszu- waehlen und VOLUMECHECK erlaubt ist. N: IOX zerstoert den Inhalt und Aufbau auf den Datentraegern, die man mit SELECT zum Test auswaehlt. Wenn man das moechte, unterdrueckt man VOLUMECHECK (VO N) und waehlt die Einheit erneut aus. IOX -- ddnn: write check error at block xxx (decimal) xxx (octal) E: Fehlercode IE.WCK (Schreibpruef-Fehler). Die Operation Schreibpruefung brachte bei Block xxx Fehler. N: Keine 3.5.2. Fehlernachrichten ohne Geraeteangaben -------------------------------------------- Diese Fehlernachrichten sind in alphabetischer Reihenfolge anhand des ersten Buchstabens nach dem Tasknamen von IOX aufgefuehrt. IOX -- Indirect command file xxxxx syntax error E: Fehler in der Indirektkommandodatei N: Ueberpruefen der Indirektkommandodatei IOX -- Indirect command file nesting level exceeded E: IOX akzeptiert nur Kommandodateien mit einer Schachtelungs- tiefe von 1. N: Umschreiben der Kommandodateien, so dass die maximale Schach- telung 1 ist. IOX -- Aborting due to user command E: Man hat IOX durch Verwendung des MCR-ABORT-Kommandos abge- brochen. N: Neuaufrufen von IOX, wenn man das Testen fortsetzen will. IOX -- Execute command is not supported E: Man versucht, das EXECUTE-Kommando in einem System zu verwen- den, das das Task Spawning nicht unterstuetzt. N: Systemneugenerierung, wenn das EXECUTE-Kommando fuer das kor- rekte Testen der E/A-Geraete erforderlich ist. IOX -- Command input I/O error E: IOX hat beim Versuch, das Kommando vom Terminal einzulesen, einen Fehler entdeckt. N: Neueingabe des Kommandos. 106 IOX -- Command valid only in Command Mode E: Man versucht, ein Kommando einzugeben, das nicht eingegeben werden kann, solange ein E/A-Test in Abarbeitung ist. N: Entweder man bricht die Testabarbeitung ab, um das Kommando einzugeben, oder man wartet auf die Beendigung des Tests, um das Kommando einzugeben. IOX -- command valid only in Interactive Mode E: Man versucht, ein Kommando einzugeben, das nicht eingegeben werden kann, ohne dass IOX laeuft. N: Man gebe START ein und danach das Kommando erneut. IOX -- Command not unique E: Die Kommandoabkuerzung, die man gegeben hat, unterscheidet sich nicht eindeutig von einem anderen Kommando. N: Neueingabe des Kommandos mit einer laengeren Abkuerzung. IOX -- Failed to close log file. F.ERR= -x E: IOX kann die Log Datei im Nutzerbereich nicht schliessen. FCS bringt den Fehler "-x". N: Nachschlagen des E/A-Fehlercodes von FCS und Durchfuehren einer entsprechenden Aktion. IOX -- Failed to open indirect command file E: Die FCS Routine GCML bringt Fehler beim Eroeffnen der Indi- rektkommandodatei. N: Ueberpruefen, ob die Datei existiert und ob man sie richtig spezifiziert hat, dann die Datei erneut uebergeben. IOX -- Failed to open log file. F.ERR=-x E: IOX kann die Log Datei nicht eroeffnen. Es wird der FCS- Fehlercode "-x" erhalten. N: Die Platte kann entweder schreibgeschuetzt sein oder nicht genug. IOX -- Failed to open an existing log file. F.ERR= -x. E: IOX kann eine bereits existierende Log-Datei nicht eroeffnen. Der FCS Fehlercode "x" wird erhalten. N: Nachschlagen des entsprechenden FCS Fehlercodes und Unter- nehmen einer entsprechenden Aktion. IOX -- Failed to truncate/close log file. F.ERR=-.x E: IOX kann die Log-Datei nicht verkuerzen bzw. schliessen. Der FCS-Fehlercode ist "-x". N: Nachschlagen des FCS-Fehlercodes und Einleiten einer ent- sprechenden Aktion. IOX -- Fatal file system error. F.ERR= xxx PC+2= xxx E: IOX brach ab, weil ein Fehler dann eintrat als IOX ein Write oder Read ausgab. F.ERR ist der oktale Fehlercode im File Descriptor Block, der den Typ des Dateifehlers anzeigt. PC+2 ist die octale Position des Fehlers im IOX-Code. 107 N: Nachschlagen des Fehlercodes und Einleiten der entsprechenden Aktion. IOX -- Fatal system error. DSW= xxx PC+2= xxx E: IOX bricht sofort ab, weil eine Direktive, die IOX ausgegeben hat, zu Fehlern fuehrt. DSW ist das Direktivenstatuswort (octal). PC+2 ist die octale Position im IOX Code, an der der Fehler auftrat. N: Nachschlagen des FCS Fehlercodes in der Anleitung fuer den Programmierer, Teil 5 und Einleiten der entsprechenden Aktion. IOX -- Invalid pattern number E: Man hat versucht, eine Musternummer groesser 12 zu verwenden. Die gueltigen Argumente fuer PATTERN sind 0 bis 12. N: Eingabe einer gueltigen Musternummer. IOX -- Invalid taskname E: Der Taskname, den man im EXECUTE-Kommando angegeben hat, ist ungueltig. Die Task existiert nicht, oder der Name wurde un- korrekt eingegeben. N: Neueingabe des korrekten Tasknamens oder Ueberpruefen, ob die Task ueberhaupt existiert. IOX -- No activity remains - aborting E: Im Ausfuehrungsmodus ueberprueft IOX, ob noch irgendwelche Tests in Abarbeitung sind, oder irgendwelche Tasks im Inter- vall von einer Minute ausgefuehrt werden. Findet IOX keine Aktivitaeten mehr, beendet es sich selbst und erzeugt die Mit- teilung. Im interaktiven Modus bestimmt IOX, ob noch irgendwelche Tests in Arbeit sind, oder noch Tasks ausgefuehrt werden oder nicht, nur wenn das PROCEED eingegeben wird. Wenn keine Aktivitaet mehr festgestellt wird, erfolgt das gleiche wie im Kommando- modus. N: Keine IOX -- No activity to start E: Wenn man das START-Kommando eingibt und keine Geraete zum Test ausgewaehlt wurden und keine Tasks initiiert wurden, erscheint diese Mitteilung. N: Auswaehlen von Geraeten zum Testen und initiieren von Tasks mit dem EXECUTE-Kommando. IOX -- No buffer space available E: IOX hat keinen adaequaten Pufferbereich, um alle ausgewaehlten Geraete zu bedienen. N: Entweder schliesst man einige Geraete vom Test aus, oder man aktiviert IOX mit groesserem Increments erneut. IOX -- No such command - Type H for Help E: Man hat ein Kommando gegeben, das IOX nicht verstehen kann. N: Eingabe von H(Abkuerzung fuer HELP), das erzeugt eine Anzeige der Zusammenfassung aller IOX Kommandos. 108 IOX -- No tasks to abort E: Man versucht, Tasks mit dem ABORT-Kommando abzubrechen, ob- wohl gar keine Tasks mit EXECUTE-Kommando initiiert werden. N: Keine IOX -- Only CTRL/C allowed E: Man hat CCNTROL_C YES gesetzt, um zuzulassen, dass man IOX- Kommandos eingeben kann, waehrend Tests in Abarbeitung sind. Deshalb akzeptiert IOX nur CTRL/C im Ausfuehrungsmodus. N: Keine IOX -- Syntax error E: Die eingegebene Kommandozeile enthaelt syntaktische Fehler. N: Wenn notwendig, ueberpruefe man die Syntax der eingegebenen Kommandozeile. IOX -- Task never executed E: Die Task, die man versucht abzubrechen, ist gar nicht auf der Liste, die die durch EXECUTE initiierten enthaelt. N: Mit PARAMMTERLIST kann man die Liste der initiierten Task ueberpruefen. IOX -- Task "xxxxxx" is currently active E: Man versucht, eine Task zu aktivieren, die schon aktiv ist. Der Name der Task ist "xxxxxx". N: Keine IOX -- Task "xxxxxx" is completed, Status= nnnnnnn E: Die Task hat die Ausfuehrung normal beendet. Der Name der Task ist "xxxxxx". Es gibt vier Statusarten, die durch "nnnnnnn" repraesentiert werden: SUCCES, WARNING, ERROR und SEVERE ERROR. N: Keine IOX -- Task "xxxxxx" is not installed E: Die Task "xxxxxx" ist nicht installiert und kann nicht durch EXECUTE initiiert werden. N: Installieren der Task von einem privilegierten Terminal aus. IOX Task "xxxxxx" is unable to execute E: Die Task "xxxxxx" konnte nicht ausgefuehrt werden. N: Versuchen, die Task erneut auszufuehren. IOX -- Units are selected - command ignored E: Das BUFFERSIZE-Kommando ist nur dann gueltig, wenn keine Geraete zum Testen ausgewaehlt sind. 109 4. Testsystem fuer BVS-Geraete ------------------------------ 4.1. Einleitung --------------- Fuer den Funktionstest der Bildverarbeitungsperipherie unter Steuerung der Exekutive stehen Testprogramme bereit. Diese koennen im Rahmen der BVS-Inbetriebnahme aufgebaut werden. Sie stehen dem Anwender dann als nichtprivilegierte Tasks entweder im UFD [1,54] der Systemplatte oder auf der Systemzusatzplatte des Nutzers zur Verfuegung. 4.2. Beschreibung der Testprogramme ----------------------------------- Abgesehen von der Rollkugeleinheit ist fuer die BVS-Geraete cha- rakteristisch, dass sie aufgrund ihrer komplizierten Struktur zu ihrer Steuerung mehr geraetespezifische Parameter als ueblich erfordern. Daraus ergibt sich bei den einzelnen Funktionen eine groessere Anzahl von moeglichen Parameterkombinationen, deren Pruefung flexible Testprogramme notwendig macht. Fuer Bildspeicher, Displayprozessor und Grafiksteuerung sind Testprogramme entwickelt worden, die als Task aufgerufen werden und die die Eingabe eines Parametersatzes erwarten. Dieser Para- metersatz besitzt annaehernd die gleiche Struktur wie eine QIOW$- Anweisung, so dass die Bedienung der Testprogramme einfach und die Forderung nach groesstmoeglicher Flexibilitaet der Programme erfuellt ist. Das Testprogramm fuer die Rollkugeleinheit hingegen benoetigt keine Eingaben und ist grundlegend anders aufgebaut. Die Testprogramme fuer BVS-Driver werden mittels der Kommando- datei TST.CMD aus Objektdateien gebildet. Aus der folgenden Uebersicht ist zu ersehen, fuer welche Geraete die Testprogramme eingesetzt werden koennen: RMTST: Testprogramm fuer Bildspeicher (BSP): K 3567 und Gemeinsamen Speicher (GSP): K 3667 GDTST: Testprogramm fuer Grafiksteuerung (GST): Je nach der Anzahl der Bitebenen der geraeteinternen Speichermatrix kann GDTST in zwei verschiedenen Modifikationen gebildet werden. Die Kommandodatei enthaelt eine Frage nach der Anzahl der Bitebenen. Es sind die folgenden Modifikationen moeglich: fuer 8-Bit-GST: GST-Modelle K 7067.02 K 7067.12 K 7067.15 fuer 4-Bit-GST: GST-Modelle K 7067.01 K 7067.21 DDTST: Testprogramm fuer den an die Gerateanschlussteue- rungen ASIA und ASIE angeschlossenen Displaypro- zessor (DIP) K 2067 TBTST: Testprogramm fuer Rollkugeleinheit (RKE) K 7767 Mit Ausnahme von RMTST sind die Testprogramme jeweils fuer ein einziges Geraet vorgesehen. Liegen mehrere Geraete gleichen Typs vor, sind die zusaetzlichen Geraete mittels des Kommandos REDIRECT (RED) auf das erste umzuschalten. 145 4.2.1. Arbeitsweise ------------------- Nach dem Aufruf des Testprorammes als Task (RMTST, GDTST oder DDTST) erfolgt durch Ausschrift des Programmkennzeichens (RMT, GDT oder DDT) die Aufforderung, einen Parametersatz (maximale Laenge = 80 Zeichen) einzugeben. Der Parametersatz unterscheidet sich in den folgenden Punkten von einer QIOW$-Anweisung: - QIOW$ entfaellt - die Funktionen IO.RVB und IO.WVB setzen eine besondere Handhabung (z.B. MOUNT) voraus, die in den Testprogram- men nicht realisiert wird, und entfallen daher in diesen Programmen - die Funktion wird in der Form RLB, WLB, ATT usw. spezi- fiziert (kein "IO.") - bis zur Spitzklammer duerfen keine weiteren Parameter angegeben werden (Ausnahme bei RMTST) - eine Pufferadresse darf nicht spezifiziert werden. Als Pufferadresse wird intern die Adresse eines Puffers innerhalb des Testprogrammes eingesetzt - anstelle der Pufferadresse kann in den Programmen RMTST und GDTST bei Schreiboperationen eines der folgenden Testmuster spezifiziert werden: - WEISS Bild auf "weiss" geloescht - SCHWARZ Bild auf "schwarz" geloescht - GRAU Graukeil - KARO Karomuster - STREIFEN Streifenmuster Das Testmuster wird entsprechend der uebrigen gewaehl- ten Parameter in mehreren automatisch vom Testprogramm ausgeloesten E/A-Operationen uebertragen. Im Gegensatz dazu wird bei nichtspezifiziertem Testmuster eine ein- zelne E/A-Operation mit dem jeweils vorhandenen Inhalt des internen Puffers ausgefuehrt - als Pufferlaenge darf maximal 512 (bei GDTST und DDTST) bzw. 526 (bei RMTST) angegeben werden - setzt die zu testende Funktion das Vorhandensein von bestimmten Informationen im Puffer voraus, so sind diese nach der abschliessenden Spitzklammer und einem Leerzeichen als Trennzeichen zu spezifizieren (die einzelnen Informationen jeweils als Wort interpretiert und durch Komma voneinander getrennt). In diesem Fall muss innerhalb der Spitzklammern fuer jeden ausgelasse- nen Parameter ein Komma gesetzt werden, auch wenn innerhalb der Klammern keine weiteren Parameter folgen - Subfunktionen und andere mnemonische Parameter werden ohne Anfuehrungszeichen spezifiziert (z.B. LI anstelle von "LI) - das Spezifizieren von einzelnen Bytes ist nicht in jedem Fall moeglich (z.B. Subfunktion 'P in GDTST) Der ueber Terminal eingegebene Parametersatz wird in die einzel- nen Informationen zerlegt. Die Parameter werden ggf. konvertiert und in eine Muster-QIOW$-Anweisung bzw. den programminternen Puffer eingespeichert. Von alphanumerischen Parametern werden nur die ersten beiden Zeichen uebertragen. Nach Abarbeitung der QIOW$-Anweisung erfolgt die Ausgabe des E/A- Statusblockes und ggf. bei Leseoperationen die Ausgabe der einge- lesenen Daten. Handelte es sich bei der Funktion um eine Schreib- 146 operation mit einem spezifizierten Testmuster, so wird zwar bei jeder einzelnen der automatisch ausgeloesten E/A-Operationen der Rueckkehrcode auf Fehler geprueft, jedoch nur im Fehlerfall der Statusblock der zuletzt abgearbeiteten E/A-Operation ausgegeben. Danach wird das Testprogramm beendet. Bei der Ausgabe von eingelesenen Daten auf Terminal wird zur Erleichterung der Auswertung ein Zaehler hinzugefuegt, der i.a. mit dem Wert Null beginnt und der auch dann ausgegeben wird, wenn es sich bei den eingelesenen Daten um ein einziges Wort handelt. Nach der Abarbeitung der QIOW$-Anweisung und ggf. der Ausgabe der Ergebnisse auf Terminal wird die Eingabe des naechsten Parameter- satzes angefordert. Der Abarbeitungszyklus kann durch CTRL/Z verlassen werden. Ein selbstaendiges Verlassen des Testprogrammes ist in jedem Fall auf Fehler zurueckzufuehren. Das kann z.B. sein: - Fehler bei einer Schreiboperation mit spezifiziertem Testmuster - Funktion nicht zulaessig - fehlerhafte Eingabe 4.2.2. Testprogramm fuer Bildspeicher RMTST ------------------------------------------- Die Nummer des Bildspeichers wird nach der Funktion spezifiziert. In der folgenden Uebersicht sind die Funktionen und die zugehoe- rigen Eingabestrukturen dargestellt: steuerfkt,bspnr SEC,bspnr SEC,bspnr,,,,, EOF,bspnr,,,,, EOF,bspnr,,,,, STC,bspnr transferfkt,bspnr,,,,,<,lng512,,,blocknr> transferfkt,bspnr,,,,,<,lng526,,,,regime> xa,ya,xe,ye,rich,hrich,vrich WLB,bspnr,,,,, WLB,bspnr,,,,, xa,ya,xe,ye,rich,hrich,vrich RLB,bspnr,,,,,<,lng004,,,,ST> mit steuerfkt: Steuerfunktion: ATT, DET, KIL bspnr: Bildspeichernummer: 0 bis max. 19 bildteil: Bildteil: Q1, Q2, Q3, Q4, HU, HD, HL, HR, AL vergroesserungsf: Vergroesserungsfaktor: 1 bis 16 x: x-Koordinate Anfangspkt.0 bis 511 y: y-Koordinate Anfangspkt.0 bis 511 transferfkt: Transferfunktion: RLB, WLB lng004: Pufferlaenge: 1 bis max. 4 lng512: Pufferlaenge: 1 bis 512 lng526: Pufferlaenge: 15 bis 526 xa: x-Koordinate des Anfangspunktes des Bildausschnittes ya: y-Koordinate des Anfangspunktes des Bildausschnittes xe: x-Koordinate des Endpunktes des Bildaus- schnittes ye: y-Koordinate des Endpunktes des Bildaus- schnittes 147 rich: Richtung: LI, CO hrich: horizontale Richtung: RI, LE vrich: vertikale Richtung: DO, UP blocknr: Blocknummer: 0 bis 511 regime: Regime: FG, BG, ST muster: Testmuster: WEISS,SCHWARZ,GRAU, KARO, STREIFEN Die o.a. Tabelle der Eingabestrukturen kann uebersichtlicher in der folgenden Form dargestellt werden. Darin sind lediglich die geraetespezifischen Parameter und ggf.das Videoinformationsfeld in vereinfachter Form enthalten. Im ersten Teil sind vertikal die innerhalb der Spitzklammern zu spezifizierenden Parameter und im zweiten Teil die Parameter des Videoinformationsfeldes enthalten. EOF SEC STC RLB RLB/WLB RLB/WLB 1 Bildteil 0/AB <-ggf. Muster-> 2 FR/TO 4 512. 526. 3 Vergr. 4 0/AS 5 x Block 6 y ST FG/BG 1 xa 2 ya 3 xe 4 ye 5 LI/CO 6 RI/LE 7 DO/UP RMTST gibt bei allen Operationen ohne spezifiziertes Testmuster den E/A-Status und bei der Operation "Statuslesen" den RM-Status auf Terminal aus. Diese Operation gibt maximal drei Informationen aus. Wird bei Statuslesen die Pufferlaenge kleiner als vier angegeben, so werden die entsprechenden Informationen mit dem Wert Null ausgegeben. 4.2.3. Testprogramm fuer Grafiksteuerung GDTST ---------------------------------------------- In der folgenden Uebersicht sind die Funktionen und die zugehoe- rigen Eingabestrukturen dargestellt: steuerfkt ATT,,,,,, STC,,,,,, WLB,,,,,,<,4,csva,,,> x,y RLB,,,,,,<,4,csva> WLB,,,,,,<,1,WE,,,> schreibmaske RLB,,,,,,<,1,WE> WLB,,,,,,<,1,VG,,,> vergroesserungsf RLB,,,,,,<,1,VG> WLB,,,,,,<,1,CL,deltax,deltay,> wert WLB,,,,,,<,lng006,PF,,,> x,y,wert RLB,,,,,,<,lng006,PF> RLB,,,,,,<,lng256,FF,funktionsformer> WLB,,,,,,<,1,FF,C,,> betriebsart 148 transferfkt,,,,,,<,lng512,,,blocknr> transferfkt,,,,,,<,lng512,MT,deltax,deltay> WLB,,,,,, WLB,,,,,, mit: steuerfkt: Steuerfunktion: ATT,DET,KIL,SEC beliebig: beliebiger Wert ungleich Null steuerpar: Steuerparameter: CE, CA; CB, CN; CK,CG; GE, GA; FK, FG; AZ,CR einzeln oder kombiniert transferfkt: Transferfunktion: RLB, WLB csva: Subfunktion: CS, VA x: x-Koordinate y: y-Koordinate schreibmaske: Schreibmaske vergroesserungsf: Vergroesserungsfaktor: 1 bis 16 deltax: Ausdehnung eines Bildausschnittes in x- Richtung deltay: Ausdehnung eines Bildausschnittes in y- Richtung (maximale Pufferlaenge beach- ten!) wert: Wert eines Bildpunktes (Wort!) lng006: Pufferlaenge, durch 6 teilbar lng256: Pufferlaenge: 1 bis 256 lng512: Pufferlaenge: 1 bis 512 funktionsformer: Funktionsformer: R, G, B betriebsart: TV-Betriebsart: 0 bis 3 blocknr: Blocknummer: 0 bis 511 muster: Testmuster: WEISS,SCHWARZ,GRAU, KARO,STREIFEN Die o.a. Tabelle der Eingabestrukturen kann uebersichtlicher in der folgenden Form dargestellt werden. Darin sind lediglich die geraetespezifischen Paramemeter und der Datenteil in vereinfach- ter Form enthalten. Im ersten Teil sind vertikal die innerhalb der Spitzklammern zu spezifizierenden Parameter und im zweiten Teil die im Puffer zu spezifizierenden Informationen enthalten. 1 <-------------------------ggf. Muster-------------------------> 2 512 512 4 4 1 1 1 6 3 MT CS VA CL VG WE PF 4 dx dx 5 Block dy dy 6 1 Wert 1 Wert 1 x x Wert Vergr. Maske x 2 Wert 2 Wert 2 y y y 3 usw. usw. Wert Bei Leseoperationen werden die Daten auf Terminal ausgegeben (siehe Pkt. 2). Die Ausgabe erfolgt bei GDTST byteweise oktal. Bei Informationen von Wortlaenge wird also zuerst das niederwer- tige und darauf das hoeherwertige Byte ausgegeben. Der dezimale Wert 256 (oktal: 000400) wird z.B. in der Form "01" uebermittelt. 149 4.2.4. Testprogramm fuer Displayprozessor DDTST ----------------------------------------------- Die Parameterliste des QIOW$-Makros fuer den Displayprozessor ist auf die Zusammenarbeit mit dem BVS-Programm DCTR ausgerichtet und besitzt eine nichtkonventionelle Struktur. Da die Spezifikation der Subfunktionen mittels eines numerischen Kennzeichens erfolgt, ist in der folgenden Darstellung aus Gruen- den der Uebersichtlichkeit jeweils der Name des zu programmieren- den Hardware-Registers vorangestellt. Diese Namen sind nicht Bestandteil der Kommandozeile. steuerfkt BAR: WLB,,,,,,<,1,6,barr,barg,barb> ALU: WLB,,,,,,<,1,5,,alusteuerw,alukanal> NRM: WLB,,,,,,<,1,4,,normkanal,normsteuerw> TAR: WLB,,,,,,<,lng256,,,tarsteuerw> TSR: WLB,,,,,,<,1,3,,tsrsteuerw> MIN/MAX: WLB,,,,,,<,4,10,,minmaxkanal> SUM: WLB,,,,,,<,4,7,,sumkanal> HIS: WLB,,,,,,<,hiskanal,11,,laengstart> SGN: WLB,,,,,,<,1,1,,signkennz> mit: steuerfkt: Steuerfunktion: ATT, DET barr: BAR-Steuerwort fuer Kanal Rot barg: BAR-Steuerwort fuer Kanal Gruen barb: BAR-Steuerwort fuer Kanal Blau alusteuerw: ALU-Steuerwort alukanal: Kanalkennzeichen: 12 fuer Rot, 14 fuer Gruen, 16 fuer Blau (Angaben oktal) normkanal: Kanalkennzeichen: bit 0=1 fuer Rot bit 1=1 fuer Gruen bit 2=1 fuer Blau normsteuerw: NRM-Steuerwort lng256: Tabellenlaenge: maximal 256 tarsteuerw: TAR-Steuerwort tsrsteuerw: TSR-Steuerwort minmaxkanal: Kanalkennzeichen: 0 fuer Rot 2 fuer Gruen, 4 fuer Blau sumkanal: Kanalkennzeichen: bit 2=1 fuer Rot bit 1=1 fuer Gruen bit 0=1 fuer Blau hiskanal: Kanalkennzeichen: 1 fuer Rot 2 fuer Gruen 4 fuer Blau laengstart: Spezifikation des Histogrammbereiches: HB: Bereichslaenge NB: Bereichsanfang signkennz: Signum-Kennzeichen: 0 Zahleninterpretation ohne Vorzeichen 100000 Zahleninter -pretation mit Vorzeichen 150 Ausserdem koennen mittels der Funktion DIP Bildspeicher fuer Schwarz-Weiss-Darstellung auf dem Monitor durch den Display- prozessor durchgeschaltet werden. Diese Funktion ist keine Dri- ver- sondern eine Testprogrammfunktion zur Unterstuetzung der Visualisierung fuer Testzwecke: DIP,bspnr mit bspnr: Bildspeichernummer: 0 bis max.19 Die Funktion DIP beinhaltet den automatischen Ablauf der folgen- den Subfunktionen: WLB,,,,,,<,1,6,443,443,443> bei Durchschalten eines Bildspeichers RM0 ... RM3 WLB,,,,,,<,1,6,42547,42547,42547> bei Durchschalten eines Bildspeichers RM4 ... RM7 WLB,,,,,,<,256.,,,70000> mit Uebertragung einfacher Korrekturfunktionsformer WLB,,,,,,<,1,3> WLB,,,,,,<,1,5,,x,12> wobei x=101777 fuer RM0 oder RM4 WLB,,,,,,<,1,5,,x,14> =101657 fuer RM1 oder RM5 WLB,,,,,,<,1,5,,x,16> =107472 fuer RM2 oder RM6 =105072 fuer RM3 oder RM7 WLB,,,,,,<,1,4,,7> 4.2.5. Testprogramm fuer Rollkugeleinheit TBTST ----------------------------------------------- Nach Start des Testprogrammes als Task werden auf dem Terminal die Koordinaten eines Anfangspunktes (0,0) ausgegeben. Bei Drehen der Rollkugel werden die Koordinaten entsprechend der Drehung laufend aktualisiert. Da bei der Drehung fortwaehrend asynchrone Systemtraps ausgeloest werden, kommt es bei schneller Drehung zum Aufbau erheblicher Warteschlangen. Nach Stillstand der Kugel ist die Abarbeitung der Warteschlange daran zu erkennen, dass noch ueber eine gewisse die Aktualisierung der Koordinaten fortgesetzt wird. Das Testprogramm wird automatisch beendet, wenn es ca 30 Sekunden lang nicht mehr zum Aktualisieren der Koordinaten gekommen ist. Dabei kann sich diese Stillstandszeit aus einzelnen Pausen zusam- mensetzen. 4.3. Testbeispiele ------------------ Im Folgenden werden Beispiele fuer die Durchfuehrung eines einfachen Testes der Geraete des Bildverarbeitungssystems gegeben, die der Darstellung der Testpraxis und der zu erwartenden Reaktionen dienen sollen. Diese Beispiele sind gewissermassen als Vorgabe aufzufassen, die entsprechend der jeweiligen speziellen Zielstellung bzw. der konkreten Geraete- konfiguration anzupassen sind. 151 4.3.1. Testbeispiel fuer das Testprogramm RMTST ----------------------------------------------- Das Testbeispiel benutzt die Bildspeicher RM0 und RM1. Es wird vorausgesetzt, dass RM0 im Displayprozessor durchgeschaltet ist. Dies kann mittels des Testprogrammes DDTST oder mittels des Programmes VIL durchgefuehrt werden. SEC,0,,,,, Ruecksetzen evtl. vorliegender Reservie- rungen SEC,1,,,,, RLB,0,,,,,<,4,,,,ST> Demonstration Statuslesen (ausfuehrlich). Der RM-Status (140) und die Pultnummer sowie KSA-Adresse werden ausgegeben ATT,0 RLB,0,,,,,<,1,,,,ST> Demonstration Statuslesen (verkuerzt). Wegen der vorangegangenen Reservierung betraegt der RM-Status 340 ATT,1 EOF,0,,,,, Auf dem Monitor wird der zufaellige In- halt von RM0 sichtbar (Videolesen) WLB,0,,,,, Loeschen von RM0 und RM1 auf "Schwarz". WLB,1,,,,, Die verwendete Funktion "Transfer logi- scher Bloecke" arbeitet als Vordergrund- transfer. Es werden Bildstoerungen sichtbar WLB,0,,,,, 0,0,511.,511. Demonstration eines Vordergrundtransfers in Standardrichtungen (zeilenweise, nach rechts, nach unten) WLB,0,,,,, 511.,511.,0,0,LI,LE,UP Demonstration eines Hintergrundtransfers in den Richtungen: zeilenweise, nach links, nach oben. Es werden keine Bild- stoerungen sichtbar WLB,0,,,,, 192.,192.,320.,320. Demonstration eines Transfers eines Bild- fensters. Das Bildfenster liegt in der Bildmitte EOF,0,,,,, Demonstration eines Vergroesserungs- faktors (=2) EOF,0,,,,, Demonstration fuer Uebertragen des 1. Quadranten in alle Quadranten. Der 1. Quadrant befindet sich links oben EOF,0,,,,, wie vorher mit 2. Quadranten (rechts oben) EOF,0,,,,, wie vorher mit 3. Quadranten (links un- ten) EOF,0,,,,, wie vorher mit 4. Quadranten (rechts unten) EOF,0,,,,, Demonstration fuer Uebertragen des oberen Halbbildes in beide Halbbilder EOF,0,,,,, wie vorher mit unterem Halbbild EOF,0,,,,, wie vorher mit linkem Halbbild EOF,0,,,,, wie vorher mit rechtem Halbbild EOF,0,,,,, 152 EOF,1,,,,, Demonstration fuer Videoschreiben (auf RM1). Wird der Test auf einem Dispatcher durchgefuehrt, so wird das Videoschreiben mit Fehlermeldung IE.ONP (373) abgewie- sen. Im anderen Falle wird der Ausgang des Displayprozessors (RM0 ist durchge- schaltet) auf RM1 uebertragen. Da das Visualisieren von RM1 an dieser Stelle den Testablauf stoeren wuerde, sollte es nach Abarbeitung von RMTST durchgefuehrt werden WLB,0,,,,, Bereitstellen eines Schachbrettmusters fuer den weiteren Test RLB,0,,,,,<,526.,,,,FG> 160,120,511.,120 WLB,0,,,,,<,526.,,,,FG> 160,160,511.,160 Um Kantenlaenge eines Karos versetztes Lesen und Schreiben eines Zeilenabschnit- tes zwecks Anbringen einer Markierung. Gleichzeitig wird demonstriert, dass im Falle Pufferlaenge > Bildausschnitt der Transfer nach Abarbeitung des Bildaus- schnittes beendet wird EOF,0,,,,, Demonstration der Bildverschiebung auf dem Monitor. Anhand der gesetzten Markierung ist zu erkennen, dass das Bild auf dem Monitor in beiden Richtungen um jeweils 64 Bildpunkte nach links und oben verschoben wird (Kantenlaenge betraegt 32 Bildpunkte) STC,0 Demonstration fuer Beenden der Videoarbeit SEC,0 Demonstration fuer Aufheben der Reser- vierung RLB,0,,,,,<,1,,,,ST> Der RM-Status betraegt 140 RLB,0,,,,,<,512.> Demonstration fuer das Abweisen des Zu- griffs auf einen Bildspeicher bei fehlen- der Reservierung. Es wird eine Fehler- meldung IE.DNA (371) gegeben ATT,0 Wiederherstellen der Reservierung EOF,0,,,,, und des Videolesens Die folgenden Kommandozeilen testen die Fehlererkennung. RLB,0,,,,,<,526.,,,,FG> 0,0,512.,0 Fehlermeldung IE.BAD (377): Videoadresse 512 ist unzulaessig RLB,0,,,,,<,526.,,,,FG> 0,0,511.,511. Fehlermeldung IE.BAD (377): Bildaus- schnitt ist unzulaessig gross RLB,0,,,,,<,526.,,,,FG> 0,0,511.,0,LI,LE,DO Fehlermeldung IE.BAD (377): Videoadressen stimmen nicht mit der Richtungsspezifika- tion ueberein WLB,0,,,,,<,256.,,,,FG> 160,192,511.,192 Fehlerwarnung IE.BAD (377): Pufferlaenge < Bildausschnitt bei Schreiboperation. Der Transfer wird bei Erreichen des Puf- ferendes beendet 153 RLB,0,,,,,<,256.,,,,FG> 160,192,511.,192 Fehlerwarnung IE.DAO (363): Pufferlaenge < Bildausschnitt bei Leseoperation. Der Transfer wird bei Erreichen des Pufferen- des beendet RLB,0,,,,,<,526.,,,,FE> 0,0,511.,0 Fehlermeldung IE.ONP (373): Subfunktion ungueltig RLB,0,,,,,<,512.,,,512.> Fehlermeldung IE.BLK (354): Blocknummer 512 ist unzulaessig EOF,0,,,,, Fehlermeldung IE.BAD (377): Videoadresse 512 ist unzulaessig EOF,0,,,,, Fehlermeldung IE.ONP (373): Bildteilspe- zifikation ist unzulaessig STC,0 STC,0 Fehlermeldung IE.ONP (373): keine aktive Videoarbeit SEC,0 SEC,0 Fehlermeldung IE.DNA (371): Bildspeicher nicht angeschlossen SEC,1 CTRL/Z Beenden von RMTST Ggf. ist zum Nachweis des Videoschreibens mittels des Programmes VIL der Bildspeicher RM1 zu visualisieren. 4.3.2. Testbeispiel fuer das Testprogramm GDTST ----------------------------------------------- Wird der Test an einer 4-Bit-GST durchgefuehrt, muss ggf. vor dem Start des Programmes GDTST unter Verwendung des Programmes DDTST das Ueberlagerungsbit am Displayprozessor gesetzt werden. Ausser- dem muss im o.a. Falle beachtet werden, dass auf einer 4-Bit-GST keine Grauwerte dargestellt werden koennen. Anstelle der Grauwer- te werden auf dem Monitor farbige Streifen in der folgenden Rei- henfolge sichtbar: weiss/gelb/violett/rot/hellblau/gruen/blau/schwarz STC,,,,,, Das 1. Wort des E/A-Statusblok- kes lautet 10001 WLB,,,,,, WLB,,,,,,<,4,CS,,,> 256.,256. Demonstration fuer Schreiben Cursoradresse RLB,,,,,,<,4,CS> Demonstration fuer Lesen Cursor- adresse. Ueber Terminal wird aus- gegeben: 000000 000 001 000 001 STC,,,,,, Demonstration fuer Einstellen des Spezifikationsregisters: Cursor aus. Das 1. Wort des E/A-Status- blockes lautet: 12001 STC,,,,,, Demonstration fuer Einstellen des Spezifikationsregisters: Cur- sor ein, Cursor gross. Das 1. Wort des E/A-Statusblockes lau- tet: 14001 154 STC,,,,,, Demonstration fuer Einstellen des pezifikationsregisters: Grafik aus. Das 1. Wort des E/A-Status- blockes lautet: 14401 STC,,,,,, Demonstration fuer Einstellen des Spezifikationsregisters: Grafik ein, Cursor klein. Das 1. Wort des E/A-Statusblockes lautet: 10001 WLB,,,,,, Demonstration fuer Schreiben lo- gischer Bloecke mit Pufferlaenge < Blocklaenge. Der Transfer en- det bei Erreichen des Pufferen- des. Der Cursor steht nach dem Transfer unter dem linken unteren Eckpunkt der geschriebenen Daten WLB,,,,,, Demonstration fuer Schreiben lo- gischer Bloecke mit Pufferlaenge = Blocklaenge. Der Cursor steht nach dem Transfer unter dem lin- ken unteren Eckpunkt der ge- schriebenen Daten WLB,,,,,,<,4,CS,,,> 256.,256. WLB,,,,,,<,1,CL,64.,96.,> 255 Demonstration fuer Matrixloe- schen. Beginnend mit der durch Cursor bestimmten Adresse wird der durch die spezifizierte x- und y-Ausdehnung festgelegte Bildausschnitt geloescht. An einer 8-Bit-GST erscheint der ge- loeschte Ausschnitt auf dem Moni- tor grau, an einer 4-Bit-GST gruen. Durch die Operation wird die Cursorposition nicht veraen- dert STC,,,,,, Demonstration fuer Einstellen des Spezifikationsregisters: Format gross. Die Aenderung des Formates ist an der Ortsaenderung des vor- her geloeschten Feldes und dessen Aenderung im Grauwert (weiss) zu erkennen. Das 1. Wort des E/A- Statusblockes lautet: 11001 STC,,,,,, Das 1. Wort des E/A-Statusblockes lautet: 10001 WLB,,,,,,<,1,VG,,,> 2 Demonstration fuer Schreiben des Vergroesserungsfaktors. Die Ver- groesserung ist auf dem Monitor sichtbar RLB,,,,,,<,1,VG> Demonstration fuer Lesen des Ver- groesserungsfaktors. Ueber Termi- nal wird ausgegeben: 000000 002 WLB,,,,,,<,1,VG,,,> 1 WLB,,,,,,<,4,VA,,,> 140.,140. Demonstration fuer Schreiben der Videoadresse. Die Verschiebung der Abbildung auf dem Monitor ist anhand des markierten Ausschnit- tes zu erkennen 155 RLB,,,,,,<,4,VA> Demonstration fuer Lesen der Vi- deoadresse. Ueber Terminal wird ausgegeben: 000000 214 000 214 000 WLB,,,,,,<,4,VA,,,> 0,0 WLB,,,,,, STC,,,,,, Das 1. Wort des E/A-Statusblockes lautet: 10001 RLB,,,,,,<,512.,MT,256.,1> Demonstration fuer Matrixlesen mit Pufferlaenge > spezifizier- ter Bildausschnitt. Der Transfer endet bei Erreichen des Endes des Bildausschnittes. Die Anzahl der gelesenen Bytes wird im 2. Wort des E/A-Statusblockes ausgegeben RLB,,,,,,<,4,CS> Nach dem Matrixlesen steht der Cursor auf 0,1 (Ausgabe auf Ter- minal: 000000 000 000 001 000) RLB,,,,,,<,512.,MT,512.,2> Demonstration fuer Matrixlesen mit Pufferlaenge < spezifizierter Bildausschnitt. Der Transfer endet bei Erreichen des Puffer- endes. Die Anzahl der gelesenen Bytes wird im 2. Wort des E/A- Statusblockes ausgegeben RLB,,,,,,<,4,CS> Nach dem Matrixlesen steht der Cursor auf 0,2 (Ausgabe auf Ter- minal: 000000 000 000 002 000) RLB,,,,,,<,512.,MT> Demonstration fuer Matrixlesen mit Standardwerten fuer x- bzw. y-Ausdehnung (512,1) RLB,,,,,,<,6,PF,,,> 256.,256. Demonstration fuer Lesen einer Punktfolge. Nach dem Transfer wird bei Vorliegen einer 8-Bit- GST ueber Terminal ausgegeben: 000000 000 001 000 001 177 (im Graukeil befindet sich jeweils auf zwei aufeinanderfolgenden Po- sitionen beginnend mit 377 der gleiche Grauwert, in Position 256 muss also 177 stehen) Im Falle einer 4-Bit-GST wird ausgegeben: 000000 000 001 000 001 260 (im Graukeil befindet sich jeweils auf vier aufein- anderfolgenden Positionen der gleiche Grauwert. Die vier hoeherwertigen Bits des ausge- waehlten Bildpunktwertes ergeben 260) Im Falle einer 4-Bit-GST: Demonstration fuer Schreiben einer Punktfolge WLB,,,,,,<,6,PF,,,> 256.,256.,200 156 Im Falle einer 8-Bit-GST: WLB,,,,,,<,6,PF,,,> 256.,256.,0 STC,,,,,, Nach Versetzen des Cursors ist an dessen frueherer Position der auf Null gesetzte Bildpunkt (schwarz) sichtbar. Das 1. Wort des E/A- Statusblockes lautet: 10001 WLB,,,,,,<,4,CS,,,> 256.,256. Die folgenden beiden Kommandozeilen sind nur bei Test an einer 8- Bit-GST zu geben: SEC Demonstration fuer Bilden des Complementes eines Bildpunktes STC,,,,,, Nach Versetzen des Cursors ist an dessen frueherer Position der complementierte Bildpunkt (weiss) sichtbar. Das 1. Wort des E/A- Statusblockes lautet: 10001 WLB,,,,,, RLB,,,,,,<,1,WE> Demonstration fuer Lesen der Schreibmaske. Ueber Terminal wird ausgegeben: 000000 377 WLB,,,,,,<,1,WE,,,> 277 Demonstration fuer Schreiben der Schreibmaske WLB,,,,,, Demonstration fuer den Schreib- schutz von Bitebenen. Das Sper- ren der Bitebene 6 (mit der Wer- tigkeit 100) bewirkt, dass die urspruenglich kontinuierliche Folge von Grauwerten in diesem Falle in vier in sich selbst kon- tinuierliche Folgen zerfaellt, von denen sich jeweils zwei be- nachbarte gleichen. An einer 4- Bit-GST steht fuer jeden Bild- punkt nur der halbe Wertebereich zur Verfuegung. Da hiermit nur die halbe Bildzeile gefuellt wuerde, wird das Schreiben des Musters GRAU hier so organisiert, dass jeder Bildpunkt doppelt so oft geschrieben wird, wie dies bei einer 8-Bit-GST der Fall ist. Daher zerfaellt bei einer 4-Bit- GST die urspruengliche Folge in zwei gleiche und in sich kontinu- ierliche Folgen mit den Farben: hellblau/gruen/blau/schwarz Wegen des Schreibschutzfehlers wird als Kennzeichen fuer einen aufgetretenen Fehler GDTST ver- lassen. Das Programm muss neu ge- startet werden WLB,,,,,,<,4,CS,,,> 0,256. 157 Im Falle einer 4-Bit-GST: Fehlerwarnung IE.WLK (364). Da WLB,,,,,,<,1,CL,512.,1,> 300 lediglich auf die gesperrte Bit- Im Falle einer 8-Bit-GST: ebene geschrieben werden sollte, WLB,,,,,,<,1,CL,512.,1,>100 kann die Wirksamkeit des Schreib- sccutzes gut kontrolliert werden WLB,,,,,,<,1,WE,,,> 377 RLB,,,,,,<,256.,FF> Demonstration fuer Lesen des Funktionsformers (Standard: gruen) ATT Demonstration fuer Einstellen des Anfangszustandes mittels Funktion ATT Die folgenden Kommandozeilen testen die Fehlererkennung: RLB,,,,,,<,5,PF,,,> 256.,256. Fehlermeldung IE.BAD (377): Beim Transfer einer Punktfolge ist die Pufferlaenge nicht durch sechs teilbar RLB,,,,,,<,6,PF,,,> 256.,600. Fehlermeldung IE.EOV (365): Beim Transfer einer Punktfolge liegt mindestens eine Punktkoordinate ausserhalb des Matrixspeichers RLB,,,,,,<,256.,FF,RR> Fehlermeldung IE.ONP (373): Beim Transfer eines Funktionsformers ist fuer diesen eine ungueltige Spezifikation verwendet worden RLB,,,,,,<,2,VA> Fehlermeldung IE.DAO (363): Beim Transfer einer Videoadresse ist eine zu kleine Pufferlaenge spe- zifiziert worden RLB,,,,,,<,2,CS> Fehlermeldung IE.DAO (363): Beim Transfer einer Cursoradresse ist eine zu kleine Pufferlaenge spe- zifiziert worden WLB,,,,,,<,4,CS,,,> 256.,600. Fehlermeldung IE.EOV (365): Beim Transfer einer Cursoradresse liegt mindestens eine Koordinate ausserhalb des Matrixspeichers CTRL/Z Beenden von GDTST 4.3.3. Testbeispiel fuer das Testprogramm DDTST ----------------------------------------------- Bei der Auswertung des Testes ist zu beachten, dass das 2. Wort des E/A-Statusblockes fuer dieses Geraet nicht definiert ist. Das folgende Testbeispiel setzt voraus, dass sich im Bildspeicher RM0 ein Graukeil befindet und dass der Bildspeicher auf Videolesen eingestellt ist. Die genannten Voraussetzungen koennen mittels des Testprogrammes RMTST hergestellt werden. Zur visuellen Kontrolle fuer das Einschalten des Ueberlagerungs- bits im TSR ist in den grafikinternen Matrixspeicher mittels des Testprogrammes GDTST das Muster KARO einzuschreiben. DIP,0 Die Funktion DIP ist keine Dri- verfunktion. Sie beinhaltet eine automatisch ablaufende Folge von Driverfunktionen fuer das Durch- schalten des Displayprozessors bezueglich eines Bildspeichers. 158 Auf die einzelne Abarbeitung der betreffenden Funktionen wird ver- zichtet. Die Funktionsfaehigkeit der gesamten Folge von Driver- funktionen ist anhand des durch- geschalteten Bildspeichers RM0 zu erkennen (Monitor) WLB,,,,,,<,4,10,,0> Demonstration fuer das Lesen des Maximum- und des Minimumregisters des roten Kanals. Ueber Monitor wird ausgegeben (dezimal): 255 0 (Maximalwert=255 (dezimal), Mini- malwert=0) WLB,,,,,,<,4,7,,4> Demonstration fuer das Lesen des Summenregisters des roten Kanals. Ueber Monitor wird ausgegeben (dezimal): 33423360 Dieser Wert ist gleich der Summe aller Bildpunktwerte des gesamten Bildes WLB,,,,,,<,1,11,,177400> Demonstration fuer das Lesen des Histogramms des roten Kanals. Ueber Monitor wird eine Liste der Histogrammwerte (dezimal) ausge- geben. Jede Zeile enthaelt einen Adresszaehler (oktal). Da jeweils zwei Bildspalten den gleichen Grauwert enthalten und lueckenlos jeder Grauwert vertreten ist, weist die Liste fuer jeden Grau- wert den gleichen Histogrammwert (1024, dezimal) aus WLB,,,,,,<,1,11,,2374> Demonstration fuer das Lesen eines Teiles des Histogramms des roten Kanals. Uber Monitor wird der aus vier Werten bestehende Schluss der Histogrammliste aus- gegeben (beginnend mit dem Grau- wert 374 (oktal)). Da fuer die Codierung der Laenge der Histogrammliste (hoeherwerti- ges Byte des 5. Parameters) nur ein Byte zur Verfuegung steht, muss bei Vorhandensein aller Grauwerte im Bild die Histogramm- liste in zwei Teilen gelesen wer- den WLB,,,,,,<,1,1,,100000> Demonstration fuer Setzen des Signumbits im Statistikregister WLB,,,,,,<,4,7,,4> Lesen des Summenregisters des roten Kanals. Wegen des gesetzten Signumbits (vorangegangene Kom- mandozeile) werden bei der Sum- menbildung alle Bildpunktwerte als vorzeichenbehaftete Zahlen aufgefasst. Uber Monitor wird ausgegeben (dezimal):- 131072 Anhand dieses Wertes wird die Funktionsfaehigkeit der Subfunk- tion Stellen des Signumbits kon- 159 trolliert WLB,,,,,,<,1,1,,0> Loeschen des Signumbits auf ur- spruenglichen Zustand Mittels der folgenden Kommandozeilen koennen die Stastistikre- gister fuer den gruenen Kanal getestet werden: WLB,,,,,,<,4,10,,2> Maximum- und Minimumregister WLB,,,,,,<,4,7,,2> Summenregister WLB,,,,,,<,2,11,,177400> Histogrammregister WLB,,,,,,<,2,11,,2374> 2.Teil Histogrammregister Die entsprechenden Kommandozeilen fuer den blauen Kanal lauten: WLB,,,,,,<,4,10,,4> Maximum- und Minimumregister WLB,,,,,,<,4,7,,1> Summenregister WLB,,,,,,<,4,11,,177400> Histogrammregister WLB,,,,,,<,4,11,,2374> 2.Teil Histogrammregister Die folgenden Kommandozeilen stellen die Arithmetisch-Logische- Einheit (ALU) des Displayprozessors auf Null. Damit kann prak- tisch der ALU-Ausgang einzelner oder aller Kanaele gesperrt wer- den (wenn z.B. nur die Grafikinformation interessiert). WLB,,,,,,<,1,5,,100003,12> Demonstration fuer das Einstel- len des ALU-Ausganges des roten Kanals auf Null. Das Bild auf dem Monitor wird hellblau WLB,,,,,,<,1,5,,100003,14> Demonstration fuer das Einstellen des ALU-Ausganges des gruenen Ka- nals auf Null. Das Bild auf dem Monitor wird blau WLB,,,,,,<,1,5,,100003,16> Demonstration fuer das Einstellen des ALU-Ausganges des blauen Ka- nals auf Null. Das Bild auf dem Monitor wird schwarz Mittels der folgenden Kommandozeile wird im Tabellenstatusre- gister (TSR) des Displayprozessors das Ueberlagerungsbit einge- schaltet: WLB,,,,,,<,1,3,,100000> Einschalten des Ueberlagerungs- bits Das Wiederherstellen des urspruenglichen Zustandes erfolgt mittels: DIP,0 Die folgende Kommandozeile testet die Fehlererkennung: WLB,,,,,,<,4,100,,4> Fehlermeldung IE.BAD (377): Sub- funktionsnummer ist unzulaessig CTRL/Z Beenden von DDTST 160 Abkuerzungsverzeichnis ---------------------- ACNT (Account File Maintenance Wartungsprogramm fuer Nutzer- Program) verzeichnisse ACP (Ancillary Control Processor) Zusatzsteuerroutine AS Anschlusssteuereinheit AFP - fuer Festplattenspeicher AFS - fuer Folienspeichereinheit AIP - fuer paralleles Interface AIS - fuer serielles Interface AKP - fuer Kassettenplatten- speicher AMB - fuer Magnetbandspeicher APR (Address Page Register) Seitenadressregister ASCII (American Standard Code entspricht KOI7-Code for Information Interchange) AST (Asynchronous Systemtrap) Asynchroner Systemtrap AT Verarbeitungsprogramm fuer Indirekt-Kommandodateien BAD (Bad Block Locator Utility) Plattenpruefprogramm BDE Bedieneinheit BOT (Begin Of Tape) Bandanfang BRU (Backup and Restore Utility) Datensicherungsprogramm BS Betriebssystem CDA (Crash Dump Analyzer) Abbruchanalyseprogramm CIB (Controller Initialization Initialisierungsblock Block) fuer die Anschlusssteuer- einheit CLI (Command Line Interpreter) Programm zur Bearbeitung von Kommandos CMP (File Compare Utility) Dateivergleichsprogramm CSI (Command String Interpreter) Kommandozeileninterpreter DCB (Device Control Block) Geraetetypsteuerblock DCL Kommandosprache DCL DDT (Driver Dispatch Table) Tabelle der Eintrittspunkte eines Drivers DEP (Debugging Program) Testprogramm DFNB (Default File Name Block) Standarddateinamenblock DIC (Directive Identifikation Code) Anweisungsidentifikationscode DMP (Dump Utility) Dateidruckprogram DPB (Directive Parameter Block) Anweisungsparameterblock DSC (Disk Save and Compress) Dateirettungs- und Ver- dichtungsprogramm DSW (Directive Status Word) Anweisungsstatuswort E/A Ein- und Ausgabe EDI (Line Text Editor) Editor EDT (Standard Editor) " EFN (Event Flag Number) Ereignisflagnummer EOF (End of File) Dateiendekennsatz EOV (End of Volume) Datentraegerendekennsatz ELI Fehlerregisstrierungs- interface ERRLOG Fehlerregistrator 161 FCB (File Control Block) Dateisteuerblock FCS (File Control Services) Dateizugriffsroutinen FDB (File Descriptor Block) Dateibeschreibungsblock FD16 Datensicherungsformat FE16 Global genormte Dateiformate (Dateiformat "established") FEX (File Exchange Utility) Dateiaustauschprogramm FIFO (First in - first out) FIFO-Speicherprinzip FL16 Dateiformat LAOS 1630 FLX (File Transfer Utility) Dateiumwandlungsprogramm FMT (Format Utility) Formatierungsprogramm fuer Magnetplatten FM16 Dateiformat MOOS 1600 und OMOS 1630 FNB (File Name Block) Dateinameblock FPEM (Floating-point Emulation Program) Gleitkommaemulator FPS Festplattenspeicher FQ16 Lokal genormte Dateiformate (Datenformat "queered") FSE Folienspeichereinheit FSR (File Storage Region) Dateispeicherbereich GCML (Get Command Line) Kommandozeilenlesen HDR (Header Label) Dateianfangskennsatz ICB (Interrupt Control Block) Interruptsteuerblock ID Identifikation IESR (Interrupt Enable/Disable Service Routine) Interrupt-Erlauberoutine IOX (I/O Exerciser) Allgemeines Geraete testprogramm ISR (Interrupt Service Routine) Interrupt-Bedienroutine ITB (Interrupt Transfer Block) Interrupt-Transfer-Block KBR Kommerzielles Basisrechner- system KMBE Kassettenmagnetbandeinheit KOI-7 entspricht ASCII-Code KPS Kassettenplattenspeicher KROS Kombinat Robotron Standard LBL Lochbandleser LBN (Logical Block Number) Logische Blocknummer LBR (Librarian Utility) Bibliothekar LC (Location Counter) Speicherplatzzaehler des Assemblers LUN (Logical Unit Number) logische Geraetenummer LUT (Logical Unit Table) Tabelle der logischen Geraetenummern LP (Line Printer) Zeilendrucker MAC Makro-Assembler MBG Magnetbandgeraet MCR (Monitor Console Routines) Kommandoprogramm MFD (Master File Directory) Hauptdateiverzeichnis MGS Mikrorechnergeraetesystem MOEX Exekutive des MOOS MOOS 1600 Modulares Operationssystem 162 NP Nutzerprogramm OCB (Offspring Control Block) Block zur Steuerung der Mutter/Tochter-Taskverbindung ODT (On-Line Debugging Tool) Testprogramm OMEX Exekutive des OMOS OMOS 1630 Optimiertes Modulares Betriebssystem PAR (Page Address Register) Seitenadressregister PAT (Object Module Patch Utility) Objektmodul-Korrekturprogramm PC (Program Counter) Befehlszaehler PCB (Partition Control Block) Partitionsteuerblock PDR (Page Description Register) Seitenbeschreibungsregister PIP (Peripheral Interchange Dateitransferprogramm Program) PRT (Print spooler) Print-Spooler PSW (Processor Status Word) Prozessorstatuswort RAM (Random Access Memory) Speicher mit wahlfreiem Zu- griff RPT Protokollgenerator RDB (Region Definition Block) Region-Definitionsblock SCB (Status Control Block) Statussteuerblock SD Seriendrucker SHF (Shuffler) Speicherverdichtungsprogramm SLP (Source Line Processor) Quelltext-Korrekturprogramm SKR System der Kleinrechner SP (Stack-pointer) Stackpointer, Kellerzeiger SR (Status Register) Statusregister SRD (Sort Directory Program) Sortierprogramm fuer Verzeichnisdateien SST (Synchronous Systemtrap) Synchroner Systemtrap STD (System Task Directory) Systemtaskverzeichnis SVE Speichervermittlungseinheit TCB (Task Control Block) Tasksteuerblock TKB (Task Builder) Taskbilder TKTN (Task Termination Noti- Mitteilungsroutine fuer Task- fication Routine) beendigung UCB (Unit Control Block) Geraetesteuerblock UFD (User File Directory) Nutzerdateiverzeichnis UIC (User Identification Code) Nutzeridentifikationscode UHL (User Header Label) Nutzereigene Dateikennsaetze UTL (User Trailer Label) " UVL (User Volume Label) " VB (Virtual Block) Virtueller Block VBN (Virtual Block Number) Virtuelle Blocknummer VCB (Volume Control Block) Datentraegersteuerblock VFY (File Structure Verification Dateipruefprogramm Utility) VMR (Virtual Monitor Console Virtuelles Kommandoprogramm Routine) 163 VOL (Volume Label) Datentraegerkennsatz WDB (Window Definition Block) Fenster-Definitionsblock XDT (Executive Debugging Tool) Exekutivetesthilfe ZAP (Task Image File Patch) Dateikorrekturprogramm ZVE Zentrale Verarbeitungseinheit 164 Sachwortverzeichnis ------------------- Adressierung 40,41,50 Ausruestungsfehler 44,56 Ausschriftenformat 44,56 Bandmarke 52 Bandpruefung 56,61 Bandschraeglauf 54 Begrenzungsschalter 10 Dateiende 54 Dateischalter 11 Datenfehler 44,49,56 Datenzuverlaessigkeit 42,55,63 Datumsschalter 14 ELI 7,8,9,15 Ereignisflag 36,47,49,64,69,76 ERRLOG Fehlerarten 6,12,15,16,19 Fehlerbegrenzung 8,9,10 Fehlerblock 41 Fehlernummer 44f,57f Fehlerprotokoll 13 Fehlerregistrierpaket 7,8,13,14,15 Formatieren 43,49 Geraetefehler 7 Geraeteschalter 14 Hard-Copi-Einrichtung 34,66 Hauptspeicherfehler 8 Interaktiver Test 49,50,63,64,70,71 Interrupt-Time-Out 7 Kennsatzschalter 16 Kommandopaket 7 leichte Fehler 8,10,11,12 Leistungsparameter 40,51,66,72 Listendatei 13 Mehrfachdurchlauf 48,62,70,75 Mehrnutzerschutz 34,39 OMEX 1630, Routinen des - 7,8,12 Nutzer-Modus 34,35,46,60,74 oeffentliches Geraet 34,38 Paketauswahlschalter 13 Paketschalter 15 Positionieren 52,54,55 privates Geraet 34 Protokoll 7,16,17,18 Protokolldatei 13 165 Protokollformatschalter 16 Registrierschalter 9 RPT 7,8,13,19 Ruecksetzschalter 10 Schlupf 53 schwerwiegende Fehler 8,10,11,12 Service-Modus 34,36,47,61,69,74 Sicherungsdatei 9,11,12 Spur-Uebergang 42 Terminal 66 Testbericht 35,36,47,61 Testfolge 49,63,70,76 Testmuster 67,68,73,75 Testparameter 36,48,49,61,70,75 Typenschalter 15 unerwartete Traps oder Interrupts 7 Universalbibliothek 13 UTILITY 38 Vertikale Paritaet 52 Zaehlmuster 42,51 Zeichenvorrat 68,73 Zufallstest 43 Zyklische Redundanz 53 Zylinderuebergang 42 IOX --- Aktivitaetsreport 82,84ff.,87ff.,99f.,108,112f., 117,123,130 Anzeigekommando 84,92,94,97,98,110,111 Fehlerreport 82,85,87,89,91,96,108,112f.,117 File-strukturierte Datentraeger 80 FM16-D 80ff. Funktionskommando 83,87ff.,92,101ff.,121,126 Gesamtreport 100 Indirekt-Kommandodatei 81 Intervallreport 100,102,112,124 NFS-Datentraeger 80,83,87,94f.,101,110,115,119,121 122,126ff.,135ff. Nicht-File-strukturierte Datentraeger 80 Parameterkommando 84,85,88ff.,92,94f.,99f.,105,108 111,114ff.,119ff.,124ff. Steuerkommando 81f.,84,92f.,97,99,104,113,118, 123,125 166 Testkonfiguration 82,85ff.,97,118,121,130,134,137 139f. Testparameter 80,82,84ff.,105,109,110 167