DE3928303A1 - Vorrichtung und verfahren zur unterbrechung eines auf einem datenverarbeitungs-system laufenden datenverarbeitungs-programm, um ein hilfsprogramm auszufuehren - Google Patents

Vorrichtung und verfahren zur unterbrechung eines auf einem datenverarbeitungs-system laufenden datenverarbeitungs-programm, um ein hilfsprogramm auszufuehren

Info

Publication number
DE3928303A1
DE3928303A1 DE3928303A DE3928303A DE3928303A1 DE 3928303 A1 DE3928303 A1 DE 3928303A1 DE 3928303 A DE3928303 A DE 3928303A DE 3928303 A DE3928303 A DE 3928303A DE 3928303 A1 DE3928303 A1 DE 3928303A1
Authority
DE
Germany
Prior art keywords
data processing
interruption
program
processing system
interrupt
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
DE3928303A
Other languages
English (en)
Inventor
Olaf Boehm
Joerg Zanger
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to DE3928303A priority Critical patent/DE3928303A1/de
Publication of DE3928303A1 publication Critical patent/DE3928303A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • G06F9/4484Executing subprograms

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microcomputers (AREA)

Description

Die Erfindung bezieht sich auf eine Vorrichtung, die in der Lage ist, auf Datenverarbeitungs-Systemen laufende Da­ tenverarbeitungs-Programme zu unterbrechen, um ein Hilfspro­ gramm auszuführen und die besonders dazu geeignet ist, nach­ träglich in bestehende Datenverarbeitungs-Systeme eingebaut zu werden.
Die Vorrichtung ist so beschaffen, daß sie einerseits vom auf dem Datenverarbeitungs-System laufenden Datenverarbei­ tungs-Programm mit größtmöglicher Sicherheit nicht abge­ schaltet werden kann und andererseits ein Höchstmaß an Kompatibilität zum gleichen Datenverarbeitungs-System ohne die erfindungsgemäße Vorrichtung aufweist.
Für einige spezielle Datenverarbeitungs-Systeme gibt es bereits Zusatzvorrichtungen, mit deren Hilfe ein auf dem Da­ tenverarbeitungs-System laufendes Datenverarbeitungs-Pro­ gramm unterbrochen werden kann. Das dann ausgeführte Hilfs­ programm dient oft dazu, das abgebrochene Datenverarbeitungs- Programm zu analysieren und zu verändern und bevor das Hilfsprogramm verlassen wird, versucht es das Datenverarbei­ tungs-System bis auf gewollte Veränderungen in den gleichen Zustand zu versetzen, den es beim Aufruf des Hilfsprogramms gehabt hat, so daß das unterbrochene Datenverarbeitungs- Programm nichts von der Unterbrechung bemerken kann.
Die bekannten Vorrichtungen benutzen zur Unterbrechung des Datenverarbeitungs-Programms nur eine Unterbrechungsart des jeweiligen Datenverarbeitungs-Systems, dessen vom Datenver­ arbeitungs-Programm veränderbarer Teil (zum Beispiel der je­ weilige Interrupt-Vektor) dann so gestaltet wird, daß das Datenverarbeitungs-System bei einer gewünschten Unter­ brechung direkt in das Hilfsprogramm verzweigt. Der vom Da­ tenverarbeitungs-Programm veränderbare Teil dieser Unter­ brechungsart kann aber ungehindert vom auf dem Datenverar­ beitungs-System laufenden Datenverarbeitungs-Programm verän­ dert werden, so daß das Hilfsprogramm nicht mehr aufgerufen werden kann. Da das Überschreiben (initialisieren) der Teile der jeweils vorhandenen Unterbrechungsarten, die von Daten­ verarbeitungs-Programmen verändert werden können, oft beim Starten der Datenverarbeitungs-Programme vorgenommen wird, um den Datenverarbeitungs-Programmen einen genau definierten Ausgangszustand bereitzustallen, arbeitet diese Vorrichtung mit vielen Programmen nicht zusammen. Viele solcher Vor­ richtungen müssen sogar das Betriebssystem des jeweiligen Datenverarbeitungs-Systems verändern, was die Kompatibilität des Datenverarbeitungs-Systems zu unausgebauten verschlech­ tert und zusätzliche Kosten für die Änderung des Betriebs­ systems verursacht.
Der Erfindung liegt daher die Aufgabe zugrunde, das auf ei­ nem Datenverarbeitungs-System laufende Datenverarbeitungs- Programm mit größtmöglicher Sicherheit abzubrechen und eben­ so mit größtmöglicher Sicherheit in das jeweilige Hilfspro­ gramm zu verzweigen, wobei eine größtmögliche Kompatibilität zu unausgebauten Datenverarbeitungs-Systemen des gleichen Typs erreicht werden soll.
Diese Aufgabe wird erfindungsgemäß dadurch gelöst, daß der vom Datenverarbeitungs-Programm veränderbare Teil der Unter­ brechungsart, die die Ausführung des Hilfsprogramms einleiten soll, durch die kennzeichnenden Merkmale des Patentanspruchs 1 vor Veränderungen geschützt wird.
Um die Installation der erfindungsgemäßen Vorrichtung in bestehenden Datenverarbeitungs-Systemen zu erleichtern und die Kompatibilität des Datenverarbeitungs-Systems zu unaus­ gebauten Datenverarbeitungs-Systemen zu erhöhen, kann das Hilfsprogramm ganz oder teilweise in Festwertspeichern auf der erfindungsgemäßen Vorrichtung untergebracht werden, eben­ so ein zusätzlicher Speicher, der es ermöglicht, daß das Hilfsprogramm, ohne den Datenverarbeitungs-Systeminternen Speicher wesentlich verändern zu müssen, ablaufen kann. Außerdem kann mit Hilfe dieses zusätzlichen Schreib-Lese- Speichers gemäß dem kennzeichnenden Teil des Unteranspruchs 5 das Hilfsprogramm Datenverarbeitungs-Systeminterne Parame­ ter, die sonst für das Hilfsprogramm nicht rekonstruierbar wären, ermitteln. Ein eventuell beim Schreiben auf Adreßbe­ reiche des Datenverarbeitungs-Systems, die beim Auslesen an­ dere Werte als die zuletzt hineingeschriebenen liefern, aus­ gelöstes Unterbrechungsprogramm kann dazu genutzt werden, Datenverarbeitungs-Systeminterne Parameter besser zu kon­ trollieren. Eine zusätzliche Register-Schaltung gemäß dem kennzeichnenden Teil des Unteranspruchs 2 erleichtert den Unterbrechungsprogrammen die Analyse der Unterbrechungssi­ tuation. Durch den kennzeichnenden Teil des Unteranspruchs 8 wird die Kompatibilität des Datenverarbeitungs-Systems zu dem unausgebauten Datenverarbeitungs-System weiter erhöht, da die erfindungsgemäße Vorrichtung bis auf die vom Datenverar­ beitungs-Programm veränderbaren Teile der Unterbrechungsar­ ten während der Abarbeitung des Datenverarbeitungs-Programms für das Datenverarbeitungs-System unsichtbar ist.
Die mit der Erfindung erzielbaren Vorteile liegen insbe­ sondere darin, daß das Hilfsprogramm mit größtmöglicher Si­ cherheit jederzeit aufgerufen werden kann. Außerdem kann die erfindungsgemäße Vorrichtung so gestaltet werden, daß sie vom Datenverarbeitungs-System und damit auch dem darauf laufenden Datenverarbeitungs-Programm nicht zu erkennen ist, wodurch bestehende Datenverarbeitungs-Systeme mit den zuge­ hörigen Datenverarbeitungs-Programmen so weiterarbeiten, als wäre die erfindungsgemäße Vorrichtung nicht angeschlossen. Das aufgerufene Hilfsprogramm kann den gesamten Zustand des Datenverarbeitungs-Systems analysieren und obwohl das Hilfs­ programm zu seinem Ablaufen oft notwendige Datenverarbei­ tungs-System eigene Parameter, wie z. B. Parameter, die die Bilddarstellung oder die Tastatureingabe beeinflussen, än­ dern muß, kann es vor dem Rücksprung in das unterbrochene Datenverarbeitungs-Programm das Datenverarbeitungs-System in den gleichen Zustand versetzten, den es beim Aufruf des Hilfsprogramms hatte, so daß das unterbrochene Datenverar­ beitungs-Programm von den Aktivitäten des Hilfsprogramms nichts bemerkt.
Die erfindungsgemäße Vorrichtung stellt somit z. B. ein wertvolles Werkzeug für Datenverarbeitungsanwender dar, das je nach dem verwendeten Hilfsprogramm verschiedene Hilfen zur Verfügung stellen kann, z. B.:
  • - Datenverarbeitungs-Programm nach Fehlern durchsuchen
  • - Daten retten, falls das Datenverarbeitungs-System abge­ stürzt ist,
  • - Datenverarbeitungs-Programmeigene Parameter ändern, um das Arbeiten mit diesen Datenverarbeitungs-Programmen zu erleichern.
