[go: up one dir, main page]

DE2558368A1 - Real time user program run time measurement - is designed for economical retrospective application to subscriber data processing systems - Google Patents

Real time user program run time measurement - is designed for economical retrospective application to subscriber data processing systems

Info

Publication number
DE2558368A1
DE2558368A1 DE19752558368 DE2558368A DE2558368A1 DE 2558368 A1 DE2558368 A1 DE 2558368A1 DE 19752558368 DE19752558368 DE 19752558368 DE 2558368 A DE2558368 A DE 2558368A DE 2558368 A1 DE2558368 A1 DE 2558368A1
Authority
DE
Germany
Prior art keywords
program
time
command
application program
data processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE19752558368
Other languages
German (de)
Inventor
Bernd Dipl Ing Steuer
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens Corp
Original Assignee
Siemens Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens Corp filed Critical Siemens Corp
Priority to DE19752558368 priority Critical patent/DE2558368A1/en
Publication of DE2558368A1 publication Critical patent/DE2558368A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3419Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3419Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
    • G06F11/3423Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time where the assessed time is active or idle time
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/88Monitoring involving counting

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

A method of measuring the time consumption of a user program in a data processing system is designed to be applicable to existing systems constructed without run time measurement. The method enables exact measurements whilst requiring relatively little expenditure on measurement devices and additional programs, and is partic. applicable to real-time operation of subscriber systems. When the user program starts to run, a peripheral clock generator (PE) with defined duration greater than the user program run time is activated along with an auxiliary program which measures the time taken. The auxiliary program contains only a few instructions in a repetitive loop of constant cycle time whose iterations are recorded in a counter.

Description

Verfahren zur Zeitaufwandsmessung bei der Ausführung eines Anwen-Method for measuring the time required when executing an application

dungsprogramms in einer Datenverarbeitungsanlage.application program in a data processing system.

Bei Datenverarbeitungsanlagen stellt sich die Aufgabe, möglichst ge naue Angaben über die Laufzeit von Anwendungsprogrammen zu erhalten.In the case of data processing systems, the task arises, as far as possible Obtain precise information about the runtime of application programs.

Dies ist besonders wichtig bei Datenverarbeitungsanlagen, die im Echt-Zeit-betrieb arbeiten, wie es z.B. bei Datenverarbeitungsanlagen ist, die in Vermittlungsanlagen eingesetzt sind. Auch Prozessrechner und Datenverarbeitungsanlagen mit Teilnehmerbetrieb gehören dazu. Die erwähnten Angaben über die Laufzeit von Anwendungsprogram men geben Aufschlüsse über die Leistungsfähigkeit und damit die Belastbarkeit solcher Datenverarbeitungsanlagen.This is particularly important in data processing systems that operate in real-time work, as it is e.g. with data processing systems in switching systems are used. Also process computers and data processing systems with participant operation belong to. The information mentioned about the runtime of application programs provide information about the performance and thus the resilience of such Data processing systems.

Die erwähnte Laufzeit kann z.B. mit Hilfe von Geräten angezeigt werden, die in die betreffende Datenverarbeitungsanlage eingebaut sind.The mentioned runtime can e.g. be displayed with the help of devices, which are built into the relevant data processing system.

Ein nachträglicher Einbau solcher Geräte in eine Datenverarbeitun@sanlage ist sehr teuer und läßt sich wegen der dafür erforderlichen Eingriffe in die Anlage in der Praxis vielfach nicht durchführen.A subsequent installation of such devices in a data processing system is very expensive and can be because of the necessary interventions in the system often fail to do so in practice.

Es ist bekannt, sich stattdessen mit Hilfe von Simulationsmodellen zu behelfen (siehe angewandte Inofrmatik 8/72, Seite 373 bis 378) Es hängt aber sehr vom Anwendungsfall ab, ob dieses Verfahren eingesetzt wer den kann. Außerdem sind die erzielten Angaben, die r,;p dabei erhält, nicht sehr genau. Die Laufzeit eines Programes kann auch dadurch ermittelt werden, daß man anhand eines Programmprotokolls die Qerationszeiten der verschiedenen Befehle addiert, wobei der Ablauf des Programmes unabhängig von der Datenverarbeitungsanlage rechnerisch nachgebildet wird. Offensichtlich kann man dieses Verfahren nur bei ganz kurzen hnogra,m.en anwenden, da sonst der Arbeitsaufwan viel zu zeitraubend und zu umständlich ist.It is known to use simulation models instead to help (see Applied Inofrmatics 8/72, pages 373 to 378) But it depends It depends very much on the application whether this method can be used. aside from that the information obtained, which r,; p receives, is not very precise. the period of a program can also be determined by using a program log the Qerationszeiten of the various commands are added, whereby the sequence of the program is computationally simulated independently of the data processing system. Apparently this procedure can only be used for very short hnogra, m.en, otherwise the Labor is far too time consuming and cumbersome.

