DE2939194A1 - Verfahren und schaltungsanordnung zum ueberwachen des ordnungsgemaessen ablaufs eines programms - Google Patents

Verfahren und schaltungsanordnung zum ueberwachen des ordnungsgemaessen ablaufs eines programms

Info

Publication number
DE2939194A1
DE2939194A1 DE19792939194 DE2939194A DE2939194A1 DE 2939194 A1 DE2939194 A1 DE 2939194A1 DE 19792939194 DE19792939194 DE 19792939194 DE 2939194 A DE2939194 A DE 2939194A DE 2939194 A1 DE2939194 A1 DE 2939194A1
Authority
DE
Germany
Prior art keywords
program
subroutine
command
sequence
information
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
DE19792939194
Other languages
English (en)
Inventor
Klaus 8011 Putzbrunn Igler
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 AG
Original Assignee
Siemens AG
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 AG filed Critical Siemens AG
Priority to DE19792939194 priority Critical patent/DE2939194A1/de
Publication of DE2939194A1 publication Critical patent/DE2939194A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/28Error detection; Error correction; Monitoring by checking the correct order of processing

Landscapes

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

Description

  • Verfahren und Schaltungsanordnung zum überwachen des ord-
  • nun#sgemäßen Ablaufs eines Programms.
  • Die Erfindung bezieht sich auf ein Verfahren und eine Schaltungsanordnung zum Uberwachen des ordnungsgemäßen Ablaufs eines Programms, welches aus einer Reihe von gegebenenfalls mehrfach auszuführenden Unterprogrammen besteht, und zur Abgabe eines Fehlermeldesignals bei Feststellen eines fehlerhaften Programmablaufs, in einer im Echtzeitbetrieb arbeitenden Datenverarbeitungsanlage, unter Verwendung von in die Folge auszuführender Programmbefehle eingefügten Prüfbefehlen, deren Auftreten überwacht wird.
  • Es sind bereits ein Verfahren und eine Schaltungsanordnung zum Uberwachen des ordnungsgemäßen Ablaufs eines Programms vorgeschlagen worden (DE-Anm. P 28 46 040.4), welches aus einer Reihe von Programmschritten besteht, die durch Adressen eines Programmschrittzählers festgelegt werden, wobei ein Fehlermeldesignal dann abgegeben wird, wenn ein fehlerhafter Programmablauf festgestellt wird. Zu diesem Zweck wird wenigstens eine festlegbare Zählerstellung des Programmschrittzählers für eine Inbetriebsetzung eines insbesondere durch einen Zähler gegebenen tJberwachungszeitgliedes und nach dessen Inbetriebsetzung für ein Zurücksetzen dieses Uberwachungszeitgliedes in eine Ausgangsstellung herangezogen. Ein bei Erreichen einer anderen Einstellung, insbesondere der Endstellung, des Uberwachungszeitgliedes abgegebenes Ausgangssignal wird dann für eine Fehleranzeige und gegebenenfalls für eine Stillsetzung des weiteren Programmablaufs herangezogen. Obwohl auf diese Art und Weise auf relativ einfache Weise der ordnungsgemäße Ablauf eines Programms überwacht werden kann, ohne daß gesonderte Zustände überwacht werden müssen, die im Zuge des normalen Programmablaufs zu erwarten sind, eignet sich die betreffende Programmüberwachung Jedoch nicht ohne weiteres in den Fällen, in denen umfangreiche Programme abzuwickeln sind.
  • Es sind ferner bereits ein Verfahren und eine Schaltungsanordnung zum überwachen des ordnungsgemäßen Ablaufs eines Programms vorgeschlagen worden (DE-Anm. P 28 46 053.9), wobei zwischen wenigstens zwei aufeinanderfolgend auszuführenden Programmschritten ein gesonderter t;berwachungs Programmschritt ausgeführt wird, durch dessen erstmaliges Ausführen ein Zeitglied derart in Betrieb gesetzt wird, daß es lediglich bei erneutem Auftreten des betreffenden Uberwachungs-Programmschritts in seinem Betriebszustand gehalten wird und erst bei Ausbleiben des betreffenden Uberwachungs-Programmschritts innerhalb einer wählbaren Ablaufzeit zur Abgabe eines Fehlermeldesignals führt. Obwohl hierdurch eine einfache Uberwachung des ordnungsgemäßen Ablaufs eines Programms möglich ist, eignet sich diese bekannte Überwachungsmethode Jedoch ebenfalls nicht ohne weiteres für Fälle, in denen relativ umfangreiche Programme auf ihren ordnungsgemäßen Ablauf zu überwachen sind.
  • Der Erfindung liegt demgemäß die Aufgabe zugrunde, einen Weg zu zeigen, wie besonders umfangreiche Programme auf ihren ordnungsgemäßen Ablauf überwacht werden können, ohne daß dabei ein allzu hoher Überwachungsaufwand erforderlich ist.
  • Gelöst wird die vorstehend aufgezeigte Aufgabe bei einem Verfahren der eingangs genannten Art erfindungsgemäß dadurch, daß lediglich die Ubergangsstellen von einem Unterprogramm zu einem anderen Unterprogramm der im Zuge der Jeweiligen Programmabwicklung auszuführenden Unterprogrammen Jeweils durch ein eine Parameterangabe über die Ebene des zugehörigen Unterprogramms in Bezug auf sämtliche gegebenenfalls abzuwickelnden Unterprogramme und eine Angabe über die Häufigkeit, in der das Jeweilige Unterprogramm im Zuge des Programmablaufs benutzt wird, aufweisendes Prüfbefehlswort gekennzeichnet werden und daß die im Zuge der Jeweiligen Programmabwicklung tatsächlich ermittelten Prüfbefehle als Ist-Befehle für einen Vergleich mit einer vorgegebenen Soll-Befehlsfolge bereitgestellt werden.
  • Die Erfindung bringt den Vorteil mit sich, daß auf relativ einfache Weise der ordnungsgemäße Ablauf auch relativ umfangreicher Programme überwacht werden kann, die aus einer Reihe von gegebenenfalls mehrfach auszuführenden Unterprogrammen bestehen. Durch die Überwachung gemäß der Erfindung erhält man gewissermaßen eine sogenannte Grobspur des Programmablaufs, die in vielen Fällen für die Beurteilung ausreicht, ob der Jeweiligen Programmablauf ordnungsgemäß erfolgt ist oder nicht. Mit anderen Worten ausgedruckt heißt dies, daß in vorteilhafter Weise besondere Stellen des Jeweiligen Programmablaufs gesondert markiert sind und daß das Auftreten dieser Markierungsstellen im Zuge der Jeweiligen Programmabwicklung überwacht wird.
  • Zweckmäßigerweise wird das Auftreten der Prüfbefehle zum Auslösen einer Unterbrechung in der Datenverarbeitungsanlage und zum Auswerten eines in dem Jeweiligen Prüfbefehl neben einer Parameterangabe enthaltenen Operationscodeteiles herangezogen. Hierdurch ergibt sich der Vorteil einer relativ einfachen Ermittelung der Prüfbefehle in der Folge sämtlicher auftretender Befehle.
  • Vorzugsweise werden durch den Jeweiligen Prüfbefehl Speicherstellen eines Speichers bezeichnet, in welchem die in dem Jeweiligen Prüfbefehl enthaltenen genannten Angaben abgespeichert werden. Diese Maßnahme bringt den Vorteil mit sich, daß die für einen Vergleich bereitzustellenden Parameterangaben auf einfache und sichere Weise festgehalten werden können.
  • Zur Durchführung des Verfahrens gemäß der Erfindung ist es zweckmäßig, eine Schaltungsanordnung zu verwenden, die dadurch gekennzeichnet ist, daß mit einem die im Zuge einer Programmabwicklung insgesamt benutzbaren Unterprogramme enthaltenden Programmspeicher eine Befehlsbewertungsschaltung verbunden ist, die lediglich bei Auftreten von die Ubergangsstellen von einem Unterprogramm zu einem anderen Unterprogramm markierenden, Jeweils eine Parameterangabe über die Ebene des zugehörigen Unterprogramms in Bezug auf sämtliche gegebenenfalls abzuwickelnden Unterprogramme und eine Angabe über die Häufigkeit, in der das Jeweilige Unterprogramm im Zuge des Programmablaufs benutzt wird, aufweisenden Prüfbefehlen Jeweils einen Lesebefehl zum Einlesen der in dem Jeweiligen Prüfbefehl enthaltenen besonderen Angaben in einen gesonderten Speicher abgibt, Und daß die in dem Speicher eingespeicherte Folge von besonderen Angaben aus diesem Speicher als Ist-Angaben auslesbar und mittels eines Vergleichers mit einer Jeweils vorgegebenen Folge von Soll-Angaben vergleichbar ist. Hierdurch ergibt sich der Vorteil eines relativ geringen schaltungstechnischen Aufwands beim Überwachen des ordnungsgemäßen Ablaufs eines auch umfangreichen Programms.
  • Vorzugsweise gehört die zuvor erwähnte Befehlsbewertungsschaltung zu einer auf die Zuführung eines entsprechenden Befehls hin selektiv wirksam steuerbaren Uberwachungsschaltung, die den mit dem genannten Speicher verbundenen Vergleicher und eine durch diesen Vergleicher steuerbare Fehlerregistriereinrichtung enthält. Hierdurch ergibt sich der Vorteil eines besonders geringen Aufwands bei der Realisierung der Schaltungsanordnung gemäß der Erz in dung.
  • Anhand von Zeichnungen wird die Erfindung nachstehend an einem Ausführungsbeispiel näher erläutert.
  • Fig. 1 zeigt in einem Blockschaltbild eine Schaltungsanordnung gemäß der Erfindung.
  • Fig. 2 zeigt ein Diagramm, auf welches im Zusammenhang mit der Erläuterung der Arbeitsweise der in Fig. 1 dargestellten Schaltungsanordnung eingegangen werden wird.
  • In Fig.1 ist eine im Echt2eitbebjeb artei#nde Datenverarbeitunesanlage angedeutet, die aus einem zum eigentlichen Betriebssystem BSy gehörenden Zentralprozessor CPU und aus einem zum eigentlichen Anwender-Programmteil gehörenden Programm-Speicher PSp besteht. Von dem Betriebssystem BSy sind periphere Einrichtungen PE steuerbar, die ihrerseits Signale an das Betriebssystem BSy abzugeben vermögen. Die zu dem Betriebssystem BSy gehörende Zentraleinheit CPU ist mit entsprechenden Anschlüssen an einer Adreßbusleitung AB, an einer Steuerbusleitung CB bzw. an einer Datenbusleitung DB angeschlossen.
  • Der eigentliche Programmspeicher PSp der Datenverarbeitungsanlage mag in einer Mehrzahl von Moduln Mod1, Mod2 bis ModN aufgegliedert sein. Jeder Modul kann in eine Anzahl von Modul-Abschnitten untergliedert sein, und Jeder derartige Modul-Abschnitt kann eine Anzahl von Unterprogrammen umfassen, die auch als Prozeduren bezeichnet werden. In Fig. 1 ist Jedoch angedeutet, daß der Modul Mod2 bereits derartige Unterprogramme bzw. Prozeduren umfaßt.
  • Dies sind gemäß Fig. 1 drei Unterprogramme bzw. Prozeduren, die mit Pr#, Pr1 bzw. Pr2 bezeichnet sind. Diese Unterprogramme bzw. Prozeduren sollen nach Maßgabe festgelegter Programmierungsanweisungen aufeinanderfolgen ablaufen. Dies ist in Fig. 1 dadurch angedeutet, daß eine Verzweigung von dem Unterprogramm Pr~ zum Unterprogramm Pr1, ferner eine weitere Verzweigung von diesem Unterprogramm Pr1 zu dem Unterprogramm Pr2, sodann wieder der Übergang zu dem Unterprogramm Pr1 und schließlich der Ubergang zu dem Unterprogramm Pr~ angedeutet ist. Dies bedeutet, daß in drei verschiedenen Ebenen liegende Unterprogramme im Zuge der angedeuteten Programmabwicklung abgewickelt werden. Man spricht in diesem Fall auch davon, daß das betreffende Programm eine sogenannte Schachteltiefe von drei Ebenen besitzt.
  • Bevor auf den zuvor bereits angedeuteten Programmablauf weiteeingegangen wird, seien zunächst die schaltungstechnischen Einzelheiten der in Fig. 1 dargestellten Schaltungsanordnung weiter erläutert. Bezüglich der in dem Programmspeicher PSp angedeuteten Unterprogramme bzw.
  • Prozeduren ist noch anzumerken, daß die beispielsweise als Register aufzufassenden Unterprogrammbereiche Pr~, Pr1 und Pr2 eingangsseitig Jeweils mit einem Adressierungseingang Ae~ bzw. Ae1 bzw. Ae2 gemeinsam an einem Adressierungseingang Ae des Programmspeichers PSp angeschlossen sein mögen. Dieser Adressierungseingang Ae ist an einer Adressierungsleitung AL angeschlossen, über die das Betriebssystem BSy entsprechende Adressen an den Pro- grammspeicher PSp abgibt. Ausgangsseitig sind die betreffenden Unterprogrammregister Pr#, Pr1, Pr2 gemeinsam an einer Datenleitung DL angeschlossen, die über einen Ausgang Dal mit dem Betriebssystem BSy und über einen weiteren Ausgang Da2 mit der Eingangsseite einer Uberwachungsschaltung Uw verbunden ist. An dieser Stelle sei noch angemerkt, daß die in den übrigen Moduln des Programmspeichers PSp enthaltenen Unterprogranimregister mit der Adreßleitung AL und der Datenleitung DL in entsprechender Weise verbunden sein mögen wie die in Fig. 1 näher dargestellten und zuvor betrachteten Unterprogrammregister.
  • Die zuvor erwähnte Uberwachungssschaltung Uw umfaßt unter anderem eine Befehlsbewertungsschaltung Bs, die im vorliegenden Fall im wesentlichen aus einem Decoder Dec besteht.
  • Diesem Decoder Dec wird eingangsseitig Jeweils ein Teil der auf der Datenleitung DL auftretenden Information zugeführt.
  • Handelt es sich bei dieser Information um einen Befehl, so besteht dieser zumindest aus einem Operationscodeteil und aus einem nachfolgenden Operandenteil. Der Operationscodeteil des über die Datenleitung DL Jeweils übertragenen Befehls wird in dem Decoder Dec der Befehlsbewertungsschaltung Bs decodiert. Handelt es sich bei diesem Operationscodeteil um einen ganz bestimmten Operationscodeteil, auf den der Decoder Dec anzusprechen hat, so gibt dieser Decoder Dec ausgangsseitig beispielsweise ein Binärsignal "1 n ab, welches zusammen mit einem von dem Betriebssystem BSy über die Steuerleitung CL abgegebenen entsprechenden binären Steuersignal "1" dazu führt, daß ein in der Uberwachungsschaltung Uw vorgesehenes UND-Glied GA ausgangsseitig ein einen Schalter Sw schließendes Steuersignal (~1") abgibt. Damit wird dann der dem betreffenden Operationscodeteil nachfolgende Operandenteil in einen Speicher M1 eingeschrieben, der ebenfalls zu der Uberwachungsschaltung Uw gehört.
  • Der Speicher Ml ist ausgangsseitig mit der einen Eingangsseite eines Vergleichers Com verbunden. Der Vergleicher Com ist eingangsseitig ferner mit dem Ausgang eines weiteren Speichers M2 verbunden. Ausgangsseitig ist der Vergleicher Com mit einer beispielsweise durch ein Register Reg gebildeten Registriereinrichtung verbunden.
  • Nachdem zuvor der Aufbau der in Fig. 1 dargestellten Schaltungsanordnung erläutert worden ist, sei nunmehr die Arbeitsweise dieser Schaltungsanordnung näher betrachtet. Dazu sei angenommen, daß von dem Betriebssystem BSy her gerade der Modul Mod2 des Programmspeichers PSp angesteuert bzw. adressiert wird. Dieser Vorgang beginnt damit, daß der erste Befehl des Unterprogramms Pr~ aufgerufen wird. Dieser Befehl ist in Fig. 1 mit P## bezeichnet. Er stellt gewissermaßen den Anfangsbefehl der nunmehr ablaufenden Befehlsfolge dar. Dieser Befehl P~~ ist durch eine Linksschraffur als gesonderter Prüfbefehl gekennzeichnet. Damit soll lediglich zum Ausdruck gebracht sein, daß dieser Befehl für das Überwachen des ordnungsgemäßen Ablaufs des Programms ausgenutzt wird. Dieser Befehl besteht ebenso wie alle übrigen, in entsprechender Weise zu berücksichtigenden Prüfbefehle aus einer Parameterangabe über die sogenannte Schachteltiefe und aus einer Zahlenangabe, die eine Information darüber liefert, in welcher Häufigkeit die Jeweilige Unterprogrammebene im Zuge des Programmablaufs angesteuert bzw. benutzt wird.
  • Mit PP ist die erste Unterprogrammebene - die nullte Ebene - bezeichnet, und mit ~ im Anschluß an P~ ist angegeben, daß im Zuge des betreffenden Programmablaufs die betreffende Unterprogrammebene das erstemal benutzt wird.
  • Innerhalb des Unterprogramms Pr# werden die Programmbefehle zunächst soweit ausgeführt, bis der in Fig. 1 ebenfalls durch eine Linksschraffur besonders markierte Programmbefehl P1~ erreicht ist. Bei diesem Programmbefehl handelt es sich ebenfalls um einen Prüfbefehl - also um einen Befehl, der für Prüfzwecke herangezogen wird. Mit Auftreten dieses Programmbefehls P1~ gelangt man zu dem Unterprogramm Pr1 hin. Die betreffende Befehisangabe bedeutet, daß die Unterprogrammebene Pr1 das erste Mal erreicht wird.
  • Im Zuge des Unterprogramms Pr1 werden einige Befehle ausgeführt, bis dort der Befehl P2# erreicht wird, der ebenfalls als Prüfbefehl verwendet wird und der entsprechend durch eine Linksschraffur hervorgehoben ist. Mit Auftreten dieses Befehls gelangt man schließlich zu dem Unterprogramm Pr2 hin, welches gemäß Fig. 1 vollständig abgewickelt wird. Am Ende des Unterprogramms Pr2 tritt ein Programmbefehl P2# auf, der durch eine Rechtsschraffur hervorgehoben ist und der ebenfalls als Prüfbefehl ausgewertet wird.Nach Auftreten dieses Befehls P2# gelangt der Programmablauf wieder zu dem Unterprogramm Prl hin. Dieses Unterprogramm Pr1 wird dann vollständig abgewickelt, wobei der letzte Programmbefehl dieses Unterprogramms Pr1 mit P1# besonders markiert ist (Rechtsschraffur). Mit Auftreten dieses letzten Befehles gelangt die Programmabwicklung wieder zu dem Unterprogramm Prgd hin. Dieses Unterprogramm Pr# wird dann bis zu seinem Ende abgewickelt. Am Ende dieses Unterprogramms Pr# tritt der Befehl P~~ auf, der ebenfalls durch eine Rechtsschraffur hervorgehoben ist. Dieser Programmbefehl P~~ bedeutet wie die entsprechend markierten Programmbefehle P1~ bzw. P2#, daß das Unterprogramm der zugehörigen Unterprogrammebene beendet ist.
  • Sämtliche vorstehend erwähnten besonders markierten Pro grammbefehle werden nun als Prüfbefehle durch die Überwachungsschaltung Uw überwacht. Da die betreffenden Prüfbefehle Jeweils einen Operationscodeteil umfassen, auf den der Decoder Dec der Überwachungsschaltung Uw anspricht, gelangen die neben diesem Operationscodeteil Jeweils vorhandenen Operanden über den dann Jeweils geschlossenen Schalter Sw in den Speicher M1 hinein. Die betreffenden Operanden umfassen dabei die erwähnten Parameterangaben - das sind die Angaben über die Unterprogrammschachteltiefe - und die Angaben über die Häufigkeit, in der das Jeweilige Unterprogramm im Zuge des Programmablaufs benutzt ist. Diese Angaben werden in dem Speicher M1 in der Reihenfolge ihres Eintreffens als Ist-Angaben gespeichert.
  • Gegebenenfalls können die für die Speicherung dieser Angaben dienenden Speicherbereiche durch die einzelnen Prüfbefehle selbst bezeichnet werden.
  • Die in dem Speicher M1 enthaltenen Ist-Parameterangaben werden mittels des Vergleichers Com mit einer vorgegebenen Folge von Soll-Parameterangaben verglichen, die in dem Speicher M2 abgespeichert sein mögen. In dem dem Vergleicher Com ausgangsseitig nachgeordneten Register Reg können Fehlermeldungen in dem Fall registriert werden, daß Abweichungen zwischen den Ist-Angaben und den Soll-Angaben festgestellt werden. Die so registrierten Fehlermeldungen können zur Korrektur der Befehls-Ablauffolge herangezogen werden.
  • Bezüglich der vorstehend erwähnten Prüfbefehle, die in der Uberwachungsschaltung Uw ausgewertet werden, ist noch anzumerken, daß dadurch die Zentraleinheit CPU des Betriebssystems BSy zur Ausführung einer Unterbrechung angesteuert werden kann, und zwar über die Datenleitung DL.
  • In Fig. 2 ist ein möglicher Programmablauf unter Einbeziehung von vier Unterprogrammen bzw. Prozeduren näher veranschaulicht. Dabei erfolgt in der im Zusammenhang mit Fig. 1 erläuterten Art und Weise zunächst der Einstieg in ein erstes Unterprogramm, was durch die Para- meterangabe P~~ markiert ist. Sodann erfolgt der Ubergang in ein zweites Unterprogramm, was mit P1~ markiert ist.
  • Anschließend erfolgt der Ubergang in ein weiteres Unterprogramm, was durch P2# markiert ist. Schließlich erfolgt der Übergang in das vierte Unterprogramm, was durch die Parameterangabe P5~ markiert ist. Mit der Jeweils letzten Angabe ~#~ in der Jeweiligen Parameterangabe ist zum Ausdruck gebracht, daß die betreffende Unterprogramm-Ebene bzw. Prozedur-Schachteltiefe das erste Mal erreicht ist.
  • Nachdem gemäß Fig. 2 Programmbefehle des Unterprogramms der Ebene 3 abgewickelt sind, tritt der Prüfbefehl P3~ erneut auf. Dieser Prüfbefehl bedeutet nunmehr, daß wieder in die nächstniedere Unterprogrammebene 2 übergegangen wird. Nach Ausführen von Programmbefehlen in dieser Programmebene tritt der Prüfbefehl P2# auf. Dieser Programmbefehl bedeutet, daß in die nächstniedere Unterprogrammebene 1 übergegangen wird. Nach Ausführen von weiteren Programmschritten bzw. Programmbefehlen in dieser Unterprogrammebene 1 tritt dann der Prüfbefehl P31 auf.
  • Dieser Prüfbefehl bedeutet den Ubergang in die Unterprogrammebene 3, und zwar nunmehr zum zweiten Mal - dies ist durch die 1 am Ende der Parameterangabe P31 angedeutet. Nach Ausführen von Programmbefehlen in der Unterprogrammebene 3 tritt wieder ein Prüfbefehl P31 auf, der zur Rückkehr in die Unterprogrammebene 1 führt. Nachdem Programmbefehle in dieser Unterprogrammebene 1 ausgeführt sind, tritt der Prüfbefehl P1~ auf, durch den angegeben wird, daß in die erste Programmebene ~ zurückgekehrt wird.
  • Nach Ausführen von Programmbefehlen in dieser Unterprogrammebene ~ tritt schließlich der Prüfbefehl P~~ auf.
  • Damit ist das Ende des Programmablaufs erreicht. Die einzelnen Stellen, an denen die zuvor erwähnten Prüfwörter auftreten, sind in Fig. 2 in Ordinatenrichtung als Zählerstellungen eines Prozedur-Aufrufzählers markiert. In der Abszissenrichtung ist in Fig. 2 die Prozedur-Schachtel- tiefe angegeben. Aus dem dargestellten Verlauf des Ubergangs von einem Unterprogramm zu einem anderen Unterprogramm bzw. von einer Prozedur zu einer anderen Prozedur erkennt man dabei, daß gewis#ermaßen eine Grobspur gezeichnet wird, die sehr wohl eine Aussage über den ordnungsgemäßen Ablauf eines Programms geben kann. Durch Vergleich der betreffenden aufeinanderfolgenden Ist-Angaben mit den bereitgestellten Soll-Angaben läßt sich somit der Jeweiligen Programmablauf auf seine Ordnungsmäßigkeit überwachen.
  • 5 Patentansprüche 2 Figuren Leerseite Leerseite