An einem in den Zeichnungen dargestellten Ausführungsbei­ spiel wird die Erfindung im folgenden näher erläutert.
Das in Fig. 1 dargestellte Datenverarbeitungs-System (1) verwende als zentrales Steuerwerk einen Motorola 68000 Pro­ zessor, anhand welchem das Zusammenspiel der beiden Unter­ brechungsarten (UA1, UA2) und der zugehörigen Unter­ brechungsprogramme erläutert werden soll:
Als Unterbrechungsarten (UA1, UA2), die den im kennzeich­ nenden Teil des Hauptanspruchs genannten Bedingungen genügen, wählt man z. B. den nicht maskierbaren Interrupt (NMI), der den Prozessor dazu veranlaßt, den 4 Byte langen Vektor ab der Adresse $7c in den Programmzeiger (program counter) zu laden (UA1), und den nicht autovektoriellen Interrupt Nr. $40, der den 4 Byte langen Vektor ab der Adresse $100 in den Pro­ grammzeiger (program counter) lädt (UA2). Die Unter­ brechungsvorrichtung (2) arbeitet jetzt, solange der Impuls­ geber (4) keinen Impuls liefert, folgendermaßen:
  • - erfolgt ein Zugriff des Datenverarbeitungs-Systems (1) auf den Vektor ab der Adresse $7c wird von der Unter­ brechungsvorrichtung (2) der nichtautovektorielle Interrupt Nr. $40 ausgelöst, d. h. der nicht betroffene und damit un­ veränderte Vektor ab der Adresse $100 wird in den Programm­ zeiger (program counter) geladen, so daß das zugehörige Un­ terbrechungsprogramm abgearbeitet wird, in dem z. B. einfach der Vektor ab der Adresse $7c wieder auf den richtigen Wert gesetzt wird, was ohne Probleme möglich ist, da die Unter­ brechungsvorrichtung (2) während der Abarbeitung des Unter­ brechungsprogramms abgeschaltet ist. Man kann dieses Unter­ brechungsprogramm aber z. B. auch so gestalten, daß außerdem je nach Art des Zugriffs dem laufenden Datenverarbeitungs- Programm simuliert wird, daß der Speicher ab der Adresse $7c die vom Datenverarbeitungs-Programm erwarteten Werte enthält.
  • - erfolgt ein Zugriff des Datenverarbeitungs-Systems (1) auf den Vektor ab der Adresse $100 wird von der Unter­ brechungsvorrichtung (2) der nicht maskierbare Interrupt (NMI) ausgelöst, d. h. der nicht betroffene und damit unver­ änderte Vektor ab der Adresse $7c wird in den Programmzeiger (program counter) geladen, so daß das zugehörige Unter­ brechungsprogramm abgearbeitet wird, in dem z. B. einfach der Vektor ab der Adresse $100 wieder auf den richtigen Wert ge­ setzt wird, was ohne Probleme möglich ist, da die Unter­ brechungsvorrichtung (2) während der Abarbeitung des Unter­ brechungsprogramms abgeschaltet ist. Man kann dieses Unter­ brechungsprogramm aber z. B. auch so gestalten, daß außerdem je nach Art des Zugriffs dem laufenden Datenverarbeitungs- Programm simuliert wird, daß der Speicher ab der Adresse $100 die vom Datenverarbeitungs-Programm erwarteten Werte enthält.