Die Erfindung zeigt nun einen Weg, wIe man auch bei Datenverarbeitungsenlagen, die keine Einrichtungen zur Bemessung von Programmlaufzeiten haben, mit verhältnismäßig geringen Aufwand an Messeinrichtungen und zusätzlichen Programmen genaue Messungen von Programmlaufzeiten durchführen kann.The invention now shows a way, how one can also with data processing systems, who do not have any facilities to measure program duration, with proportionate low cost of measuring equipment and additional programs precise measurements of program runtimes.

Die Erfindung betrifft also ein Verfahren zur Zeitaufwandsmessung bei der Ausführung eines Anwendungsprogrammes in einer Datenverarbeitungsanlage. Dieses Verfahren ist dadurch gekennzeichnet, daß a) zugleich mit dem Start des Anwendungsprogrammes ein als peripheres Gerät an die Zentraleinheit angeschlossener Zeitgeber angelassen wird, der eine vorgegebene Zeitspanne abmisst, die sicher größer ist, als die Zeitspanne für den Ablauf des Anwendangsprogramms, und außerdem ein Hilfszeitprogramm wirksam gemacht wird, das eine niedrigere Priorität als das Anwendungsprogramm hat und bei seiner Ausführung zugleich die dafür aufgewendete Zeitspanne misst, daß b) das nur wenige Programmbefehle umfassende Hilfszeitprogramm in sich wiederholenden Befehlsschleifen konstanter Zeitdauer 2usgeführt wird, wobei die Befehlsschleifen zur Feststellung einer Maßzahl für die für das Hilfszeitprogramm insgesamt aufgewendete Zeitspanne durch einen Meßzähler gezählt werden und daß c3 beim Ende der vorgegebenen Zeitspanne das Hilfszeitprograinm unwirksam gemacht wird und die Maßzahl für die dafür aufgewendete Zeitspanne an eine periphere Einrichtung ausgegeben wird, sodaß sich die für das Anwendungsprogramm aufgewendete Zeit als Differenz zwischen der durch den Zeitgeber vorgegebenen Zeitspanne und der ausgegebenen und für das Hilfszeitprogramm aufgewenoffieten Zeitspanne ergibt.The invention thus relates to a method for measuring the expenditure of time when executing an application program in a data processing system. This method is characterized in that a) simultaneously with the start of the application program started a timer connected to the central unit as a peripheral device which measures a predetermined period of time which is certainly greater than the period of time for the execution of the application program, and an auxiliary time program is also effective is made that has a lower priority than the application program and at its execution at the same time measures the time expended for b) that only Auxiliary time program comprising a few program commands in repetitive command loops constant duration 2us is carried out, the command loops for determination a measure of the total time spent on the auxiliary time program are counted by a measuring counter and that c3 at the end of the predetermined period of time the auxiliary time program is made ineffective and the measure for the time spent on it Period of time is issued to a peripheral device, so that the Application program time spent as the difference between that by the timer specified time span and the output and expended for the auxiliary time program Time span results.

Vorteilhafterweise ist der Aufwand für dieses Verfahren sehr gering denn außer dem Zeitgeber wird im wesentlichen nur das nur wenige Programmbefehle umfassende Hilfszeitprogramm benötigt. Der Mems7.äh-1er zur Zählung der Befehlsschleifen kann mit Hilfe eines Speicherplatzes in der Zentraleinheit der Datenverarbeitungsanlage verwirklicht werden, wie noch erläutert werden wird. Die Laufzeit des z.B.The effort for this method is advantageously very low because apart from the timer there is essentially only a few program instructions comprehensive auxiliary time program is required. The Mems7.äh-1er for counting the command loops can with the help of a memory location in the central unit of the data processing system can be realized, as will be explained. The running time of e.g.

aus einem Additionsbefehl und einem Rücksprungbefehl bestehenden Hilfszeitprogramm für ein Durchlaufen einer einzelnen Schleife läf3t sich leicht aus den Operationszeiten für diese Befehle ermitteln.auxiliary time program consisting of an addition command and a return command operating times can easily be used to run through a single loop for these commands.

Zur Ermittlung der für das Anwendunsprogramm aufgewendeten Zeitsltanne ist dann von der durch den Zeitgeber vorgegebenen Zeitspanne diejenige Zeitspanne abzuziehen, die sich aus dem Produkt der durch den Messzähler gelieferten Maßzahl und der Laufzeit für das Durchlaufen einer Befehlsschleife ergibt.To determine the time spent on the application program is then that period of time from the period of time specified by the timer subtract that result from the product of the measure delivered by the measuring counter and the runtime for executing a command loop.

