Task zur SM2-Task-Statistik anmelden
Komponente: | openSM2 |
Funktionsbereich: | Programm-Steuerung |
Anwendungsbereich: | PROGRAM |
Privilegierung: | alle Privilegien außer |
Funktionsbeschreibung
Mit dem Kommando START-TASK-MEASUREMENT meldet der Benutzer die Task zur Messung an. Der Software-Monitor SM2 erfasst dann taskspezifische Messwerte und trägt diese Daten in eine benutzerspezifische Datei ein.
Neben den taskspezifischen Messwerten kann auch eine Befehlszähler-Statistik und eine SVC-Statistik für Programmläufe angefordert werden.
Für die Befehlszähler-Statistik wird das Programm mithilfe eines Zeitgebers in bestimmten zeitlichen Abständen unterbrochen und die jeweils im Befehlszähler enthaltene Adresse des nächsten auszuführenden Befehls wird in die benutzerspezifische Messwertedatei übertragen (Aufzeichnung von Befehlszählerstichproben).
Für die SVC-Statistik werden alle SVC-Aufrufe des Programms während der Tasküberwachung aufgezeichnet; SVC-Nummern und Aufrufadressen werden ebenfalls in der Messwertedatei hinterlegt.
Mit dem Kommando STOP-TASK-MEASUREMENT oder bei Taskbeendigung wird die Benutzer-Taskmessung beendet und die benutzerspezifische Messwertedatei geschlossen. Auch der Entzug der Erlaubnis zur Tasküberwachung durch den SM2-Erst-Verwalter (MODIFY-USER-ADMISSION TASK=*INHIBIT) sowie das Entladen des SM2 (STOP-SUBSYSTEM SUBSYSTEM-NAME=SM2) beenden gerade laufende Benutzer-Taskmessungen.
Zur Auswertung der bei der Benutzer-Taskmessung erzeugten Messwertedatei wird das eigenständige Produkt SM2-PA angeboten (siehe Handbuch „openSM2“ [39]).
Hinweis
Die benutzerspezifische Messwertedatei kann das für den Benutzer im ADD-USER- bzw. MODIFY-USER-ATTRIBUTES-Kommando festgelegte PUBLIC-SPACE-LIMIT überschreiten, auch wenn PUBLIC-SPACE-EXCESS=*NO angegeben wird.
Privilegierung
Der privilegierte Anwender (Privileg SW-MONITOR-ADMINISTRATION) kann jede Task überwachen (siehe Operand TSN).
Format
START-TASK-MEASUREMENT |
TSN = *OWN / <alphanum-name 1..4> ,FILE = *STD / *BY-LINK-NAME ,PCOUNTER-INTERVAL = *NONE / <integer 1..10000> ,SVC-STATISTICS = *OFF / *ON ,LOAD-INFO = *STD / *DETAILED |
Operandenbeschreibung
TSN =
Gibt die Task an, die überwacht wird.
TSN = *OWN
Die Task, die das Kommando aufruft, wird überwacht.
TSN = <alphanum-name 1..4>
Die Task mit der angegebenen TSN wird überwacht. Der nicht-privilegierte Benutzer kann nur Tasks unter seiner Benutzerkennung durch SM2 überwachen lassen.
Einschränkung: Die Task SM2U, die die benutzerspezifischen Messwertedateien bearbeitet, kann nicht überwacht werden.
FILE =
Vereinbart die benutzerspezifische Messwertedatei.
FILE = *STD
Die benutzerspezifische Messwertedatei wird mit voreingestellten Dateiattributen unter dem Standardnamen $userid.SM2.TASKSTATISTIK.nnnn
angelegt (siehe Tabelle 168 „Dateiattribute der benutzerspezifischen Messwertedatei (SM2) im Abschnitt "START-TASK-MEASUREMENT").
FILE = *BY-LINK-NAME
Der Benutzer bestimmt den Dateinamen und weitere Dateieigenschaften selbst (siehe Tabelle 168 „Dateiattribute der benutzerspezifischen Messwertedatei (SM2) im Abschnitt "START-TASK-MEASUREMENT"). Die Zuordnung der Datei erfolgt über den Dateikettungsnamen PALINK. Der Benutzer muss vor Aufruf des Kommandos START-TASK-MEASUREMENT für die zu verwendende Datei einen TFT-Eintrag mit dem Dateikettungsnamen PALINK
erzeugen (siehe Kommando ADD-FILE-LINK).
PCOUNTER-INTERVAL =
Bestimmt das Intervall der Stichproben für die Befehlszähler-Statistik in CPU-Millisekunden, der von der überwachten Task verbrauchten CPU-Zeit.
PCOUNTER-INTERVAL = *NONE
Die Befehlszähler-Statistik ist nicht eingeschaltet.
PCOUNTER-INTERVAL = <integer 1..10000>
Intervall der Stichproben in CPU-Millisekunden verbrauchte CPU-Zeit. (Es werden nur solche Stichproben erfasst, die im Zustand TU ermittelt wurden).
SVC-STATISTICS =
Die SVC-Aufrufe der zu vermessenden Task werden aufgezeichnet und in die benutzerspezifische Messwertedatei geschrieben.
SVC-STATISTICS = *OFF
Die SVC-Statistik ist nicht eingeschaltet.
SVC-STATISTICS = *ON
Die SVC-Statistik ist eingeschaltet. (Es werden nur solche SVCs erfasst, die im Zustand TU aufgerufen werden.)
LOAD-INFO =
Legt fest, zu welchem Zeitpunkt die Modullade-Information erfasst werden soll.
LOAD-INFO = *STD
Die Modullade-Information wird nur bei Programmstart und bei Programmbeendigung erfasst (bzw. bei Messbeginn und Messende).
LOAD-INFO = *DETAILED
Die Modullade-Information wird bei Programmstart (bzw. bei Messbeginn) und bei jeder Lade- oder Entladeaktivität der Task erfasst.
Wird dieser Operand angegeben, kann SM2-PA > V1.0 exakt die erfassten Adressen in modulrelative Adressen umrechnen. Allerdings ist der Erfassungsaufwand höher, insbesondere dann, wenn innerhalb des Programms häufig Lade- oder Entladevorgänge stattfinden.
Kommando-Returncode
(SC2) | SC1 | Maincode | Bedeutung |
---|---|---|---|
0 | CMD0001 | Ohne Fehler | |
32 | NPS0050 | Systemfehler in SM2-Modulen. Kommando abgewiesen | |
64 | NPS0044 | Keine Berechtigung zum Überwachen der Task. Kommando abgewiesen | |
64 | NPS0045 | Task wird bereits von SM2 überwacht | |
64 | NPS0046 | Task-Überwachung nicht durch START-TASK-MEASUREMENT eingeleitet. Kommando abgewiesen | |
64 | NPS0047 | Angegebene Task existiert nicht | |
64 | NPS0051 | Angegebene Task darf vom Benutzer nicht überwacht werden | |
64 | NPS0065 | Keine weiteren Tasks können überwacht werden | |
64 | NPS0066 | Ungültige Dateimerkmale bei benutzerspezifischer Messwertedatei | |
64 | NPS0067 | DVS-Code '(&00)' bei Makroaufruf '(&01)' für die benutzerspezifische Messwertedatei |
Dateiattribute der benutzerspezifischen Messwertedatei
Dateiattribut | FILE = *STD | FILE = *BY-LINK-NAME |
---|---|---|
Definition der Dateimerkmale | vorbesetzt | wählbar |
Dateiname | $userid.SM2.TASKSTATISTIK.tsn | dateiname |
Blocklänge | BUFFER-LENGTH=STD(2) | BUFFER-LENGTH=STD(zahl) |
Speicherplatz-Zuweisung | SPACE = RELATIVE | SPACE = RELATIVE |
Zugriffsmethode | SAM | keine Wahlmöglichkeit, SAM-Format ist zwingend! |
Eröffnungsmodus | EXTEND | keine Wahlmöglichkeit, existierende Datei wird stets fortgeschrieben |
Format der Datenblöcke | BLOCK-CONTROL-INFO | BLOCK-CONTROL-INFO = PAMKEY / NO / WITHIN-DATA-BLOCK |
Der Operand BLOCK-CONTROL-INFO=*NO wird wie BLOCK-CONTROL-INFO= *WITHIN-DATA-BLOCK behandelt, weil für die Datei nur das SAM-Format zugelassen ist.
Hinweise
Für die Erstellung von modulbezogenen Befehlszähler- und SVC-Statistiken wird die Ladeinformation (Ladeadresse und Länge) jedes Moduls benötigt, der in das vermessene Programm eingebunden ist oder der durch das vermessene Programm nachgeladen wird. Diese Modulinformation wird von SM2 bei Programmbeendigung oder bei Messbeendigung durch STOP-TASK-MEASUREMENT ermittelt und in die Messwertedatei geschrieben.
Unter bestimmten Umständen kann die Modulinformation von SM2 nur unvollständig oder gar nicht geliefert werden:
Keinerlei Information wird geliefert, wenn während des zu vermessenden Programmlaufs die Benutzer-Taskmessung durch den SM2-Verwalter verboten wird (MODIFY-USER-ADMISSION TASK=*INHIBIT).
Keinerlei Information wird geliefert, wenn während des zu vermessenden Programmlaufs der SM2 entladen wird (STOP-SUBSYSTEM SUBSYSTEM-NAME=SM2).
Keine Information wird für Module geliefert, die während des zu vermessenden Programmlaufs entladen wurden.
Unvollständige Information wird geliefert, wenn das zu vermessende Programm mit Overlay-Technik arbeitet. Stichproben und SVCs, die auf überladene Module entfallen, werden dem bei Messbeendigung geladenen Modul zugeordnet.
Keine Information wird geliefert für Module bzw. Subsysteme, die als Shared Code geladen sind.
Keine Information wird für Programme geliefert, die ohne Option zur Testunterstützung gebunden wurden.
Keine Information wird für Code-Teile geliefert, die nicht über Ladevorgänge erzeugt wurden (z.B. wenn das Coding per MOVE-Befehl in den dynamisch angeforderten Speicher gebracht gebracht wurde).