Durch dieses Zusammenspiel zwischen der Unterbrechungs­ vorrichtung (2) und den Unterbrechungsprogrammen wird si­ chergestellt, daß die Vektoren ab den Adressen $7c und $100 nicht dauerhaft überschrieben werden können.
Liefert der Impulsgeber (4) (z. B. ein Taster) einen Impuls an die Unterbrechungsvorrichtung (2), wird eine Unter­ brechungsart, z. B. der nicht maskierbare Interrupt (UA1), ausgelöst, d. h. das zum NMI gehörige Unterbrechungsprogramm wird aufgerufen. Außerdem wird ein spezielles Bit in einem Schreib-Lese Register der Registerschaltung (5) gesetzt. Da­ mit nun dieses Unterbrechungsprogramm erkennt, daß das Hilfs­ programm aufgerufen werden soll, prüft das Unterbrechungs­ programm dieses obengenannte Bit und verzweigt dann gegebe­ nenfalls in das Hilfsprogramm. Will man sich die Register­ schaltung (5) sparen, genügt es auch den Vektor ab der Adresse $100 zu untersuchen. Enthält dieser die richtige Adresse, d. h. die Adresse, an der das andere Unterbrechungs­ programm steht, ist das Unterbrechungsprogramm wahrschein­ lich mit Hilfe des Impulsgebers (4) aufgerufen worden, so daß das Unterbrechungsprogramm in das Hilfsprogramm ver­ zweigt. Diese letztere Methode ist aber nicht absolut zu­ verlässig, da das Hilfsprogramm auch aufgerufen wird, wenn auf den Vektor ab der Adresse $100 zugegriffen worden ist, dieser aber durch den Zugriff nicht verändert wurde. Sie ist aber in vielen Fällen ausreichend. Des weiteren kann man auch gemäß dem kennzeichnenden Teil des Anspruchs 7 vorgehen und als dritte Unterbrechungsart (UA3) z. B. den falschen Interrupt (FNMI) wählen, dessen Vektor (ab der Adresse $60) dann direkt auf das Hilfsprogramm zeigt. Wählt man die Methode mit drei Unterbrechungsarten (UA1, UA2, UA3), löst die Unterbrechungsvorrichtung (2) bei Zugriff auf den Vektor ab der Adresse $60 eine Unterbrechungart (z. B. den NMI) aus. Das zugehörige Unterbrechungsprogramm setzt dann einfach zu­ sätzlich zu seinen anderen Aufgaben den Vektor ab der Adresse $60 wieder auf das Hilfsprogramm.
Damit die erfindungsgemäße Vorrichtung arbeiten kann, müs­ sen die zu den Unterbrechungsarten (UA1, UA2, UA3) gehörigen, vom Datenverarbeitungs-Programm veränderbaren Teile, richtig initialisiert worden sein. Im Beispiel müßten die Vektoren ab den Adressen $7c, $100 und eventuell $60 auf die entspre­ chenden Unterbrechungsprogramme, bzw. auf das Hilfsprogramm, gesetzt werden. Damit die Unterbrechungsarten (UA1, UA2, UA3) nicht fehlinterpretiert und durch das Auslösen nicht ini­ tialisierter Unterbrechungsarten (UA1, UA2, UA3) das Datenver­ arbeitungs-System (V1) zum Absturz bringt, muß die Unter­ brechungsvorrichtung (2) während der Initialisierung dieser Teile z. B. von Hand mittels eines Schalters abgeschaltet werden. Bedienungsfreundlicher aber ist es z. B., wenn beim Kaltstart des Datenverarbeitungs-Systems (1) die Unter­ brechungsvorrichtung (2) sich von selbst ausschaltet und ausgeschaltet bleibt, bis sie durch setzen eines bestimmten Bits eines Schreib-Lese Registers der Registerschaltung (5) oder nach verstreichen einer bestimmten Zeit oder durch an­ dere geeignete Verfahren aktiviert wird. Dies kann durch das diese Teile initialisierende Programm geschehen, so daß der Benutzer davon nichts bemerkt.
Löst die Unterbrechungsvorrichtung (2) eine Unter­ brechungsart (UA1, UA2 oder UA3) aus, wird gleichzeitig die Selektionschaltung (8), die ein Zugriff des Datenverarbei­ tungs-System (1) auf den externen Festwertspeicher (6), den Schreib-Lese Speicher (7) und die Registerschaltung (5) ermöglicht, aktiviert. Das desaktivieren der Selektionsschaltung (8) kann z. B. wie folgt geschehen:
Kurz vor Verlassen des Hilfsprogramms oder der Unter­ brechungsprogramme wird von diesen ein bestimmtes Bit der Registerschaltung (5) gesetzt. Die Unterbrechungsvorrichtung (2) wartet dann, bis ein Zugriff auf Datenverarbeitungs- Systeminterne (Festwert-)Speicherbereiche erfolgt und nimmt dann das Selektionsfreigabesignal wieder zurück, d. h. erst dann, wenn das Datenverarbeitungs-Systeminterne Steuerwerk wieder das unterbrochene Datenverarbeitungs-Programm abar­ beitet.
Auf die gleiche Weise kann z. B. auch die Unterbrechungs­ vorrichtung (2), die sich ja beim Auslösen einer Unter­ brechungsart (UA1, UA2 oder UA3), abschaltet, wieder einge­ schaltet werden.