Die Zeitaufwandsmessung kann auch auf einen Teil des Anwendungspro gramms begrenzt werden, der zwischen zwei vorbestimmten Stellen dieses Programms liegt. Hierzu werden mit Hilfe eines Eingabeprogramms an diesen Stellen Programmbefehle eingesetzt, die an der ersten vorbestimmten Stelle die Zeitaufwandsmessung anlassen und an der zweiten vorbestimmten Stelle beenden. Nach der Messung können dann mit Hilfe eines Betriebsprogrammes die eingesetzten Programmbefehle ent fernt werden. Ein derartiges Beispiel für das erfindungsgemäße Ver fahren wird im folgenden anhand mehrerer Figuren erläutert.The time expenditure measurement can also be applied to part of the application pro between two predetermined points in this program lies. For this purpose, program commands are created at these points with the help of an input program are used, which start the time measurement at the first predetermined point and terminate at the second predetermined location. After the measurement you can use The program commands used can be removed with the help of an operating program. Such an example for the inventive method is based on the following several figures explained.

Figur 1 zeigt ein Blockschaltbild einer Datenverarbeitungsanlage, in dem die für das erfindungsgemäße Verfahren infrage kommenctc:n Einrich tungen gezeigt sind.Figure 1 shows a block diagram of a data processing system, in which those for the method according to the invention come into question ctc: n devices are shown.

Figur 2 zeigt drei Betriebsprogramme, gemäß denen beispielwei0"e se das erfindungsgemäße Verfahren abgewickelt werden kann.Figure 2 shows three operating programs, according to which, for example, "e se the method according to the invention can be handled.

Figur 3 zeigt schematisch ein Anwendungsprogramm, bei dem zwei Stel len durch Befehlsadressen bestimmt sind, die in die Datenverarbeitungsanlage eingegeben worden sind.Figure 3 shows schematically an application program in which two Stel len are determined by command addresses entered into the data processing system have been.

Zu der in Figur 1 gezeigten Datenverarbeitungsanlage gehöron die Zen traleinheit ZE und die peripheren Einheiten PE. Ferner gehört d@zu noch die Eingabeeinrichtung BBS, mit deren Hilfe die Befehlsadressem in die Datenverarbeitungsanlage eingegeben werden, welche die beiden erwähnten Stellen des Anwendungsprogramms bestimmen. das gerade zu untersuchen ist. An die Zentraleinheit ZE ist noch der Meßgsber @d angeschlossen, und zwar über die Leitungen as t und 5, über die P..The data processing system shown in FIG. 1 includes the Zen central unit ZE and the peripheral units PE. Furthermore, d @ belongs to the input device BBS, with the help of which the command addresses are entered into the data processing system which determine the two mentioned places of the application program. the is currently to be investigated. The measuring transmitter @d is still connected to the central unit ZE, namely via the lines as t and 5, via the P ..

stimmte Signale zwischen dem Meßgeber und der Zentraleinheit ibertra gen werden. Bei der Zentraleinheit ZE ist noch der Speicherplatz MZ gezeigt, an dem Daten vorübergehend gespeichert werden, durch die beim Ablauf des Hilfszeitprogramms zugleich die dafür aufgewendete Zeitspanne angegeben wird. Solche Daten können beim Ende der beim Verfahren vorgegebenen Zeitspanne z.B. über die Einricitung BBS ausgegeben werden.Correct signals between the measuring transducer and the central unit ibertra be genes. In the case of the central unit ZE, the memory location MZ is also shown the data are temporarily stored, by the expiry of the auxiliary time program at the same time the time span used for this is indicated. Such data can be used in the The end of the period of time specified in the procedure, e.g. output via the BBS facility will.

Bei deri in Figur 2 gezeigten Beispielen für Betriebaprogramme zur Abwicklung des erfindungsgemäßen Verfahrens handelt es sich um Programm 1 = Eingabeprogramm, um das Programm 2 = Meßzeitprogramm und um das Programm 3 = Hilfszeitprogramm. Die über die Eingabeein richtung BBS zugeführten Befehlsadressen werden mit Hilfe des Eingabeprogramms in die Datenverarbeitungsanlage eingegeben. Dieses Eingabeprogramm wird durch einen Programmbefehl eingeleitet, der die Eingabe der Adresse Adr.1 der ersten vorbestimmten Stelle des Anwendungsprogramms bewirkt. Daraufhin werden an di eser Stelle d.ez Anwendungsprogramms als Meßhilfe bestimmte Programmbefehle eingesetzt. Diese Programmbefehle veranlassen die Einsetzung eines rreiæ teren Programmbefehls an der durch die zweite Adresse Adr.2 vorbestimmten Stelle des Anwendungsprogramms und machen das Hilfszeitprogramm wirksam. Nach der Eingabe der Adresse Adr.2 über die Ein richtung BES und vorübergehender Zwischenspeicherung dieser Adresse wird an der durch diese Adresse vorbestimmten zweiten Stelle des Anwendungsprogramms durch den in das Anwendungsprogramm berp.,it.C eingesetzten erwähnten weiteren Programmbefehls einen Stoppbefehl für die Abwicklung des Anwendungsprogramms eingesetzt, der zugleich.In the examples of operating programs shown in FIG Processing of the method according to the invention involves program 1 = input program, around program 2 = measuring time program and around program 3 = auxiliary time program. the Via the input device BBS supplied command addresses are with the help of the Input program entered into the data processing system. This The input program is initiated by a program command that allows the input of the Address Adr.1 of the first predetermined position in the application program. Thereupon At this point in the application program, certain program commands are used as a measuring aid used. These program commands cause the introduction of a wider program command at the place of the application program predetermined by the second address Adr.2 and make the auxiliary time program effective. After entering the address addr. 2 via the facility BES and temporary caching of this address is at the second position of the application program predetermined by this address by the mentioned additional program command used in the application program berp., it.C used a stop command for the execution of the application program, which at the same time.