Claims (5)

  1. Patentansprche Verfahren zum überwachen des ordnungsgemäßen Ablaufs eines Programms, welches aus einer Reihe von gegebenenfalls mehrfach auszuführenden Unterprogrammen besteht, und zur Abgabe eines Fehlermeldesignale bei Feststellen einer fehlerhaften Programmablaufs, in einer im Echtzeitbetrieb arbeitenden Datenverarbeitungsanlage, unter Verwendung von in die Folge auszuführender Programmbefehle eingefügten Prüfbefehlen, deren Auftreten überwacht wird, d a d u r c h g e k e n n z e i c h n e t , daß lediglich die Ubergangsatellen von einem Unterprogramm (Pr~; Perl, Pr2) zu einem anderen Unterprogramm (Pr1; Pr2; Pr#) der im Zuge der jeweiligen Programmabwicklung auszuführenden Unterprogramme jeweils durch ein eine Parameterangabe (z.B. P~) über die Ebene (~) des zugehörigen Unterprogramms (Pr#) in Bezug auf sämtliche gegebenenfalls abzuwickelnden Unterprogramme und eine Angabe ueber die Häufigkeit (#), in der das jeweilige Unterprogramm im Zuge des Programmablaufs benutzt wird bzw. ist, aufweisendes Prüfbefehiswort (z.B. P##) gekennzeichnet werden und daß die im Zuge der Jeweiligen Programmabwicklung tatsächlich ermittelten Prüfbefehle als Ist-Befehle für einen Vergleich mit einer vorgegebenen Soll-Befehlsfolge bereitgestellt werden.
  2. 2. Verfahren nach Anspruch 1, d a d u r c h g e -k en n z e i c h n e t , daß das Auftreten der Prüfbefehle zum Auslösen einer Unterbrechung in der Datenverarbeitungsanlage (BSy) und zum Auswerten eines in dem jeweiligen Prüfbefehl neben den genannten Angaben enthaltenen Operationscodeteiles herangezogen wird.
  3. 3. Verfahren nach Anspruch 1 oder 2, d a d u r c h g e k e n n z e i c h n e t , daß durch den jeweiligen Prüfbefehl Speicherstellen eines Speichers (M1) be- zeichnet werden, in welchem die in dem jeweiligen PrUfbefehl enthaltenen Parameterangaben und Häufigkeits-Angaben abgespeichert werden.
  4. 4. Schaltungsanordnung zur Durchführung des Verfahrens nach einem der Ansprüche 1 bis 3, d a d u r c h g e -k e n n z e i c h n e t , daß mit einem die im Zuge einer Programmabwicklung insgesamt benutzbaren Unterprogramme enthaltenden Programmspeicher (PSp) eine Befehls bewertungsschaltung (Bs) verbunden ist, die lediglich bei Auftreten von die Ubergangsstellen von einem Unterprogramm zu einem anderen Unterprogramm markierenden, Jeweils eine Parameterangabe über die Ebene des zugehörigen Unterprogramms in Bezug auf sämtliche gegebenenfalls abzuwickelnden Unterprogramme und eine Angabe über die Häufigkeit, in der das Jeweilige Unterprogramm im Zuge des Programmablaufs benutzt wird bzw. ist, aufweisenden Prüfbefehlen (z.B. P1~) Jeweils einen Lesebefehl zum Einlesen der in dem Jeweiligen Prüfbefehl enthaltenen Parameterangabe und Häufigkeitsangabe in einen gesonderten Speicher (M1) abgibt, und daß die in dem Speicher (M1) eingespeicherte Folge von Angaben aus diesem Speicher als Ist-Angaben auslesbar und mittels eines Vergleichers (Com) mit einer Jeweils vorgegebenen Folge von Soll-Angaben vergleichbar ist.
  5. 5. Schaltungsanordnung nach Anspruch 4, d a d u r c h g e k e n n z e i c h n e t , daß die Befehlsbewertungsschaltung (Bs) zu einer auf die Zuführung eines entsprechenden Befehls hin selektiv wirksam steuerbaren Uberwachungsschaltung (Uw) gehört, die den mit dem genannten Speicher (M1) verbundenen Vergleicher (Com) und eine durch diesen Vergleicher (Com) steuerbare Fehlerregistriereinrichtung (Reg) enthält.
DE19792939194 1979-09-27 1979-09-27 Verfahren und schaltungsanordnung zum ueberwachen des ordnungsgemaessen ablaufs eines programms Withdrawn DE2939194A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE19792939194 DE2939194A1 (de) 1979-09-27 1979-09-27 Verfahren und schaltungsanordnung zum ueberwachen des ordnungsgemaessen ablaufs eines programms

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19792939194 DE2939194A1 (de) 1979-09-27 1979-09-27 Verfahren und schaltungsanordnung zum ueberwachen des ordnungsgemaessen ablaufs eines programms

Publications (1)

Publication Number Publication Date
DE2939194A1 true DE2939194A1 (de) 1981-05-14

Family

ID=6082033

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19792939194 Withdrawn DE2939194A1 (de) 1979-09-27 1979-09-27 Verfahren und schaltungsanordnung zum ueberwachen des ordnungsgemaessen ablaufs eines programms

Country Status (1)

Country Link
DE (1) DE2939194A1 (de)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3502387A1 (de) * 1985-01-25 1986-07-31 Klöckner-Moeller Elektrizitäts GmbH, 5300 Bonn Verfahren zur ueberwachung von mikroprozessorsystemen und speicherprogrammierbaren steuerungen
DE3704318A1 (de) * 1987-02-12 1988-08-25 Vdo Schindling Verfahren und anordnung zur ueberwachung der funktion eines mikroprozessors
DE4111072A1 (de) * 1990-04-05 1991-10-10 Zexel Corp Verfahren zum feststellen einer stoerung in einem mikrocomputersystem
EP0615188A1 (de) * 1993-03-11 1994-09-14 Gec Alsthom Transport Sa Verfahren zur Überprüfung des eindwandfreien Ablaufs eines Mehrfaden-Computerprogramms

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3502387A1 (de) * 1985-01-25 1986-07-31 Klöckner-Moeller Elektrizitäts GmbH, 5300 Bonn Verfahren zur ueberwachung von mikroprozessorsystemen und speicherprogrammierbaren steuerungen
DE3704318A1 (de) * 1987-02-12 1988-08-25 Vdo Schindling Verfahren und anordnung zur ueberwachung der funktion eines mikroprozessors
DE4111072A1 (de) * 1990-04-05 1991-10-10 Zexel Corp Verfahren zum feststellen einer stoerung in einem mikrocomputersystem
EP0615188A1 (de) * 1993-03-11 1994-09-14 Gec Alsthom Transport Sa Verfahren zur Überprüfung des eindwandfreien Ablaufs eines Mehrfaden-Computerprogramms
FR2702577A1 (fr) * 1993-03-11 1994-09-16 Gec Alsthom Transport Sa Procédé pour contrôler l'exécution correcte d'un programme d'ordinateur multitâche.

Similar Documents

Publication Publication Date Title
EP1097460B1 (de) Integrierte schaltung mit einer selbsttesteinrichtung zur durchführung eines selbsttests der integrierten schaltung
DE3884034T2 (de) Verfahren zur Überprüfung von Computersoftware.
CH654943A5 (de) Pruefeinrichtung fuer mikroprogramme.
DE2735397C2 (de) Überwachungseinrichtung für eine programmgesteuerte Maschine
DE2328058C2 (de) Fehlerdiagnoseeinrichtung in einer digitalen Datenverarbeitungsanordnung
DE69738188T2 (de) Verfahren und apparat für eine erhöhte genauigkeit bei der verzweigungsvorhersage in einem superskalaren mirkroprozessor
EP0629773A1 (de) Diagnoseverfahren für Kraftfahrzeuge zum Überprüfen elektronisch gesteuerter Systeme
DE3751949T2 (de) Verfahren zum Starten eines Untersystems in einem verteilten Verarbeitungssystem
CH660243A5 (de) Vorrichtung zur ablaufverfolgung eines programms.
DE1928202A1 (de) UEberwachungs- und Statistikeinrichtung fuer Datenverarbeitungssysteme
DE2648229A1 (de) Einschaltkreis als urlader fuer digitalrechner
DE2145709B2 (de)
DE69130414T2 (de) Prozessor und Verfahren zur parallelen Verarbeitung
DE19835258B4 (de) Integrierte dynamische Speicherschaltung mit einer Selbsttesteinrichtung
DE69223820T2 (de) Gerät und Verfahren zur Programmfehlerbeseitigung
DE2364323C2 (de) Verfahren zur Behandlung von Unterbrechungsbedingungen in einer Datenverarbeitungsanlage
EP0450116B1 (de) Automatisierungsgerät mit Test in einzelnen Schritten
CH658137A5 (de) Steuereinrichtung mit einem speicher und einer schnittstelle, insbesondere fuer werkzeugmaschinen.
DE2246863C3 (de) Einrichtung zur Protokollierung des Programmablaufs in einer Datenverarbeitungsanlage
DE1191145B (de) Elektronische Zifferrechenmaschine
CH625895A5 (de)
DE3605431A1 (de) Pruefbares elektronisches geraet und verfahren zum pruefen eines solchen geraets
DE2939194A1 (de) Verfahren und schaltungsanordnung zum ueberwachen des ordnungsgemaessen ablaufs eines programms
DE3704318C2 (de) Anordnungen zur Überwachung der Funktion eines Mikroprozessors
DE1774421B1 (de) Mehrprogramm datenverarbeitungsanlage

Legal Events

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