Claims (8)

1. Vorrichtung und Verfahren zur Unterbrechung eines auf einem Datenverarbeitungs-System laufenden Datenverarbei­ tungs-Programm, um ein Hilfsprogramm auszuführen, dadurch gekennzeichnet, daß der Aufruf des Hilfsprogramms durch das auf dem Datenverarbeitungs-System (1) laufende Datenverar­ beitungs-Programm mit größtmöglicher Sicherheit nicht ver­ hindert werden kann, dadurch, daß die Unterbrechungs­ vorrichtung (2), die über den Datenverarbeitungs-Systemin­ ternen Daten- und Adressenbus mit den zugehörigen Steuer­ leitungen (3) mit dem Datenverarbeitungs-System verbunden ist, zwei verschiedene Unterbrechungsarten (UA1, UA2) des jeweiligen Datenverarbeitungs-Systems (1) verwendet, die nicht durch einen einzigen Prozessor-Befehl zu gleicher Zeit so verändert werden können, daß beide Unterbrechungsarten (UA1, UA2) ihr jeweiliges Unterbrechungsprogramm, das Teil des Hilfsprogramms ist, nicht mehr aufrufen können oder die zumindest durch einen solchen eventuell vorhandenen Prozessor-Befehl vom auf dem Datenverarbeitungs-System (1) laufenden Datenverarbeitungs-Programm mit ausreichender Wahrscheinlichkeit nicht verändert werden, wobei eine Unter­ brechungsart (UA1 oder UA2) jeweils bei Zugriff des Daten­ verarbeitungs-Systems (1) oder des darauf laufenden Daten­ verarbeitungs-Programms auf den vom Datenverarbeitungs-Pro­ gramm veränderbaren Teil der jeweils anderen Unterbrechungs­ art (UA2 oder UA1) ausgelöst wird, so daß das dadurch aufge­ rufene Unterbrechungsprogramm geeignet auf den Zugriff auf den vom Datenverarbeitungs-Programm veränderbaren Teil der anderen Unterbrechungsart (UA2 oder UA1) reagieren kann, wo­ bei sich die Unterbrechungsvorrichtung (2) während der Ab­ arbeitung eines Unterbrechungsprogramms, wie auch des Hilfs­ programms, selbst ausschaltet, so daß beide Unterbrechungs­ arten (UA1 oder UA2) durch das Zusammenspiel der Unter­ brechungsvorrichtung (2) und der Unterbrechungsprogramme wechselseitig überwacht und aufrechterhalten werden können, wobei eine der beiden Unterbrechungsarten (UA1 oder UA2) auch von dem Impulsgeber (4) ausgelöst werden kann, um den Aufruf des Hilfsprogramms zu veranlassen, wobei das zu die­ ser Unterbrechungsart (UA1 oder UA2) gehörige Unter­ brechungsprogramm durch eine Analyse der Unterbrechungssi­ tuation erkennt, ob das Hilfsprogramm aufgerufen werden soll oder ob das Unterbrechungsprogramm deshalb aufgerufen wurde, weil auf den vom Datenverarbeitungs-Programm veränderbaren Teil der anderen Unterbrechungsart (UA2 oder UA1) zugegriffen wurde.
2. Vorrichtung und Verfahren nach Anspruch 1, dadurch ge­ kennzeichnet, daß der aktuelle Zustand der Unterbrechungs­ vorrichtung (2) mittels eines oder mehrerer Schreib-Lese Register, zusammengefaßt in der Registerschaltung (5), die mit Hilfe einer Selektionsschaltung (8) selektiert wird und über den Daten- und Adressenbus mit den zugehörigen Steuer­ leitungen (3) mit dem Datenverarbeitungs-System (1) verbun­ den ist, dem Datenverarbeitungs-System zugänglich gemacht wird.
3. Vorrichtung und Verfahren nach Anspruch 1 oder 2, da­ durch gekennzeichnet, daß das Hilfsprogramm ganz oder teil­ weise auf einem oder mehreren Festwertspeichern (6), die mit Hilfe der Selektionsschaltung (8) selektiert werden und über den Daten- und Adressenbus mit den zugehörigen Steuerleitun­ gen (3) mit dem Datenverarbeitungs-System (1) verbunden sind, in der erfindungsgemäßen Vorrichtung enthalten ist.
4. Vorrichtung und Verfahren nach mindestens einer der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß ein oder mehrere zusätzliche Scheibe-Lese Speicher (7), die mit Hilfe der Selektionsschaltung (8) selektiert werden und über den Daten- und Adressenbus mit den zugehörigen Steuerlei­ tungen (3) mit dem Datenverarbeitungs-System (1) verbunden sind, in der erfindungsgemäßen Vorrichtung enthalten sind.
5. Vorrichtung und Verfahren nach Anspruch 4, dadurch ge­ kennzeichnet, daß der zusätzliche Schreib-Lese Speicher (7) bei Schreibzugriffen des Datenverarbeitungs-Systems (1) auf Adreßbereiche des Datenverarbeitungs-Systems (1), die beim Auslesen nicht mehr die zuletzt hineingeschriebenen Werte liefern, von der Selektionsschaltung (8) mit eingeblendet wird und damit zugleich beschrieben wird, so daß das Hilfs­ programm die jeweils aktuellen Werte dieser Adreßbereiche ermitteln kann, indem es den zusätzlichen Scheib-Lese Spei­ cher (7) ausliest.
6. Vorrichtung und Verfahren nach einem der obigen Ansprüche, dadurch gekennzeichnet, daß bei Schreibzugriffen des Datenverarbeitungs-Systems (1) auf Adreßbereiche des Datenverarbeitungs-Systems (1), die beim Auslesen nicht mehr die zuletzt hineingeschriebenen Werte liefern, zusätzlich eine Unterbrechungsart (UA1 oder UA2) ausgelöst wird, so daß das jeweilige Unterbrechungsprogramm geeignet darauf reagie­ ren kann, wobei die Ursache der Unterbrechung in eventuell vorhandenen Schreib-Lese Registern der Registerschaltung (5) vermerkt werden kann.
7. Vorrichtung und Verfahren nach mindestens einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß eine dritte Unterbrechungsart (UA3) des Datenverarbeitungs- Systems (1) speziell dazu verwendet wird, mittels des Impuls­ gebers (4) das eigentliche Hilfsprogramm aufzurufen, wobei bei Zugriff auf den vom Datenverarbeitungs-Programm verän­ derbaren Teil dieser dritten Unterbrechungsart (UA3) von der Unterbrechungsvorrichtung (2) eine der beiden anderen, nicht von der Veränderung betroffenen Unterbrechungsarten (UA1 oder UA2) ausgelöst wird.
8. Vorrichtung und Verfahren nach Anspruch 2-5 oder 7, da­ durch gekennzeichnet, daß dem Datenverarbeitungs-System (1) Zugriffe auf Teile der erfindungsgemäßen Vorrichtung wie zum Beispiel den Schreibe-Lese Registern der Registerschaltung (5), dem Festwertspeicher (6) oder dem zusätzlichen Schreib- Lese Speicher (7) nur solange gestattet wird, wie das Hilfs­ programm oder die Unterbrechungsprogramme ablaufen.
DE3928303A 1989-08-26 1989-08-26 Vorrichtung und verfahren zur unterbrechung eines auf einem datenverarbeitungs-system laufenden datenverarbeitungs-programm, um ein hilfsprogramm auszufuehren Withdrawn DE3928303A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE3928303A DE3928303A1 (de) 1989-08-26 1989-08-26 Vorrichtung und verfahren zur unterbrechung eines auf einem datenverarbeitungs-system laufenden datenverarbeitungs-programm, um ein hilfsprogramm auszufuehren

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE3928303A DE3928303A1 (de) 1989-08-26 1989-08-26 Vorrichtung und verfahren zur unterbrechung eines auf einem datenverarbeitungs-system laufenden datenverarbeitungs-programm, um ein hilfsprogramm auszufuehren