veranlaßt, daß auf die Beendigung des Hilfszeitprogramms gewartet wird, Zum Eingabeprogramm selber gehören demgemäß die Anweisungen: BBS-Eingabe: Adr.1, Messhilfe 1 in zu untersuchendes Programm einbauen, BBS-Einhgabe: Adr.1 und Adr.2 zwischenspeichern.causes that to wait for the termination of the auxiliary time program Accordingly, the following instructions belong to the input program itself: BBS input: Add addr. 1, measuring aid 1 in the program to be examined, BBS input: addr. 1 and Buffer addr. 2.

Mit dem Wirksamwerden des Hilfszeitprogramms wird zunächst dessen erster Programmbefehl ausgeführt, der das ilesszeit:rogz für das Anlassen und den Betrieb des Zeitgebers MG startet. Weitere Programmbefehle des Hilfszeitprogramms stellen den durch den Speicherplatz MZ in der zentralen Einrichtung gebildeten Messzähler auf seine Anfangsstellung ein und veranlassen den wiedergholten Durchlauf von Befehlsschleifen des Hilfszeitprogramms, dIe dann durch diesen tie.snzc.hler gezählt werden, bis das Hilfszeitprogramm beendet wird. Diese Zählung setzt aber nicht bereits nach Abwicklung des ersten Programmbefehis des Hilfszeitprogramms ab sondern setzt erst dann ein, wenn der zu untersuchende Abschnitt des Anwendungsprogramms abgewickelt ist. Das Hilfszeitprogramm hat ja eine niedrigere Priorität als eas Anwendungsprogramm. Vor der Ausführung eines Programmbefehls wirkt sich daher die Berücksichtigung der Priorität anstehender Programme derart aus, daß zunächst diejenigen Programbefehle abgewickelt wer den, die zum Programm mit der jeweils höchsten Priorität gehören.When the auxiliary time program comes into effect, its first program command executed, the idle time: rogz for starting and the Operation of the timer MG starts. Further program commands of the auxiliary time program represent the measurement counter formed by the storage location MZ in the central facility to its initial position and cause the repeated execution of command loops of the auxiliary time program, which are then counted by this tie.snzc.counter until the auxiliary time program is ended. This count does not, however, already continue Processing of the first program instruction of the auxiliary time program but only sets when the section of the application program to be examined is handled is. The auxiliary time program has a lower priority than eas application program. Before executing a program command, the consideration of the Priority of upcoming programs in such a way that first those program commands that belong to the program with the highest priority in each case.

Jedoch wird noch vor Abwicklung eines auf die Stelle mit der Adresse Adr.1 folgenden Programmbefehls des Anwendungsprogramms durch den ersten Programmbefehl des Hilfszeitprogrammes veranlaßt, daß das Meßzeitprogramm ausgelöst wird, wodurch zunächst der Zeitgeber MG gestartet wird und daß dann bewirkt daß auf den Ablauf der vorbestimmte Zeitspanne gewartet wird, innerhalb der der zu untersuchende Programmabschnitt abgewickelt wird. Das Ende der Zeitspanne wird vom Meßgeber durch ein Signal gemeldet, worauf durch einen Programmbefehl des Messzeitprogramms das Hilfszeitprogramm beendet wird. Dies hatte Ja inzwischen eingesetzt, da vor dem Ablauf der vorbestimmten Zeitspanne auch bereits der zu untersuchende Abschnitt des Anwendungsprogramms abgewickelt worden ist. Ein weiterer Programmbefehl des Messzeitprogramms bewirkt dann die Ausgabe der Maßzahl des Zählerstandes des Meßzählers MZ und damit die Angabe der dazugehörigen Zeitspanne. Zum Meßzeitprogramm gehören demgemäß die Anweisungen: Zeitgeber starten, Warten auf Ende der Zeitspanne, Prow gramm 3 beenden, BBS-Ausgabe: Meßzähler. Zum Hilfszeitprogramm gebe: ren die bereits behandelten Anweisungen: Programm 2 starten MCf::y,äh leer: = O, Meßzähler: +1, wobei die letztere Anweisung in einer prow graininschleife liegt.However, before the transaction is carried out, the address will be sent to the address Addr.1 following program command of the application program by the first program command of the auxiliary time program causes the Measuring time program triggered is, whereby first the timer MG is started and that then causes waiting for the predetermined period of time to elapse within which the to be examined Program section is processed. The end of the period is indicated by the encoder a signal is reported, whereupon the Auxiliary time program is ended. This had started in the meantime, since before The section to be examined has already expired after the predetermined period of time of the application program has been processed. Another program command of the The measuring time program then causes the output of the measure of the counter reading of the measuring counter MZ and thus the specification of the associated time span. Belong to the measuring time program accordingly the instructions: start timer, wait for the end of the time span, prow End gram 3, BBS output: measuring counter. They are already giving to the auxiliary time program treated instructions: start program 2 MCf :: y, uh empty: = O, measuring counter: +1, the latter instruction being in a prow grainin loop.

