DE1574994B2 - Digitalrechner mit ueberprueftem unterprogrammaufruf - Google Patents

Digitalrechner mit ueberprueftem unterprogrammaufruf

Info

Publication number
DE1574994B2
DE1574994B2 DE19681574994 DE1574994A DE1574994B2 DE 1574994 B2 DE1574994 B2 DE 1574994B2 DE 19681574994 DE19681574994 DE 19681574994 DE 1574994 A DE1574994 A DE 1574994A DE 1574994 B2 DE1574994 B2 DE 1574994B2
Authority
DE
Germany
Prior art keywords
program
address
computer
programs
memory
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.)
Pending
Application number
DE19681574994
Other languages
English (en)
Other versions
DE1574994A1 (de
Inventor
Roger Erwin Glendora Calif Packard (V St A)
Original Assignee
Burroughs Corp, Detroit, Mich (V St A)
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 Burroughs Corp, Detroit, Mich (V St A) filed Critical Burroughs Corp, Detroit, Mich (V St A)
Publication of DE1574994A1 publication Critical patent/DE1574994A1/de
Publication of DE1574994B2 publication Critical patent/DE1574994B2/de
Pending 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/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • 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
    • G06F9/4486Formation of subprogram jump address

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Executing Machine-Instructions (AREA)

Description

3 4
steuerten Unterprogramms von dieser zusätzlichen kennzeichnung 1000 im Kernspeicher 1 abgerufen Information freigestellt. wird. Um den Rechner gegen Fehler im Objektpro-Weiterbildungen der Erfindung sind in den Unter- gramm zu schützen, wird das durch das Objektansprüchen gekennzeichnet. programm abgerufene Informationskennzeichen ge-Ein Ausführungsbeispiel der Erfindung ist nach- 5 prüft auf die Anwesenheit eines Prüfzeichens. Wenn stehend an Hand der Zeichnungen näher erläutert. Es als Prüf ergebnis eine richtige Antwort gegeben wird, zeigt ist auch das Informationskennzeichen ein richtiges F i g. 1 ein Blockschaltbild einer beispielsweisen Unterprogramm-Adressenwort. Die Einrichtung geht Einrichtung, dann weiter mit der Einleitung des Unterprogramms, F i g. 2 einen Rechnerspeicher und io welches dem gewählten Adressenwort entspricht. F i g. 3 ein Diagramm für zwei alternativ auf ein- Wenn die Prüfung eine falsche Antwort ergibt, wird anderfolgende Vorgänge, welche mittels des Folge- das Informationskennzeichen, welches dem Adressensteuerkreises nach F i g. 1 ablaufen. wort entspricht, nicht aus dem Kernspeicher 1 ausin Fig. 1 ist ein Rechner gezeigt, der einen als gelesen.
Kernspeicher 1 bezeichneten Speicher hat. Die Spei- 15 Im letzteren Fall wird ein Prüfunterprogramm, chersteuereinrichtung 2 steuert die Lese-Schreib- bezeichnet mit RDSR in F i g. 2 von der gleichen Funktionen für den Kernspeicher 1. Allgemein wer- Einrichtung eingeleitet, welche die im vorstehenden den die Lese- und Schreibfunktionen aufeinander- Absatz beschriebenen Vorgänge ausführt. Um das folgend im Laufe eines Lese-Schreibzyklus mittels der Adressenwort, welches die Lage des Prüfunterpro-Taktschrittquelle des Rechners gesteuert. Derartige 20 gramms im Kernspeicher identifiziert, mit dieser EinAnordnungen sind bekannt. Ein Informationskenn- richtung in Einklang zu bringen, ist auch diese ' zeichen wird im Kernspeicher 1 mittels eines Spei- Adresse mit einem eindeutigen Prüfzeichen vercher-Informationsregisters 3 eingeschrieben bzw. aus- sehen. Gemäß dem Beispiel nach Fig. 2 ist das ] gelesen. Der Platz im Kernspeicher 1, von dem das Prüfunterprogramm im Kernspeicher 1 mit der < Informationskennzeichen zum Informationsregister 3 25 Adresse 5000 gespeichert. Dementsprechend ist die überwechselt, wird bestimmt durch die Adresse, die dem Prüfunterprogramm entsprechende Adresse im Speicheradressen-Register 4 gespeichert ist. F05000. Dieses Adressenwort hat im Kernspeicher 1 ;
Im allgemeinen wird die Erfindung bei Rechnern den Platz mit der Adresse 94. Zusammengefaßt kann mit mehreren Programmen angewendet, bei denen festgestellt werden, daß dann, wenn das Prüfergebnis ; eine Vielzahl von Objektprogrammen unter der Kon- 30 eine falsche Antwort bedeutet, das Infonnationskenntrolle eines Hauptsteuerprogramms ablaufen. Das zeichen für die Adresse 94 abgerufen wird. Dieses Hauptsteuerprogramm, die Objektprogramme und Informationskennzeichen enthält das Prüfzeichen, die Operandenadressen sind alle im Kernspeicher 1 Auf diese Weise wird das Prüfprogramm eingeleitet. ! gespeichert. Dies ist mittels der schematischen Dar- Die Einzelheiten des Prüfunterprogramms selbst sind : stellung des Kernspeichers 1 in F i g. 2 gezeigt. Bei 35 nicht Gegenstand der Anmeldung. Beispielsweise dieser Darstellung sind O±, O2, O3 und O4 Objekt- kann das Prüfunterprogramm ein Abtasten einer j programme und MCP ist das Hauptsteuerprogramm. Gruppe sogenannter Ergebnistexte, welche im Kern- j Wie weiterhin in F i g. 2 gezeigt ist, enthält das speicher 1 gespeichert sind, umfassen. Diese Ergeb- f Hauptsteuerprogramm viele Unterprogramme: SjRi, nistexte können beispielsweise den Zustand der \ SR2, ... SRn. Im Verlauf der Ausführung eines 4° Rechnerbausteine anzeigen, beispielsweise, ob ein I Objektprogramms ist es oft erforderlich, eines der Kontrolldrucker Informationen aufnehmen kann. Unterprogramme oder das Hauptsteuerprogramm Weiterhin kann ein Ergebnistext angewendet werden, ' auszuführen. Dies wird erreicht durch die Bildung um anzuzeigen, ob ein Prüfzeichen im gewählten ] einer direkten Abzweigverbindung (Programmsprung) Adressenwort enthalten ist, wenn ein Abzweigver- | vom Objektprogramm zum verlangten Unterpro- 45 bindungsprogramm ausgeführt wird. Im Prüfunter- j gramm oder Hauptsteuerprogramm. Für jedes Un- programm können die Ergebnistexte abgetastet wer- I terprogramm ist ein Adressenwort, welches die Lage den und in Abhängigkeit des gekennzeichneten des Unterprogramms identifiziert, als ein Teil des Zustandes den geeigneten Vorgang einleiten. Im all-Hauptsteuerprogramms gespeichert. Das Objektpro- gemeinen wird immer dann abgetastet, wenn ein gramm bildet die Abzweigverbindung zu einem Un- so neuer Ergebnistext eingespeichert wird,
terprogramm durch Abruf der Lagekennzeichnung An Hand der F i g. 1 soll nachstehend eine genaue des Adressenwortes aus dem Kernspeicher 1, welches Funktionsbeschreibung der Einrichtung gegeben werdem verlangten Unterprogramm entspricht. Beispiels- den. Beim normalen Ablauf eines Unterprogramms weise ist in F i g. 2 das Unterprogramm SR1 im Kern- wird die Adresse jedes Befehles in einem Folgespeicher 1 an einem Platz mit der Adresse 06000 55 adressen-Register 5 für den nächsten Befehl vor der gespeichert. Ein Adressenwort mit einem binärcodier- Weitergabe zum Speicheradressen-Register 4 gespeiten Prüfzeichen und mit binärcodierten Ziffern, chert. Im allgemeinen werden die Befehle an aufweiche die Adresse 06000 kennzeichnen, ist also im einanderfolgenden Stellen im Kernspeicher 1 gespei-Kernspeicher 1 gespeichert. Dieses Adressenwort ist chert, so daß jede Adresse durch Abzählung der gespeichert an einem Platz mit der Adresse 1000. 60 vorangehenden Adresse erhalten wird. Ein Begren-In Fig. 2 ist das Prüfzeichen mit F bezeichnet. zungs-Register 6 speichert Informationskennzeichen, Dieses Prüfzeichen ist eine Kombination binärer welche diejenigen Teile oder Abschnitte des Kern-Ziffern, welche eindeutig sind, z. B. eine Kombina- Speichers 1 bestimmen, zu denen während eines betion, welche keinerlei Dezimalwert darstellt oder im stimmten Zustandes des Rechners ein Zugang vorSystem auf andere Weise erscheint, als zur Bezeich- 65 handen sein muß. Der Speicherinhalt des Registers 6 nung dieses Ziffernkennzeichens. Ein Objektpro- bedeutet deshalb eine Kennzeichnung, welche Befehle gramm bildet eine Abzweigverbindung zum Unter- des Hauptsteuerprogramms oder eines Objektproprogramm SR1, in dem der Speicherinhalt der Lage- gramms jederzeit ausgelesen werden können Wenn
5 6
beispielsweise Befehle des Objektprogramms O\ aus- mit einem verlangten Unterprogramm des Hauptgeführt werden; begrenzt das Begrenzungs-Register 6 Steuerprogramms übereinstimmt, zum Operationsden. Zugang zum Kernspeicher lauf den Bereich, der speicher? übertragen wird, wird der Ausgang des durch das Objektprogramm in Anspruch genom- Speichers 7 für die UND-Glieder 21 bis 42 wirksam inen ist. Wenn andererseits Befehle vom Haüptsteuer- 5 und bleibt wirksam für die gesamte Betriebsdauer, programm ausgeführt werden, erlaubt das Begren- Wenn dieser Ausgang wirksam wird, folgt der Schritt zungs-Register 6 den Zugang zum gesamten Kern- PO. Eine bestimmte Adresse, welche im Unterbrespeicher 1. Das Operations-Register 7 speichert eine chungs-Adressen-Register 43 aufgenommen ist, geAdresse, welche die Abzweigverbindungsoperation langt über das Glied 34 zum Speicheradresseneinleitet, sowie die Adresse des gewählten Adressen- io Register 4, während die Information im Folgeadreswortes im Kernspeicher 1. Ein Vergleichs-Register 8 sen-Register 5 für den nächsten Befehl, im Begrenspeichert auch Informationskennzeichen, welche den zungs-Register 6 und im Vergleichsregister 8 über Zustand des Rechners anzeigen. Da das Register 8 das Verknüpfungsglied 31 in das Speicher-Informanicht direkt in Zusammenhang mit dem Ausfüh- tions-Register 3 übertragen wird. In Abhängigkeit rungsbeispiel steht, ist seine Funktion nicht weiter 15 vom Verknüpfungsglied 40 schreibt die Speichererläutert, steuereinrichtung 2 das Informationskennzeichen ■ Die Flip-Flop-Schaltungen 9, 10 und 11 kenn- vom Register 3. auf den entsprechenden Platz im zeichnen den Zustand des Rechners in verschiedenen Kernspeicher 1, der vom Adressenregister 4 bezeich-Fällen. Die normale Flip-Flop-Schaltung 9 bestimmt net wird. Die Informationskennzeichen aus den den Zustand des Rechners mit Rücksicht auf das 20 Registern 5, 6 und 8, die auf diese Weise im Kern-Hauptsteuerprogramm und die Objektprogramme. speicher 1 gespeichert sind, kennzeichnen die Stelle Wenn der Ausgang »1« der Flip-Flop-Schaltung 9 im Objektprogramm, für die die Abzweigverbindung eingeschaltet ist, ist der Rechner im normalen Zu- gebildet wurde, sowie das betreffende Objektprostand, in dem die Befehle eines Objektprogramms gramm. Durch die Wiedereingabe dieser Informaausgeführt werden. Wenn der Ausgang »0« der Flip- 25 tionskennzeichen in die Register S, 6 und 8 nach Flop-Schaltung 9 eingeschaltet ist, ist der Rechner Durchführung des Programms im Hauptsteuerproim Prüfzustand, in dem die Befehle des Hauptsteuer- gramm, für das die Abzweigverbindung ausgeführt Programms ausgeführt werden. Die Unterbrecher- wird, wird das gleiche Objektprogramm wieder geFlip-Flop-Schaltung 10 kennzeichnet die Speicherung schaltet, indem die Informationskennzeichen zu den eines Ergebnistextes, wenn sein Ausgang »1« einge- 30 Registern 5, 6 und 8 erneut übertragen werden. Diese schaltet ist. Mit anderen Worten, es muß das Prüf- erneute Operation ist nachfolgend beschrieben,
unterprogramm eingeleitet werden. Die Befehls-Flip- Der nächste Eingang Pl wird wirksam; hierdurch Flop-Schaltung 11 kennzeichnet den Zustand der wird das Informationskennzeichen, welches die Lage Einrichtung in bezug auf die Befehle. Wenn am Aus- des gewählten Adressenwortes kennzeichnet, vom gang »I« der Flip-Flop-Schaltung 11 ein wirksames 35 Speicher 7 über das Verknüpfungsglied 33 zum Kennzeichen anliegt, führt die Anlage einen Befehl Adressenregister 4 übertragen. Entsprechend dem aus. Wenn am Ausgang »0« ein wirksames Kenn- Beispiel nach Fig. 2 würde dies der Adresse 1000 zeichen anliegt, wird ein neuer Befehl aus dem Kern- entsprechen. Auf die Funktion des Verknüpfungsspeicher 1 ausgelesen. Zusätzlich zu den in Fig. 1 gliedes 37 folgt der Vorgang, bei dem die Speichergezeigten Verbindungen der Flip-Flop-Schaltungen 4° steuereinrichtung 2 aus dem Informationsregister das 9,10 und 11 bestehen auch Verbindungen zu anderen Informationskennzeichen zum Platz 1000 des Kern-Teilen des Rechners, welche aber für die Beschrei- Speichers ausliest, wobei das Adressenwort F06000 bung des Ausführungsbeispiels nicht von Bedeutung ist. Vom Register 3 geht dieses Adressenwort über sind. das Verknüpfungsglied 24 zum Folgebefehlsadressen-
Die Funktion der Einrichtung verläuft weiterhin 45 register 5.
unter der Kontrolle der Folgesteuereinrichtung 12. Als nächstes wird der Ausgang P 2 wirksam. Da-Kennzeichnend ist, daß eine derartige Einrichtung durch wird eine Verbindung über das Verknüpf ungseine Taktschrittquelle, einen Folgesteuerkreis und glied 25 vom Register 5 zu einer Prüfzeichen-Prüfeineine kombinierte Logik enthält, um die nachfolgend richtung 44 hergestellt. Die Einrichtung 44 kann ein beschriebene Aufeinanderfolge von Vorgängen aus- 50 Vergleicher sein, der die höchststellige Ziffer des führen zu können. Wenn die Einrichtung 12 eine gewählten Adressenwortes vergleicht mit dem Inhalt aufeinanderfolgende Reihe von Schlitten durchläuft, eines Registers, das das Prüfzeichen enthält. Wenn werden der Reihe nach die Ausgänge PO, Pl, P2, die Prüfung auf Vorliegen eines Prüfzeichens ein P 3, P 4, P 5 und P 6 wirksam. Die Ausgänge P 0 bis richtiges Ergebnis ergibt, wenn also beispielsweise P 6 sind mit den Eingängen von verschiedenen UND- 55 das gewählte Adressenwort das Prüfzeichen enthält, Gliedern (21 bis 42) verbunden, um den Vorgang des wird der Ausgang T der Einrichtung 44 zur Folge-Programmsprunges auszuführen. Einleitend wird der steuereinrichtung 12 wirksam. Demzufolge wird auch Ausgang P Ö wirksam, und jedes Mal, wenn die Ein- der Ausgang T 3 wirksam.
richtung 12 in der Ausgangsstellung ist, wird dieser Zu diesem Zeitpunkt werden Vorbereitungen geEingang PO erneut wirksam. 6° troffen, das gewählte Unterprogramm des Haupt-
Obwohl in F i g. 1 nicht dargestellt, besteht eine Steuerprogramms auszuführen. Hierzu wird das VerVerbindung vom Operations-Register 7 zu jedem der knüpfungsglied 29 wirksam, um die Adresse im UND-Glieder 21 bis 42. Zum Zwecke der Erläute- Register 6 zu löschen. Eine Information aus einem rung wird angenommen, daß das Verknüpfungsglied Speichergrößenregister 45 gelangt über das Verknüp-30 den Befehl Abzweigverbindung kennzeichnet. 65 fungsglied 30 zum Begrenzungsteil des Registers 6. Wenn der Abzweigverbindungsbefehl, enthaltend die Demzufolge ist das Register 6 vorbereitet, den ZuKennzeichnung am Verknüpfungsglied 30 und die gang zum gesamten Inhalt des Kernspeichers zuzu-Adresse eines Adressenwortes im Kernspeicher 1, das lassen, wie dies beim Prüfvorgang durch das Haupt-
7 8
Steuerprogramm verlangt wird. Das Verknüpfungs- folgend die AusgängePl, Pl, P3, P4 und PS
glied 21 ist auch wirksam, um das Vergleichsregister 8 wirksam, so daß die vorhergehend beschriebenen
zu löschen und das Verknüpfungsglied 22 ist wirk- Funktionen nunmehr bezüglich der neu hinzugefüg-
sam, um die Flip-Flop-Schaltungen 9, 10 und 11 in ten Adresseninformation im Register 7 ablaufen,
ihren Zustand »0« zu setzen. 5 So wird bei dem Beispiel nach Fig. 2 das Adres-
Darauf wird der Ausgang P 4 wirksam. Hierdurch senwort F05000 aus dem Kernspeicher 1 ausgelesen,
gelangt das gewählte Adressenwort über das Ver- während der Ausgang P1 wirksam ist, und dieses
knüpfungsglied 26 zum Adressenspeicher 6, und die Adressenwort wird auf das Vorhandensein eines
Speichersteuereinrichtung 2 liest den ersten Befehl Prüfzeichens geprüft, während der Ausgang P 2 wirk-
des Unterprogramms infolge des Wirksamwerdens io sam ist. Da das Adresseninformationskennzeichen
des Verknüpfungsgliedes 38 aus. Danach wird jeder zum Erhalt des Adressenwortes F05000 aus dem
Befehl des Unterprogramms ausgelesen und ausge- Kernspeicher im Register 46 gespeichert ist, kann
führt, bis das Unterprogramm vollständig ist, zu kein Fehler beim Auslesen dieser Adresse aus dem
welchem Zeitpunkt dann der Ausgang P 5 wirksam Speicher 1 vorkommen. Deshalb ist die Verwendung
wird. 15 eines Prüfzeichens in Verbindung mit diesem Adres-
Dabei wird in dem Objektprogramm weiter ge- senwort zur Fehlerkontrolle nicht erforderlich. Es ist
fahren, und zwar wird hierzu die Adresse, welche im aber die Verwendung der gleichen Einrichtung mög-
Unterbrechungsspeicher-Register 43 gespeichert ist, lieh, um das Prüfunterprogramm und andere Unter-
über das Verknüpfungsglied 35 zum Speicheradres- programme einzuleiten.
senregister 4 übertragen. Infolge des Wirksamwerdens 20 Dementsprechend ist der Rechner dazu vorbereitet,
des Verknüpfungsgliedes 39 überträgt die Speicher- ein Hauptunterprogramm auszusühren, solange der
steuereinrichtung 2 das Informationskennzeichen vom Ausgang P 3 wirksam ist und weiterhin das Prüf-
Zwischenspeicherplatz des Kernspeichers 1 zum In- unterprogramm auszuführen, wenn der Ausgang P 4
formationsregister 3, von wo aus die Adresse über wirksam ist. Ebenso wird das Objektprogramm erneut
das Verknüpfungsglied 27 zu den Registern 5, 6 25 zugeschaltet, wenn der Ausgang P 5 wirksam ist. Eine
und 8 übertragen wird. Danach wird die Folgesteuer- Weiterführung des Objektprogramms wird infolge
einrichtung 12 gelöscht, um ihren Zyklus zu wieder- der Feststellung der Falschfunktions-Bit-Zeichen
holen, und der Rechner setzt die Ausführung des während des Ergebniszeichnerabtastprogramms ver-
wieder zugeschalteten Objektprogramms fort. hindert. Einzelheiten hierzu sind aber nicht Teil der
Wenn das Objektprogramm fälschlicherweise die 30 Erfindung.
Lageangabe im Speicher des gewählten Adressen- Beim gerade beschriebenen Vorgang wird eine Wortes kennzeichnet, so daß das ausgelesene Infor- Unterbrechung des Rechnervorganges infolge der mationskennzeichen aus dem Kernspeicher kein Feststellung eines Programmfehlers bei der Bildung Prüfzeichen enthält, wird der Ausgang F der Prüf- einer Abzweigverbindung verursacht. Während dieser zeichen-Prüfeinrichtung 44 während des Schrittes P 2 35 Unterbrechung läuft ein Prüfunterprogramm, gewirksam. In diesem Falle wird unmittelbar auf den nannt RDSR, ab. Es kann erwünscht sein, eine gleich-AusgangP2 der Ausgang P 6 wirksam. Demzufolge artige Unterbrechung zu erhalten und dabei das wird auch das Verknüpfungsglied 23 wirksam und gleiche Prüfunterprogramm beim Vorkommen von bringt die Unterbrechungs-Flip-Flop-Schaltung 10 in Unterbrechungen auf Grund anderer Umstände im den Zustand »1«. Das Adresseninformationskenn- 40 Rechner auszuführen. Allgemein gesprochen, kann j zeichen im Operationsregister 7 wird von einem In- es wünschenswert sein, das Prüfunterprogramm formationskennzeichen eines Unterbrechungsadres- immer dann einzuleiten, wenn ein Ergebnisbezeichner senregisters 46 ersetzt, der über das Verknüpfungs- im Kennzeichner 1 gespeichert wird. Beispielsweise glied 28 mit dem Register 7 gekoppelt ist. Register 46 kann eine derartige Unterbrechung verlangt werden, enthält ein Adresseninformationskennzeichen, wel- 45 wenn ein Teil der Ein- und Ausgabeeinrichtung, beiches den Platz des Adressenwortes im Kernspeicher spielsweise also ein Kontrolldrucker, den Druck aller für das Prüfungsprogramm kennzeichnet. Entspre- übertragenen Informationskennzeichen durchgeführt chend den Bezeichnungen in Fig. 2 enthält das hat und bereit ist, weitere Informationen aufzuneh-Register 46 die Zahl 94. Das Adresseninformations- men. Wenn Bedingungen für die Einleitung einer kennzeichen, welches den Platz im Kernspeicher 5° Unterbrechung dieser Art festgestellt werden, wird kennzeichnet, und für die Speicherung des Ergebnis- ein Prüfbefehl in das Operationsregister 7 eingegeben, textes der Prüfzeichenprüfung durch die Prüfeinrich- Danach kann das Prüfprogramm in der vorstehend tung 44 herausgenommen wurde, wird in einem Er- beschriebenen Weise ablaufen.
gebnisbezeichner-Adressenregister 47 gespeichert. Der Als Beispiel wird angenommen, daß die Unter-Inhalt des Registers 47 wird über Verknüpfungsglied 55 brechung eingeleitet wird, wenn der Ausgang »1« der 36 zum Adressenregister 4 übertragen. Gleichzeitig normalen Flip-Flop-Schaltung 9, der Ausgang »1« wird der Inhalt eines Ungültige-Operation-Bitzeichen- der Unterbrecher-Flip-Flop-Schaltung 10 und der Register 48 über Verknüpfungsglied 32 zum Infor- Ausgang »0« der Befehls-Flip-Flop-Schaltung 11 mationsregister 3 übertragen. Register 48 enthält Bit- wirksam sind. Wenn zu diesem Zeitpunkt außerdem zeichen, welche anzeigen, daß ein falsches Ergebnis 6° der Ausgang P 0 wirksam wird, wird das Verknüpbei der Prüfzeichenprüfung erhalten wurde, beispiels- fungsglied 42 geschaltet und das Informationskennweise, daß eine Falschfunktion durch ein Objekt- zeichen eines Prübefehlsregisters 49 zum Register 7 programm veranlaßt wurde. Infolge des Wirksam- übertragen. Die Adresse dieses Befehles ist die Zahl Werdens des Verknüpfungsgliedes 41 wird der Inhalt 30 und das Adresseninformationskennzeichen ist die des Informationsregisters 3 in den vom Register 4 65 Zahl 94, das ist das Informationskennzeichen, welangezeigten Adressenplatz eingeschrieben. ches im Speicher die Stelle des Adressenwortes kenn-
Nach Schritt P 6 kommt die Folgesteuereinrichtung zeichnet, das dem Prüfunterprogramm RDSR ent-
wieder zu Schritt Pl. Danach werden aufeinander- spricht.
Hierzu 1 Blatt Zeichnungen 309 510/320

Claims (3)

1 2 Patentansprüche: , Information belegter Wortplatz, der mithin für andere
1. Digital-Rechner mit einem Speicher, in dem Informationen nicht mehr zur Verfügung stehen kann, ein Hauptsteuerprogramm mit mehreren Unter- Aus »Elektronische Rechenanlagen«, Band 7, Programmen gespeichert ist, das die Ausführung 1965, Heft 3, Seiten 131 bis 137, sind weiterhin mehrerer Objektprogramme überwacht, da- 5 Maßnahmen zum Schutz von unabhängigen, jedoch durch gekennzeichnet, daß das Haupt- simultan ablaufenden Programmen bekannt geworsteuerprogramm für jedes Unterprogramm ein den. Um zu verhindern, daß die einzelnen Programme eigenes Adressenwort enthält, das ein das Unter- sich gegenseitig stören, wird zu jedem Programm programm als solches bezeichnendes Prüfzeichen, eine sogenannte Erfordernisliste aufgestellt, die diesowie die Adresse des zugehörigen Unterpro- io jenigen Anlageteile enthält, die von dem Programm gramm-Anfangs enthält; und daß bei Auftreten benötigt werden. Von einem übergeordneten Haupteiner Programmverzweigung in einem Objekt- Steuerprogramm oder Organisationsprogramm wird programm das zu dem gewünschten Unterpro- an Hand dieser Erfordernisliste aus einer Verfügbargramm gehörende Adressenwort adressiert und keitsliste, die die zur Benutzung frei stehenden Anauf das Vorliegen des Prüfzeichens geprüft wird. 15 lageteile enthält, eine Benutzbarkeitsliste aufgebaut,
2. Rechner nach Anspruch 1, dadurch gekenn- die diejenigen Anlageteile ein- für allemal festlegt, zeichnet, daß das Prüfzeichen an Stelle eines die von dem betrachteten Programm benutzt werden Operationsteiles in das Adressenwort eingesetzt können. Kommen während des Programmablaufs ist. unerwartete Überschreitungen der durch die Be-
3. Rechner nach Anspruch 1 oder 2, dadurch 20 nutzbarkeitsliste festgelegten Anlageteile vor, muß gekennzeichnet, daß im Hauptsteuerprogramm dies der Anlage über Organisationsbefehle mitgeteilt ein Testprogramm enthalten ist, das nach nega- werden. Um eine wirksame Kontrolle darüber zu tivem Ausgang der Prüfung auf Vorliegen des haben, daß das Programm während seines Ablaufs Prüfzeichens angesteuert wird. die ihm zugewiesenen Anlageteile nicht überschreitet,
25 können besondere Speicherschlüssel vorgesehen sein,
wobei dieser Schlüssel der zugehörigen Benutzbar-
Die Erfindung betrifft einen Digital-Rechner mit keitsliste zugeordnet wird. Durch ständigen Vergleich einem Speicher, in dem ein Hauptsteuerprogramm auf Übereinstimmung des Speicherschlüssels mit dem mit mehreren Unterprogrammen gespeichert ist, das der Benutzbarkeitsliste zugeordneten Schlüssel kann die Ausführung mehrerer Objektprogramme über- 30 ein auftretender Fehler bemerkt werden,
wacht Dieses Programmschutz-System ist wegen der
In Digital-Rechnern ist es normalerweise üblich, statischen Zuordnung von Anlageteilen gemäß der mit einer vielseitigen Programmbasis zu arbeiten. Benutzbarkeitsliste zu einem Programm wenig flexi-Diese Programme werden Objektprogramme oder bei. Dies ist vor allem für solche Unterprogramme Funktionsprogramme genannt und unter der Über- 35 von Nachteil, die innerhalb eines Programms relativ wachung eines Hauptsteuerprogramms ausgeführt selten, von den übrigen Programmen jedqch häufig Das Hauptsteuerprogramm ist festgelegt, bevor der benutzt werden. Außerdem geht in jedem Befehl Rechner in Betrieb genommen wird und wird norma- des beteiligten Programmes Speicherplatz für den !erweise danach nicht mehr geändert Nachdem ein dem Programm zugeordneten Schlüssel verloren. Rechner in Betrieb genommen ist, wird dieser aber 40 Schließlich bleiben bei dem bekannten System solche immer wieder zur Durchführung neuer Objektpro- Fehler unerkannt, die beispielsweise dadurch entgramme herangezogen, und zwar wenn neue Auf- stehen, daß von dem Objektprogramm eine Speichergaben vorliegen. Demzufolge sind irgendwelche adresse angesteuert wird, die zwar mit dem zuge-Programmfehler, welche im Laufe der Operation des hörigen Schlüssel versehen ist und dennoch nicht Rechners auftreten, üblicherweise einem Objektpro- 45 der Anfang des gewünschten Unterprogramms ist. gramm und nicht dem Hauptsteuerprogramm anzu- Innerhalb der dem Objektprogramm zugeordneten lasten. Deshalb werden alle Operationen im Rechner Anlageteile bleibt mithin eine fehlerhafte Verzweiim wesentlichen unter der Überwachung des Haupt- gung unerkannt.
Steuerprogramms derart ausgeführt, daß ein Pro- Demgegenüber liegt der Erfindung mithin die
grammfehler in einem Objektprogramm den Betrieb 50 Aufgabe zugrunde, bei Programmverzweigungen aus des gesamten Rechners nicht vollständig unmöglich einem Objektprogramm in ein Unterprogramm aufmachen kann; andere Objektprogramme können also tretende Fehler möglichst frühzeitig erkennbar zu "weiter ausgeführt werden. machen. Dies wird erfindungsgemäß dadurch erreicht,
Aus der USA.-Patentschrift 3 283 307 ist eine Feh- daß das Hauptsteuerprogramm für jedes Unterprolererkennungsehirichtung zur Überwachung von Pro- 55 gramm ein eigenes Adressenwort enthält, das ein grammverzweigungen in datenverarbeitenden Ma- das Unterprogramm als solches bezeichnendes Prüfschinen bekannt, bei der ein Sondermerkmal in Form zeichen sowie die Adresse des zugehörigen Untereines Zusatzsignals des durch die Verzweigung er- programm-Anfangs enthält, und daß bei Auftreten reichten Programmteils zu einer Überprüfung dafür einer Programmverzweigung in einem Objektprovorgesehen ist, daß tatsächlich in ein Unterprogramm 6° gramm das zu dem gewünschten Unterprogramm eingetreten worden ist. Diese Einrichtung läßt sich gehörende Adressenwort adressiert und auf das Vorjedoch nicht ohne erhebliche Nachteile für einen liegen des Prüfzeichens geprüft wird. Damit wird eine im Mehrprogrammbetrieb arbeitenden Rechner nutz- fehlerhafte Verzweigung beispielsweise durch falsche bar machen. Ein wesentlicher Nachteil ist darin zu Adressierung sofort erkennbar, und zwar noch ehe sehen, daß die Maschine mit Befehlen verschiedener 65 in das gewünschte Unterprogramm tatsächlich einLänge arbeiten muß bzw. daß bei einheitlicher getreten wurde. Durch Aufnahme des Prüfzeichens in Befehlsstruktur ein erheblicher Leerraum ungenutzt das Adressenwort bleiben sowohl die Befehle des verbleibt. Das Sondermerkmal ist ein mit zusätzlicher Objektprogramms wie auch diejenigen des ange-
DE19681574994 1967-03-17 1968-03-16 Digitalrechner mit ueberprueftem unterprogrammaufruf Pending DE1574994B2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US62385867A 1967-03-17 1967-03-17

Publications (2)

Publication Number Publication Date
DE1574994A1 DE1574994A1 (de) 1971-12-02
DE1574994B2 true DE1574994B2 (de) 1973-03-08

Family

ID=24499670

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19681574994 Pending DE1574994B2 (de) 1967-03-17 1968-03-16 Digitalrechner mit ueberprueftem unterprogrammaufruf

Country Status (5)

Country Link
US (1) US3562713A (de)
DE (1) DE1574994B2 (de)
FR (1) FR1558091A (de)
GB (1) GB1159330A (de)
NL (1) NL165860C (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3753236A (en) * 1972-03-31 1973-08-14 Honeywell Inf Systems Microprogrammable peripheral controller
JPS549456B2 (de) * 1972-07-05 1979-04-24
US3881173A (en) * 1973-05-14 1975-04-29 Amdahl Corp Condition code determination and data processing
US3979725A (en) * 1973-08-06 1976-09-07 Xerox Corporation Multi-way program branching circuits
SE413707B (sv) * 1977-02-28 1980-06-16 Ellemtel Utvecklings Ab Anordning hos en programminnesstyrd telekommunikationsanleggning

Also Published As

Publication number Publication date
FR1558091A (de) 1969-02-21
NL6803825A (de) 1968-09-18
NL165860B (nl) 1980-12-15
NL165860C (nl) 1981-05-15
GB1159330A (en) 1969-07-23
DE1574994A1 (de) 1971-12-02
US3562713A (en) 1971-02-09

Similar Documents

Publication Publication Date Title
DE2318069C2 (de) Mikroprogrammierte Rechenanlage mit Erweiterung von Steuerfunktionen mittels festverdrahteter logischer Matrix
DE2714805C2 (de)
DE2328058C2 (de) Fehlerdiagnoseeinrichtung in einer digitalen Datenverarbeitungsanordnung
DE2023354C2 (de) Datenverarbeitungsanlage mit einem Mikrobefehlsspeicher
DE1499200B2 (de) Datenverarbeitungsanlage mit vorranggesteuerter programm unterbrechung
DE1915818A1 (de) Elektronisches Datenverarbeitungssystem
DE2416609A1 (de) Einrichtung zum vereinfachten speicherschutz und zur adressuebersetzung
DE3048365A1 (de) Speicherschutzsystem und datenverarbeitungssystem mit einem solchen speicherschutzsystem
EP0010186B1 (de) Vorrichtung zum Bearbeiten bezeichneter Hinweise
DE1931966B2 (de) Datenverarbeitungsanlage mit Assoziativspeichern
DE1275800B (de) Steuerwerk fuer datenverarbeitende Maschinen
DE2339636A1 (de) Programmsteuereinrichtung
DE2145709A1 (de) Datenverarbeitungsanlage
DE2539211A1 (de) Zugriffssteuereinheit
DE1935944C3 (de) Steuereinrichtung in einer elektronischen Datenverarbeitungsanlage
DE2461592C3 (de) Anordnung zur Durchführung von Wartungsoperationen bei einem Datenverarbeitungssystem
DE1909090C3 (de) Schutzeinrichtung für den Arbeitsspeicher einer Rechenanlage
DE2245284C3 (de) Datenverarbeitungsanlage
DE1806535A1 (de) Digitale Rechenanlage
DE2702722C2 (de) Einrichtung zur Verarbeitung nicht direkt ausführbarer Instruktionen
DE1574994B2 (de) Digitalrechner mit ueberprueftem unterprogrammaufruf
DE2336676B2 (de) Einrichtung zur Modifizierung von Mikroprogrammbefehlen
DE2723706A1 (de) Einrichtung zum adressenvergleich
CH632349A5 (de) Einrichtung zur mikrobefehlssteuerung.
DE2622140C3 (de) Einrichtung zur Steuerung manueller Operationen