Publications (1)

Publication Number Publication Date
DE3928303A1 true DE3928303A1 (de) 1991-02-28

Family

ID=6387980

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3928303A Withdrawn DE3928303A1 (de) 1989-08-26 1989-08-26 Vorrichtung und verfahren zur unterbrechung eines auf einem datenverarbeitungs-system laufenden datenverarbeitungs-programm, um ein hilfsprogramm auszufuehren

Country Status (1)

Country Link
DE (1) DE3928303A1 (de)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8489787B2 (en) 2010-10-12 2013-07-16 International Business Machines Corporation Sharing sampled instruction address registers for efficient instruction sampling in massively multithreaded processors
US8589922B2 (en) 2010-10-08 2013-11-19 International Business Machines Corporation Performance monitor design for counting events generated by thread groups
US8601193B2 (en) 2010-10-08 2013-12-03 International Business Machines Corporation Performance monitor design for instruction profiling using shared counters

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
US-Buch: TRIEBEL, Walter A.: 16-BIT Micro- processors Architecture, Software and Interface Techniques. Prentice-Hall, Inc., Engelwood Cliffs,New Jersey, 1985, S.342-364 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8589922B2 (en) 2010-10-08 2013-11-19 International Business Machines Corporation Performance monitor design for counting events generated by thread groups
US8601193B2 (en) 2010-10-08 2013-12-03 International Business Machines Corporation Performance monitor design for instruction profiling using shared counters
US8489787B2 (en) 2010-10-12 2013-07-16 International Business Machines Corporation Sharing sampled instruction address registers for efficient instruction sampling in massively multithreaded processors