Das Schema für den Ablauf des Anwendungsprogramms, das in Figur 3 gezeigt ist, gibt einen Überblick über die vorstehend beschriebenen Vorgänge. An der durch die Adresse 1 bestimmten Stelle des Arnqendungsprogramms ist eine erste Meßhilfe eingebaut, die Programmbefehle umfaßt, durch die das Programm 3 gestartet wird und durch die die Meßhilfe 2 an -der Adresse 2 eingebaut wird. Je nach Zweckmäßigkeit kann der zuerst angegebene oder der danach angegebene Befehl als erster ausgeführt werden. In jedem Fall ist--nach Ausführung diese 5er Befehle der Zeitgeber MG angelassen und das Hilfszeitprogramm wirksam gemacht, sodaß nach Ausführung des zu untersuchenden Abschnitts des Anwendungsprogramrns die Zählung durch den Meßzähler MZ einsetzt. Außerdem ist an der durch die Adresse Adr.2 bestimmten Stelle des Anwendungsprogramms die Meßhilfe 2 eingebaut, die das Stoppen des Anwendungsprogramms und das Warten auf das Ende des Hilfszeitprogramms veranlaßt, das seinerseits letzten Endes durch den Zeitgeber MG beendet wird.The scheme for the execution of the application program, which is shown in FIG is shown gives an overview of the operations described above. At the place in the application program determined by address 1 is a first Built-in measuring aid that includes program commands by which program 3 is started and through which measuring aid 2 is installed at address 2. Depending on the expediency the command specified first or the command specified after it can be executed first will. In any case, the timer MG is started after these 5 commands have been executed and made the auxiliary time program effective, so that after the execution of the investigation Section of the application program starts counting by the measuring counter MZ. In addition, it is at the point in the application program determined by address Adr.2 built-in measuring aid 2, which stops the application program and waits caused by the end of the auxiliary time program, which in turn is ultimately triggered by the timer MG is terminated.

Das Einbauen der Meßhilfen in das Anwendungsprogramm kann in an sich bekannter Weise z.B. dadurch geschehen, daß sich dort zunächstbefindliche Befehle des Anwendungsprogramms durch die Meßhilfen ausgc;-wechselt werden und in einen zur Zentraleinheit gehörenden Zwischenspeicher übertragen werden. Nach Abschluß des Verfahrens zur Zeitaufwandsmessung können dann mit Hilfe eines weiteren Betriebsprogramms die beim Anwendungsprogramm zunächst vorgenommenen vorübergehenden Programmanderungen rückgängig gemacht werden, wobei die Meßhilfen durch die zwischengespeicherten Programmtefehle des Anwendungsprogramms ersetzt werden (siehe z.ß. auch DAS 20 10 746).The installation of the measuring aids in the application program can in itself in a known way, for example, by the fact that there are initially commands of the application program replaced by the measuring aids will and transferred to a buffer belonging to the central unit. To Completion of the method for time measurement can then be done with the help of a further Operating program the temporary ones initially made in the application program Program changes can be reversed, with the measuring aids being cached Program errors of the application program are replaced (see also DAS 20 10 746).

Der Zeitgeber MG kann zweckmäßigerweise dadurch betrieben werden, daß er eine vorbestimmte Anzahl von Takten eines zur Datenverarbeitungsanlage gehörenden Taktgebers zählt und dadurch die vorgegeben@ Zeitspanne abmißt. Diese Takte werden dem Zeitgeber IfiG über die Leitung t von der Zentraleinheit ZE her zugeführt. Über die Leitung a wird der Taktgeber MG angelassen und über die Leitung 5 liefert er nach Ablauf der vorgegebenen Zeitspanne ein Signal zur zentralen Einrichtung ZE, das den Zeitpwlkt für die Beendigung des iiilfszeitprogramms angibt.The timer MG can expediently be operated by that he has a predetermined number of clocks belonging to the data processing system Clock counts and thereby measures the specified @ time span. These bars will be fed to the timer IfiG via the line t from the central unit ZE. Above the line a, the clock generator MG is started and via the line 5 it delivers a signal to the central facility ZE after the specified period of time has elapsed, which specifies the time point for the termination of the auxiliary time program.

Das vorstehend beschriebene Verfahren zur Zeitaufwandsmessung kann auch dazu benutzt werden, die Länge der durch den Zeitgeber MG vorgegebenen Zeitspanne zu messen. Hierzu werden in die Datenverarbeitungsanlage die Adressen unmittelbar aufeinander folgender Befehle des Anwendungsprogramms eingegeben , sodaß für das Anwendungsprogramm selber keine Zeit aufgewendet wird. Die vom Meßzähler MZ gelieferte Maßzahl gibt dann die länge der durch den Zeitgeber -MG vorgegebenen Zeitspanne an. Damit wird gewissermaßen der Zeitgeber MG geeicht. Bei dieser Eichung werden auch Verfälschungen der Zeitaufwandsmessung durch Laufzeiten des Organisationsprogramms vermieden, das übergeordnet ist und die Programmabläufe steuert.The above-described method for measuring time expenditure can can also be used to determine the length of the period of time predetermined by the timer MG to eat. For this purpose, the addresses are entered directly in the data processing system consecutive commands of the application program entered, so that for the Application program itself no time is spent. The one supplied by the measuring counter MZ The measure then indicates the length of the period of time specified by the timer -MG at. The timer MG is thus calibrated to a certain extent. This calibration will be also falsifications of the time expenditure measurement due to runtimes of the organization program avoided, which is superordinate and controls the program processes.

7 Patentansprüche 3 Figuren Leerseite7 claims 3 figures Blank page

Claims (7)