Similar Documents

Publication Publication Date Title
DE2648229C2 (de)
EP0011685B1 (de) Programmierbare Speicherschutzeinrichtung für Mikroprozessorsysteme und Schaltungsanordnung mit einer derartigen Einrichtung
DE4331703C2 (de) Elektronische Einrichtung
DE3110378C2 (de)
DE2907181A1 (de) Befehlssatz-modifizierregister fuer einen datenprozessor
DE2456578C2 (de) Datenverarbeitungsanlage
DE2744531A1 (de) Elektronische datenverarbeitungsanlage
DE3732808A1 (de) Verfahren und vorrichtung zum erzeugen und bearbeiten von unterbrechungspunkten in einem monitorprogramm
DE1275800B (de) Steuerwerk fuer datenverarbeitende Maschinen
DE3228405A1 (de) Emulator zur erzeugung einer folge von steuersignalen
DE2658864A1 (de) Pruefsystem fuer eine mikroprogrammierte verarbeitungseinheit
DE19604251A1 (de) Microcomputersystem, Verfahren zur Erfassung einer Vielzahl von Statusdaten und Computersystem
DE2725077A1 (de) Ueberwachungssystem fuer eine datenverarbeitungsanlage
DE19955776C1 (de) Multitasking-Prozessorsystem
DE3323824A1 (de) Speicherprogrammierbare steuerung
DE3700800C2 (de) Einrichtung zur Erzeugung eines Unterbrechungspunktes in einem Mikroprozessor
DE3928303A1 (de) Vorrichtung und verfahren zur unterbrechung eines auf einem datenverarbeitungs-system laufenden datenverarbeitungs-programm, um ein hilfsprogramm auszufuehren
DE3316681A1 (de) Computersystem mit programmueberwachungsvorrichtung
DE2756033A1 (de) Verfahren und einrichtung zur diagnose von stoerungen von rechenmaschinen
DE2622140C3 (de) Einrichtung zur Steuerung manueller Operationen
EP1283471A2 (de) Programmgesteuerte Einheit
DE4010896A1 (de) Verfahren zur verarbeitung von synchronisationsbefehlen in einem computersystem
DE10063936A1 (de) Interrupt Controller für einen Mikroprozessor
DE1195972B (de) Anordnung zum Durchfuehren einer Verzweigung bei einer programmgesteuerten Rechenmaschine
DE2856768A1 (de) Prioritaets-vektor-unterbrechung mit einer vorrichtung zur direkten herstellung einer adressenverzweigung

Legal Events

Date Code Title Description
OM8 Search report available as to paragraph 43 lit. 1 sentence 1 patent law
8122 Nonbinding interest in granting licences declared
8139 Disposal/non-payment of the annual fee