Patentansprüche Verfahren zur Zeitaufwandsmessung bei der Ausführung eines Anwendungsprogramms in einer Datenverarbeitungsanlage, dadurch gekennzeichnet daß a) zugleich mit dem Start des Anwendungsprogramms ein als peripheres Gerät an die Zentraleinheit angeschlossener Zeitgeber (MG) angelassen wird, der eine vorgegebene Zeitspanne abmissts die sicher größer ist, als die Zeitspanne für den Ablauf des Anwendungsprogramms, und außerdem ein Hilfszeitprogramm tProgr. 3) wirksam gemacht wird, das eine niedrigere Priorität als das Anwendungsprogramm hat und bei seiner Ausführung zugleich die dafür aufgewendete Zeitspanne mißt, daß b) das nur wenige Programmbefehle umfassende Hilfszeitprogramm (Progr. 3) in sich wiederholenden Befehlsschleifen konstanter Zeitdauer ausgeführt wird, wobei die 3efehlsschleifen zur Feststellung einer Maßzahl für die für das Hilfszeitprogramm (Progr.3) insgesamt aufgewendete Zeitspanne durch einen MeBzähler (MZ) gezählt werden, und daß c) beim Ende der vorgegebenen Zeitspanne das Iilfszeitprogranw: (Progr. 3) unwirksam gemacht wird und die Maßzahl für die dafür aufgewendete Zeitspanne an eine periphere Einrichtung (BES) ausgegeben wird, sodaß sich die für das Anwendungsprogramm allfgeb wendete Zeit als Differenz zwisclen der durch den Zeitgeber (MG) vorgegebenen Zeitspanne und der ausgegebenen und für das Hilfszeitprogramm (Progr. 3) aufgewendeten Zeitspanne ergibt.Method for measuring the time required for execution an application program in a data processing system, characterized that a) at the same time as starting the application program as a peripheral device the central unit connected timer (MG) is started, which has a predetermined Time span which is certainly greater than the time span for the expiry of the Application program, and also an auxiliary time program tProgr. 3) made effective that has a lower priority than the application program and its Execution at the same time measures the period of time spent on it, that b) only a few Auxiliary time program (program 3) comprising program commands in repetitive command loops is executed for a constant period of time, with the 3 command loops for determination a measure for the total expended for the auxiliary time program (Progr. 3) Period of time can be counted by a measuring counter (MZ), and that c) at the end of the specified Period of time the Iilfszeitprogranw: (Progr. 3) is made ineffective and the measure issued to a peripheral facility (BES) for the period of time used so that the time allfgeb used for the application program is the difference between the period of time specified by the timer (MG) and the one output and the time span used for the auxiliary time program (program 3). 2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Zeitaufwandsmessung auf einen Teil des Anwendungsprogramms begrenzt irl, der zwischen zwei vorbestimmten Stellen l egtf daß hierzu mit Hilfe eines Eingabeprogramms (Progr. 1) an diesen Stellen Programmbefehle eingesetzt werden, die an der ersten vorbestimmten Stelle die Zeitaufwandsmessung anlassen und an der zweiten vorbestimmten Stelle beenden und daß nach der Messung mit Hilfe eines Betriebsprograflr2.s die eingesetzten Programmbefehle entfernt werden. 2. The method according to claim 1, characterized in that the time expenditure measurement limited to a part of the application program that is between two predetermined This is done with the help of an input program (program 1) Make program commands inserted at the first predetermined location start the time measurement and end it at the second predetermined point and that after the measurement with the help of an operating program the program commands used removed. 3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß die betreffenden Programmbefehle bei den vorbestimmten Stellen des Anwendungsprogramms mit Hilfe von Befehlsadressen (Adr. 1, Adr. 2) dieser Stellen in die Datenverarbeitungsanlage eingegeben werden, daß das Eingabeprogramm (Progr. 1) demgemäß durch Eingabe der Adresse (Adr. 1) des zur ersten vorbestimmten Steile des Ana.endungsproz gramms gehörenden Programmbefehls eingeleitet wird und an diese Stelle des Anwendungsprogramms Programrnbefehle einsetzt, die die Einsetzung eines weiteren Programmbefehls an der durch die svieite Adresse (Adr. 2) vorbestimmten Stelle des Anwendungsprogramms vcranlassen und das Hilfszeitprogramm (Progr. 3) wirksam machen. daß nach Eingabe und Zwischenspeicherung der Adresse (Adr. 2) des Programmbefehls der zweiten vorbestimmten Stelle des AnwendunE;sprogramms durch den weiteren Programmbefehl dort ein Stoppbefehl für die Ausführung des Anwendungsprogramms eingesetzt wird und daß mit Wirksamwerden des Hilfszeitprograncis (Progr. 3) zurächst dessen erster Programmbefehl ausgeführt wird, der ein Messzeitprogramm (Progr. 2) für das Anlassen und den Betrieb des Zeitgebers (ic) startet, und daß weitere Programmbefehle den Messzähler (MZ) al: seine Anfangstellung einstellen und den wiederholten Durchlauf vc'.n Befohlsschleifen des Hilfszeitprogramms (Progr 3) veranlassen, die durch den Messzähler (MZ) gezählt werden, bis die Ausführ:ig des Hilfszeitprogramms (Progr. 3) beendet wird.3. The method according to claim 2, characterized in that the relevant Program commands at the predetermined points in the application program with the help of command addresses (addr. 1, addr. 2) of these places in the data processing system be entered that the input program (program 1) accordingly by entering the Address (addr. 1) of the first predetermined part of the an.endungsprogram corresponding program command is initiated and at this point of the application program Program commands are used that require the introduction of a further program command the position of the application program predetermined by the respective address (addr. 2) Leave vcran and activate the auxiliary time program (program 3). that after input and intermediate storage of the address (addr. 2) of the program command of the second predetermined Position of the application program by the further program command there a stop command is used for the execution of the application program and that when it becomes effective of the auxiliary time program (program 3) its first program command is executed first which has a measuring time program (program 2) for starting and operating the timer (ic) starts, and that further program commands the measuring counter (MZ) al: its starting position set and the repeated run vc'.n command loops of the auxiliary time program (Progr 3) to be counted by the measuring counter (MZ) until the execution: ig of the auxiliary time program (program 3) is ended. 4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, daß zum Starten des Zeitgebers (MG) das Messzeitprogramm (Progr. 2) ausgelöst wird, das den Zeitgeber (MG) anlässt und das Warten auf den Ablauf der vorbestimmten Zeitspanne bewirkt, bei deren Ende ein Programmbefehl des Nesszeitprogramms (Progr. 2) die Ausfühnrng des Hilfszeitt'ro gramms (Progr. 3) beendet und ein weiterer Programinbefehl des Messzeitprogramms (Progr. 2) die Ausgabe der Messzahl des Zählerstandes des Messzählers (MZ) und damit die Angabe der dazugehörigen Zeitspanne bewirkt.4. The method according to claim 3, characterized in that for starting of the timer (MG) the measuring time program (program 2) is triggered, which the timer (MG) starts and causes the waiting for the predetermined period of time to elapse, at the end of this a program command of the Nesszeitprogramm (program 2) the execution of the auxiliary time program (program 3) ended and another program command of the Measurement time program (program 2) the output of the measurement number of the counter reading of the measurement counter (MZ) and thus the specification of the associated time span. 5. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß der Zeitgeber (MG) eine vorbestimmte Anzahl von Takten eines zur Datenverarbeitungsanlage gehörenden Taktgebers zählt und dadurch die vorgegebene Zeitspanne abmisst.5. The method according to any one of the preceding claims, characterized in, that the timer (MG) a predetermined number of clocks to the data processing system belonging clock counts and thereby measures the specified time period. 6. Verfahren nach einem der vcrhergehenden Ansprüche, dadurch gelenno zeichnet, daß es für ein Anwendungsprogramm einer Echt-Zeit-Datenverarbeitungsanlage mit mehreren peripheren Einrichtungen (PE) benutzt wird, deren Echt-Zeit-Betrieb mit Hilfe simulierter Ringaben abgewickelt wird, die zugehörIgen peripheren Einrichtungen (PE) zugeführt werden.6. The method according to any one of the preceding claims, characterized gelenno draws that it is for an application program of a real-time data processing system is used with several peripheral devices (PE), their real-time operation with the help of simulated ring hubs, the associated peripheral facilities (PE) are supplied. 7. Verfahren nach einem der Ansprüche 3 bis 6, dadurch gekennseichnet, daß in die Datenverarbeitungsanlage die Adressen unmittelbar aufeinanderfolgende Befehle des Anwendungsprogramms eingegeben werden, sodaß für das Anwendungsprogramm kerne Zeit aufgewendet wird und damit die vom Messzähler (MZ) gelieferte Messzahl die Länge der durch den Zeitgeber (MG) vorgegebenen Zeitspanne angibt.7. The method according to any one of claims 3 to 6, characterized in that that in the data processing system the addresses are immediately consecutive Commands of the application program are entered, so that for the application program No time is expended and thus the measurement number delivered by the measurement counter (MZ) indicates the length of the period of time specified by the timer (MG).
DE19752558368 1975-12-23 1975-12-23 Real time user program run time measurement - is designed for economical retrospective application to subscriber data processing systems Withdrawn DE2558368A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE19752558368 DE2558368A1 (en) 1975-12-23 1975-12-23 Real time user program run time measurement - is designed for economical retrospective application to subscriber data processing systems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19752558368 DE2558368A1 (en) 1975-12-23 1975-12-23 Real time user program run time measurement - is designed for economical retrospective application to subscriber data processing systems

Publications (1)

Publication Number Publication Date
DE2558368A1 true DE2558368A1 (en) 1977-07-07

Family

ID=5965455

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19752558368 Withdrawn DE2558368A1 (en) 1975-12-23 1975-12-23 Real time user program run time measurement - is designed for economical retrospective application to subscriber data processing systems

Country Status (1)

Country Link
DE (1) DE2558368A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AT401206B (en) * 1994-07-21 1996-07-25 Siemens Ag Oesterreich Method for measuring the useful life of a personal computer
EP0762286A1 (en) * 1995-08-24 1997-03-12 Sun Microsystems, Inc. Measuring direct and indirect usage of a central processing unit
WO1999053385A1 (en) * 1998-03-27 1999-10-21 Nokia Networks Oy Procedure for verifying the duration of a process

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AT401206B (en) * 1994-07-21 1996-07-25 Siemens Ag Oesterreich Method for measuring the useful life of a personal computer
EP0762286A1 (en) * 1995-08-24 1997-03-12 Sun Microsystems, Inc. Measuring direct and indirect usage of a central processing unit
US5797115A (en) * 1995-08-24 1998-08-18 Fuller; Billy Measuring direct and indirect usage of a central processing unit
WO1999053385A1 (en) * 1998-03-27 1999-10-21 Nokia Networks Oy Procedure for verifying the duration of a process
US6442509B1 (en) 1998-03-27 2002-08-27 Nokia Networks Oy Procedure for verifying the duration of a process in a telecommunication system based on processor operation

Similar Documents

Publication Publication Date Title
DE3210816C2 (en)
DE68925466T2 (en) Timer circuit
DE3887729T2 (en) Chip card with increased security.
DE2244402A1 (en) DATA PROCESSING SYSTEM
DE2629459C2 (en)
DE68928113T2 (en) Sequence control system for handling commands
DE69121937T2 (en) Method and device for partially running a sequence program for the purpose of troubleshooting
DE69830387T2 (en) Electronic device with method and apparatus for executing command bundles
DE3027734A1 (en) FOLLOW-UP CONTROL DEVICE
DE2911909A1 (en) METHOD AND EQUIPMENT FOR DIGITAL DATA PROCESSING, IN PARTICULAR OF DIGITAL AUDIO SIGNALS
DE68927195T2 (en) Command output control method for vector operations
EP0450116B1 (en) Automation apparatus with single-step test
DE4121637C2 (en) Process for testing control units and test equipment for carrying out the process
DE2558368A1 (en) Real time user program run time measurement - is designed for economical retrospective application to subscriber data processing systems
DE2246863B2 (en) Device for logging the program sequence in a data processing system
EP1119801B1 (en) Method for operating an automation system
DE69031529T2 (en) Memory control system
DE1774421B1 (en) MORE PROGRAM DATA PROCESSING SYSTEM
DE3802082C2 (en)
EP0554485B1 (en) Method for updating timer cells of an automation apparatus and automation apparatus
DE68926097T2 (en) Information processing device, suitable for displaying the performance
EP1594063B1 (en) Method for monitoring control programs
DE2939194A1 (en) Monitoring system for complex program functioning - checks for presence of marked sub-program branch points
DE1774422A1 (en) Data processing system
DE2432024A1 (en) PROCEDURE FOR OPERATING A DATA PROCESSING SYSTEM

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee