DE2414311C2 - Speicherschutzeinrichtung - Google Patents
SpeicherschutzeinrichtungInfo
- Publication number
- DE2414311C2 DE2414311C2 DE2414311A DE2414311A DE2414311C2 DE 2414311 C2 DE2414311 C2 DE 2414311C2 DE 2414311 A DE2414311 A DE 2414311A DE 2414311 A DE2414311 A DE 2414311A DE 2414311 C2 DE2414311 C2 DE 2414311C2
- Authority
- DE
- Germany
- Prior art keywords
- keyword
- memory
- program
- register
- protection
- 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.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1458—Protection against unauthorised use of memory or access to memory by checking the subject access rights
- G06F12/1466—Key-lock mechanism
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Description
20
25
jo
35
•ti
Die Erfindung betrifft eine Speicherschutzeinrichtung
mit einem Schlüssclwortspeicher, gemäß dem Oberbegriff des Anspruchs 1.
Insbesondere bei der gleichzeitigen Verarbeitung von mehreren Anwender-Programmen ist es notwendig, die hi
verschiedenen Datenblöcke gegen unerlaubten Zugriff durch nicht autorisierte Benutzer zu schützen. Auch in
bezug auf besonders wichtige Programme ist es notwendig, eine Zerstörung der gespeicherten l'rogrammdaten
durch fehlerhafte Zugriffe zu verhindern. Γ.ίη sol- ir,
ches wichtiges Programm mit kritischen Daten ist nvjisi
in bestimmten, vorher definierten Spcichcrblöckcn im adressierbaren Hauplspeichcr gespeichert und ein
Schreib/.ugriff zu einem solchen Datenblock während der Ausführung irgendeines Anwender-Programmes.
das sich auf Daten in irgendeinem anderen Speicherblock bezieht, könnte schwerwiegende Folgen haben.
Es ist bekannt, jedem Speicherblock ein Schutzbit zuzuordnen. Abhängig vom Wert dieses Bits kann ein
Zugriff zu diesem Block erfolgen oder nicht.
Es sind auch Einrichtungen bekanntgeworden, die zu jedem Speicherblock ein Speicherschutz-Sch'üsselwort
in einem eigenen Schlüsselwortspeicher abspeichern. In der Praxis wird meist jedem der verwendeten Programme
ein Schlüsselwort zugeordnet. Bei der Ausführung des Programmes werden die Schlüsselworte ausgelesen
und mit den Schlüsselv/orten verglichen, welche den gerade
verwendeten Speicherblocks zugeordnet sind. Nach der US-Patentschrift 33 77 624 erfolgt der Zugriff
zu den Schlüsselworten aufgrund einer Programmidentifikation vom Programmspeicher. Die ausgelesenen
Schlüsicl-'Orte werden geprüft, wobei jedes Bit einer
bestimmten geschützten Funktion entspricht. Das aufgrund der Programmidentifikation ausgelesene Schlüsselwort
kann eventuell nur aus einem einzigen Bit bestehen, das die Schreiberlaubnis für das betreffende Programm
in dem betreffenden Speicherblock angibt.
Eine andere Speicherschutzeinrichtung ist in dem IBM TECHNICAL DISCLOSURE BULLETIN. Juni
1971, Seite 109-'.10 beschrieben. Dieser Artikel bezieht
sich auf ein Multiprozessor-System, in dem der Schlüsselwortspeicher auch dazu benutzt wird, um anzugeben,
ob ein gerade ausgeführtes Programm sich im lokalen Pufferspeicher befindet. Beim Laden des betreffenden
lokalen Pufferspeichers wird also ein Schlüsselwort,
welches auf eine bestimmte Adresse hinweist, in einer Tabelle gespeichert. Während der Ausführung des
Programmes, d. h. also während aufeinanderfolgender Instruktionen, wird das mit der Instruktion verbundene
Schlüsselwort mit dem Schlüsselwort im Schlüsselwortspeicher verglichen. Wird kein positives Vergleichsergebnis
festgestellt, müssen in den lokalen Pufferspeicher die betreffenden Daten geladen werden.
Wenn in einer virtuellen Pro/.;ßanordnung, die mit
Prioritätsstcuerung arbeitet, ein Programmwechsel durch das Sleuerprogramm oder durch das Auftreten
eines Unterbrcchungssignales stattfindet, setzt der Prozessor
seine Tätigkeit automatisch mit dem neuen Programm fort. Es muß deshalb das Speicherschutz-Schlüsselwort
ausgewechselt werden. Gemäß einem älteren Vorschlag (DE-OS 22 51 876) ist hierzu ein Register in
einem Pufferspeicher für jedes mögliche Unterniveau aller Unterbrechungsniveau1, vorgesehen. Diese Einrichtung
erfordert eine hohe Zahl von Registern und umfangreiche Datenübertragungen.
Die DE-OS 20 10 640 beschreibt eine Schaltungsanordnung
zur Durchführung des Speicherschutzes in Verbindung mit Kanalstcucreinheiten einer digitalen
Rechcnanlage. die selbständig längere Datenfolgen in aufeinanderfolgende Hauptspeicherplätze einschreiben.
Für jeden Datenblock des Hauptspeichers ist ein Speicherschlüssel vorgesehen. Das Kanalprogramm steht im
Hauptspeicher und seine Anfangsadresse befindet sich im KanaladrcÜwört.das sich die Kanalsteuereinheit bei
Beginn des Programmes von einem festen Hauptspeicherplatz holt. Das Kanaladrcßwort enthält außerdem
einen Schul/schlü'ssel. der für das gesamte Kaniilpro
gramm giiliig ist und in einem separaten Schui/.schlus·
scliegister gespeichert wird. Dieser .Schulzschlüssel
wird bei Beginn des Daicr.übcnragungsprograinnies
und bei jeder Überschreitung einer Blockgren/.e mit
:inem aus einem Schlüsselworispeicher ausgelesenen
Schlüsselwort verglichen.
Dadurch, daß der Schutzschlüssel bereits im Kanaladreßwort
enthalten ist und daß zur Durchführung des Kanalprogrammes ein fest vorgegebener Speicherplatz
adressiert werden muß. mangelt es dieser bekannten Einrichtung an der für eine Muiliprogrammierung nötige
Flexibilität und ist auch diese bekannte Einrichtung für den Ablauf von intern in der Datenverarbeitungsanlage
ablaufenden Anwendungsprogramme nicht geeignet.
Der Erfindung liegt daher die Aufgabe zugrunde, separate Speicherschutz-Schlüsselworttabellen zu jedem
Programm zu vermeiden und eine einfache Speicherschulzeinrichtung für Programmunterbrechungen mit
mehreren Prioritätsniveaus in einer virtuellen Prozeßanordnung anzugeben.
Diese Aufgabe wird durch die im Kennzeichen des Hauptanspruches beschriebene Einrichtung gelöst.
Die Erfindung hat den Vorteil, die Notwendigkeit der Bereitstellung von separaten Speicherschutz-Schlüsselworttabellen
mit zugeordneten Programmidentifizisrup.gen
zu vermeiden. Es ist auch nicht notwendig, hinsichtlich eines jeden Instruktionsformates der Programme
separate Speicherschutz-Schlüsselworte zuzuordnen. Dadurch werden die »Verwaltungsspeicherzugriffe«
zum Hauptspeicher drastisch vermindert. Nach der Erfindung wird der Speicherschutz dadurch erreicht,
daß Schlüsselworte zu bestimmten Speicherblöcken zugeordnet werden. Das Schlüsselwort, das dem Speicherblock
zugeordnet ist. der die erste auszuführende Instruktion eines Programmes enthält, wird in ein separates
Register gestellt. Bei jeder Ausführung einer möglicherweise geschützten Instruktion dieses Programmes
wird das in diesem separaten Register gespeicherte Schlüsselwort mit dem Schlüsselwort verglichen, das
dem beireffenden Speicherbiock zugeordnet ist. der durch das Programm adressiert wird. Wird kein positives
Vergleichsergebnis festgestellt, wird der Zugriff zum Speiche- unterdrückt und ein Ausnahmesignal erzeugt.
Es kann also jedem Programm ein unterschiedliches Speicherschutz-Schlüsselwort zugeordnet werden
oder es kann dasselbe Schlüsselwort mehreren Programmen zugeteilt werden. In jedem Fall muß aber das
im separaten Register gespeicherte Schlüsselwort übereinstimmen mit derr. Schlüsselwort, r,'as dem Speicherbiock
dieses Programmes zugeordnet ist.
Hierdurch wird es dem Überwachungsprogramm ermöglicht,
das zu verwendende Speicherschutz-Schlüsselwort nach Wunsch zu verändern. Auf diese Art können
auch spezielle Speicherschutz-Schlüsselworte erkannt werden, welche gene.ell Schreibzugriffe zum zugeordneten
Speicherblock gestatten. Solche speziellen Schlüsselworte können z. B. nur für das Überwachungsprogramm vorgeselien werden. Ein zusätzliches Schlüsselwort
kann dazu verwendet werden, jedem Programm die geschützte Zugriffsoperation in seinem Speicherblock
zu gestatten. Hierdurch wird ein hochflexibler Speicherschutz erzielt. Die Anzahl der zu verwendenden
Register zur Speicherung der Schlüsselworte ist dabei minimal. Die Vorteile der Erfindung kommen besonders
stark zur Geltung in einer virtuellen Prozessoranordnung mit Programmunterbrechungen auf mehreren
Prioritätsniveaus.
Ein Ausführungs^eispiel der Erfindung soll nun anhand
von Figuren beschrieben werden. Es zeigt
Fig. 1 ein Blockschere einer Speicherschutzeinrichlung.
Fig.2 eine virtuelle Prozessoranordnung mit Programmunterbrechungen
auf verschiedene Prioritätsniveaus,
F i g. J eine Speicherschutzeinrichtung mit Programmunterbrechungen
auf verschiedenen Prioritätsniveaus und
F i g. 4 eine Anordnung von Speicherstellen.
Der in Fig. 1 gezeigte Hauptspeicher 10 wird durch Adressen adressiert, welche von einer zentralen Verarbeitungseinheil erzeugt werden und im Speicheradressenregister 11 gespeichert werden. Die hochwertigen Bits dieser Adresse gelangen auf die Leitungen 14, während die nicderwertigen Bits des Adressenregisters auf die Leitungen 15 gelangen. Die Signale auf den Leitungen 14 und 15 stellen zusammen also eine Adresse einer Speicherstelle im Hauptspeicher 10 dar. Die Adressenbits auf den Leitungen 14 werden vom Decoder 16 decodiert und adressieren einen aus vielen Registern bestehenden Schlüsselwortspeicher 18.
Der in Fig. 1 gezeigte Hauptspeicher 10 wird durch Adressen adressiert, welche von einer zentralen Verarbeitungseinheil erzeugt werden und im Speicheradressenregister 11 gespeichert werden. Die hochwertigen Bits dieser Adresse gelangen auf die Leitungen 14, während die nicderwertigen Bits des Adressenregisters auf die Leitungen 15 gelangen. Die Signale auf den Leitungen 14 und 15 stellen zusammen also eine Adresse einer Speicherstelle im Hauptspeicher 10 dar. Die Adressenbits auf den Leitungen 14 werden vom Decoder 16 decodiert und adressieren einen aus vielen Registern bestehenden Schlüsselwortspeicher 18.
Die Register im Speicher 18 werden zu Beginn der Verarbeitung vom Uberwachungspr:-,;;ramm geladen,
das zu diesem Zwecke eine Schreibinstrukiion SKR erzeugt,
die an die Torschaltung 19 angelegt wird.
Die niederwertigen Bits des Adreßregisters 11 werden
sodann in das ausgewählte Register im Speicher 18 eingelese :i.
Vordem Laden des Registers wird die Kippschaltung 20 durch ein Signal am Eingang 21 zurückgestellt, wodurch
die Erzeugung eines Ausnahme- bzw. Fehlersignales am Ausgang des UND-Gliedes 22 vermieden
wird.
In der in Fig. 1 gezeigten Einrichtung werden drei
Datenbits als Speicherschutzschlüsselwort in das Register im Speicher 18 eingelesen.
Nach der Beendigung des Ladevorgangs des Registers wird ein Signal am Eingang 23 erzeugt, welches die
Kippschaltung 20 zurückstellt und damit das UND-Glied 22 zur Erzeugung eines Fehlersignales für den
Fall vorbereitet, daß ein nicht autorisierter Zugriff zum Speicherblock durchgeführt wird.
Vcr der Ausführung eines Anwendungsprogrammes
wird ein Instruktions-Abrufzyklus durchgeführt, indem eine Adresse über die Leitungen 14 und 15 dem Speicher
10 angeboten wird. Die Verarbeitungseinheit CPU
4S erkennt diesen Instruktions-Abrufzykluc und erzeugt
am Eingang 24 ein Steuersignal, welches das UND-Glied 25 vorbereitet. Hierdurch wird das bestimmte
Schlüsselwort, welches dem Hauptspeicherblock zugeordnet ist, der gerade adressiert wird, über die UND-Schaltung
25 in das Schutzschlüsselwortregister 26 gebracht.
Nach Beendigung dieses Abrufzyklus wird das Signa! am Eingang 24 entfernt, so daß der Inhalt des Schutzsciilüsselwortregisters
26 unter normalen Umständen während der Ausführung des betreffenden Anwendungsprogrammes
nicht geändert wird. Bei jeder Decodierung der Blockadresse durch den Decoder 16 wird
der Inhalt des betreffenden Registers im Speicher 18 als ein Eingang an der Vergleicher 30 angelegt. Der Vergleicher
30 vergleicht das Speicherschutz-Schlüsselwort vom Speicher 18 mit dem Inhalt des Schutzschlüsselwortregisters
26 und erzeugt auf der Le'tuiig 31 ein
Signal, wenn die beiden Eingänge nicht übereinstimmen. Dieses Signal liefert einen zweiten Eingang zum UND-Glied
22. Während de·' Ausführung eines Anwendungsprogrammes,
in dem Operationen durchgeführt werden, die geschützt sind, wird ein Signal am Eingang 32 erzeugt
und somit das letzte Vorbereitungssignal des
UND-Gliedes 22 geliefert. Wenn alle drei Eingangssignale
am UND-Glied 22 anliegen, wird ein Ausgangssignal am Ausgang 35 erzeugt, welches anzeigt, daß die
beabsichtigte Operation nicht bewilligt ist. Im anderen Falle, wenn nicht alle Eingangssignale am UND-Glied
22 anliegen, wird ein Signal am Ausgang 36 erzeugt, welches anzeigt, daß die beabsichtigte Operation durchgeführt
werden kann.
Es kann z. B. gewünscht sein, das Anwendungsprogramm am Schreiben in einem bestimmten Block des
Speichers zu verhindern. In diesem Falle würde vom
Register im Speicher 18, das durch die Adressierung dieses Blocks über den Dekoder 16 ausgewählt wird, ein
Ausgangssignr.l erzeugt werden, das kein positives Vergleichsergebnis
mit dem ursprünglich in das Schutzschlüsselwortregister 26 geladenen Schlüsselwort liefern
würde. Das Signal auf der Leitung 32 erzeugt daher ein Ausgangssignal am Ausgang 35 und zeigt an. daß die
beabsichtigte Operation verholen ist. Hierauf kann der Prozessor durch eine Programmunterbrechung unterbrochen
werden oder es kann eine andere korrigierende Operation ausgelöst werden.
Es kann vorkommen, daß es notwendig wird, den Inhalt
des Schutzschlüsselwortrcgistcrs 26 zu verändern. Zum Beispiel kann die Ausführung eines Anwendungsprogrammes
durch ein steuerndes Überwachungsprogramm unterbrochen werden. Wenn dies auftritt, kann
es notwendig werden, in das Schutzschlüsselwortregister 26 ein anderes Schlüsselwort zu setzen. Hierzu ist
eine Instruktion APK zur Veränderung des Schlüsselwortes vorgesehen, die Eingangssignale an das UND-Glied
27 liefert. In das Adreßregister 11 werden geeignete
niederwertige Bits gestellt, wodurch der Inhalt des Schutzschlüsselwortregisters 26 über die Torschaltungen
19 angesteuert werden kann. Diese Ansteuerung erfordert auch eine Schreibinstruktion SKR und die genannte
Veränderungsinstruktion APK, welche das UND-Glied 27 durchschaltet. Auf die Leitungen 14 werden
lauter Nullen gestellt, so daß die Register im Speicher 18 nicht verändert werden. Falls gewünscht, kann
der Inhalt des Schutzschlüsselwortregisters 26 ausgelesen und abgespeichert werden, um diesen Inhalt in bekannter
Weise beim Auftreten einer Programmunterbrechung sicherzustellen. Das erneute Laden des
Schutzschlüsselwortregisters 26. sobald die Steuerung der Verarbeitungseinheit wieder vom Anwendungsprogramm
übernommen wird, kann auf die oben beschriebene Weise geschehen.
Wie aus der nachfolgenden Beschreibung von F i g. 3 hervorgeht, kann der Vergleicher 30 in F i g. 1 ein Ausgangssignal
arch bei anderen Operationen aus dem Vergleich der beiden betreffenden Schlüsselwörter erzeugen.
Es kann ein spezielles Schlüsselwort benutzt werden, welches Schreiben oder Lesen bezüglich jeder
Speicherstelle gestattet und der Vergleicher 30 kann dieses spezielle Schlüsselwort erkennen, und kein Ausgangssignal
31 erzeugen, obwohl dieses Schlüsselwort im Schutzschlüsselwortregister 26 nicht mit dem Ausgang
des adressierten Registers im Speicher 18 übereinstimmt. Umgekehrt kann auch eine Speicherstelle angesteuert
werden zur Speicherung von Daten unabhängig von dem spezifischen Schlüsselwort, das mit dem betreffenden
Programm verbunden ist. Ein Schlüsselwort mit besonderem Gewicht in einem der Register des Speichers
18 könnte auch das Ausgangssignal 31 unterdrükken, sobald es vom Vergleicher 30 erzeugt wird, und
obwohl ein fehlender Vergleich mit den Ausgangssignalen des Schutzschlüsselwortregisters 26 vorliegt.
H-OIl
An dieser Stelle soll betont werden, daß der beschriebene
Speicherschutz sich nicht allein auf nicht-autorisiertes
Lesen. Schreiben oder andere Funktionen bezüglich von Daten oder Programmen in einem bestimm-
'< ten .Speicherblock bc/icht, sondern daß eine Vielzahl
von Operationen bezüglich eines bestimmten Speicher·
blocks im Speicher 10 geschützt wird. Hier soll auch erwähnt werden, daß das Eingangssignal zur Torschaltung
19 nicht nur von den nicderwertigen Bits des
κι Adressenregisters 11 kommen kann, sondern auch von
anderen Quellen, wie z. B. der CVi-ASammellcitung.
Die oben gczeigle Einrichtung funktioniert also so.
daß bei jedem .Speicherzugriff der Inhalt des Registers im Schlüsselwortspeichcr 18, das dem Speicherblock mit
Γ) der adressierten .Speicherstelle zugeordnet ist. mit dem
Inhalt des Schutzschlüsselwortrcgistes 26, das dem momentan ausgeführten Programm zugeordnet ist. verglichen
wird. Wenn eine geschützte Schreibuperation durchgeführt wird und der Inhalt dieser beiden Register
verschieden ist, wird ein Schutz-Ausnahmesignal erzeugt. Die Schreiboperation wird verhindert und eine
Fehlerroutine läuft an.
Es soll nun eine Prozeßanordnung mit mehreren Untcrbrechungsniveaus
beschrieben werden. In einem solchcn System kann ein Sprung zu einem höheren Untcrbrechungsniveau
ohnu Programmunterstützung auf eine Anforderung einer externen Anforderungsquelle
(Untchrechungsanforderung) durchgeführt werden.
Zusätzlich wird eines von einer Vielzahl von verschiede-
jo nen möglichen Programmen oder ein Programmeingangspunkt
zur Ausführung avf dem ausgewählten Niveau ohne Programmunterstüiuung ausgewählt. Früher
wurde jedem dieser Programme ein verschiedenes Schlüsselwort zugeordnet. Deshalb waren viele Schutz-
j-, schlüsselwortrcgister für jedes Niveau notwendig, um
der Anlage die Fähigkeil zu erhalten, Niveaus zu verändern und Programme (Untcrniveuas) auszuwählen und
einen Speicherschutz ohne Programmunterstützung zu gewährleisten.
Mit der nachfolgend beschriebenen Einrichtung w ird dem Rechner die Fähigkeit erhalten. Unterbrechungsniveaus
zu verändern und Programme auszuwählen, wobei ein Speicherschutz mit nur einem Schlüsselwort pro
Niveau — und nicht ein Schlüsselwort pro Programm (Unterniveau) — verwendet wird. Die Einrichtung tritt
in Tätigkeit, wenn ein Wechsel des Unterbrechungsniveaus stattgefunden hat. Während des Abrufzyklus der
ersten Instruktion, die nach dem Niveauswechsel durchgeführt werden soli, ersetzt der Inhalt des Registers im
Schlüsselwortspcicher 18, das dem adressierten Speicherblock zugeordnet ist. den Inhalt des Schu.zschlüsselwortregisters
des gegenwärtig aktiven Niveaus. Der Inhalt des Schlüsselwortregisters wird nun mit dem Inhalt
des betreffenden Registers im Speicher 18 bei allen nachfolgenden Speicherzugriffen verglichen, so daß ein
Speicherschutz ohne Softwareunterstützung erzielt wird. Der Inhalt des Schlüsselworiregisters eines unterbrochenen
Programmes wird bis zur Wiederaufnahme des Programmes an anderer Stelle zwischengespeichert.
bo In F i g. 2 ist eine Speicherschutzeinrichtung für eine
zentrale Verarbeitungseinheit mit mehreren Prioritätsniveaus von Programmunterbrechungen gezeigt. Der
Hauptspeicher 40 besteht aus einer Serie von verschiedenen Blocks 1 — N. denen jeweils ein Register 41 bis
46 zugeordnet ist. Die Register 41 bis 46 sind mit den Registern im Schlüsselwortspeicher 18 in Fig. 1 zu vergleichen
und werden zu Beginn der Verarbeitung mit Schlüsselwortdaten geladen, wie es im Zusammenhang
mit F ι g. 2 oben beschrieben wurde. Die Schlüsselwörter
werden dabei "or der Ausführung eines Anwendungsprogramme
geladen. Sobald ein Unterbrcchungsniveauwcehsel festgestellt wird, wird ein Signal
am Eingang 47 erzeugt und damit das UND-Glied 48 vorbereitet. Der niveauorientierte Prozessor enthält
Prioritatsniveau-Auswahlschaltungeii 49. mit deren Hilfe
CiP-; · der Schlüsselwortregister 50 bis 53, die jeweils
einem Prioritätsniveau des Prozesses zugeordnet sind, ausgewählt wird.
Das Register 50 mit dem Niveau 0 ist eircr Unterbrechung mit dem höchsten Niveau zugeordnet, während
das Register 53 des Niveaus 3 dem niedrigsten Prioritätsniveau anspricht. Der Unterbrcchungswcchsel und
das Niveau dieser Unterbrechung wird vom Prozessor erkannt und das entsprechende Register 50 bis 53 wird
mit dem Inhalt eines entsprechenden Registers 41 bis 46 geladen, und zwar als Funktion des betreffenden SpeirhprKlopL·^ im Haiintsnpiphpr 40 Apr Hijr/jh At*n CfSiCf!
Instruktionsabrufzyklus zur Durchführung der Unterroutine
zur Bearbeitung der Programmunterbrechung adressiert wird. Nach dem Laden der Register 50 bis 53
ist eines dieser Register, und zwar das mit der höchsten Priorität, dauernd über die Auswahllogik 49 aktiv und
liefert ein Eingangssignal zum Vergleicher 54. κ.
Bei der Adressierung eines Speichcrblocks während der Ausführung des Anwendungsprogrammes wird sein
Speicherschutz-Schlüsselwort mit dem Inhalt des Schutzschlüsselwortregisters 50—53, das dem gegenwärtig
verarbeiteten Unterbrechungsniveau zugcord- jo
net i .. verglichen. Bei fehlendem Vergleich werden die beschriebenen Alarmoperationen ausgelöst.
In Fig. 3 ist ein Blockschema und insbesondere die
logische Einrichtung einer solchen Prozessoranordnung näher gezeigt. Das Speicheradreßregister 55 wird zur jo
Adressierung des Hauptspeichers 56 über die Adreßsammelleitung 57 verwendet. Die hochwertigen Bits
dieser Adresse werden in den Blockadreßdecodcr 58 gebracht, welcher eines der Register im Schlüsselwortspeicher
59 auswählt. In der gezeigten Einrichtung sind 128 Register zu jeweils 3 Bits vorgesehen. Über den
Eingang 60 werden die 3 Bits entweder in das betreffende Register des Speichers 59, oder in eines der Schutzschlüsselwortregister
61, oder in beide geladen. Das Signal am Eingang 60 kann von den niederwertigen Bits
des Adreßregisters 55 oder von einer anderen geeigneten Quelle, wie z. B. der DatensammeHcitung der zentralen
Verarbeitungseinheit, erhalten werden.
Das Laden eines der Register im Speicher 59 wird von einer entsprechenden Ladeinstruktion IPL gesteuert.
die auch die Kippschaltung 62 zurückstellt. Dadurch wird eine Fehleranzeige während des ininitialen Laden
vermieden. Eine Instruktion zur Veränderung der Schlüsselworte VSW und ein Taktpuls C schalten das
UND-Glied 64 durch und ermöglichen dadurch den Rcgistern
im Speicher 59 die 3-Bit-Bytes am Eingang 60 zu empfangen. Während der Beginnoperation des Ladens
des Programmes stellt die Instruktion IPL die Kippschaltung 62 zurück, die in diesem Zustand gehalten
wird, bis eines der Register geladen ist. Hierdurch wird M) ein Setzen der Kippschaltung 62 verhindert, solange die
Speicherschutzeinrichtung noch nicht wirksam ist. Zur Adressierung der 128 Register im Speicher 59 sind
7 Bits der hochwertigen Adressenbits notwendig, welche über die Leitungen 57 zum Blockadressendecoder μ
58 gelangen. Am Ausgang 65 wählt dieser Decoder eines der 128 Register aus. Jedes der Register im Speicher
59 liefert einen Vergleich mit einem zugeordneten Register 41 bis 46 in I i g. I. Entsprechend wird der Hauptspeicher
40 in 1' i g. 2 in 128 Blocks unterteilt, die jede
beliebige Große haben können.
Nachdem die Register im Speicher 59 die beireffenden
Schlüsselwörter für die jeweils zugeordneten llauptspcicherblöckc empfangen haben, kann der Prozessor
mil der Ausführung der aufeinanderfolgenden Instruktionen beginnen. Das Untcrbrecliungssignal
UNT setzt über einen Eingang die Kippschaltung 66, wobei dieses Unterbrechungssignal von der zentralen
Verarbeitungseinheit CPL/erzeugt wurde. Der Ausgang
der Kippschaltung 66 bereitet das UND-Glied 67 und die UND-Glieder 68 vor. Die Ausführung eines Instruktionsabrufzyklus
erzeugt ein Signal am Eingang /, welches ebenfalls das UND-Glied 67 vorbereitet. Die
Adresse in der geholten Instruktion liegt auf 57 an, wobei die hochwertigen Bits eines der Register im Speicher
59 auswählen. Der Inhalt des ausgewählten Registers im
gen der UND-Glieder 68 und liefert somit den Eingang
zum Schutzschlüsselwortrcgister 61 über die ODER-Glieder 69. Das durch die neue Unterbrechung aktiv
gewordene Prioriläisniveau wird durch ein geeignetes
Auswahl.signal von der zentralen Verarbeitungseinheit am Auswahleingang NIV AUSW. zu den Registern 61
angegeben. Eines der vier 3-Bitregister 61, das dem neuen Unterbrechungsniveau zugeordnet ist, wird also mit
dem Schlüsselwort vom ausgewählten Register im Speicher :59 geladen. Diese Auswahl erfolgt durch ein Taktsignal
während des Instruktionsabrufzyklus /, was durch den Eingang CA zum UND-Glied 67 illustriert wird.
Hierdurch wird ein Abtastimpuls zum ausgewählten Register 61 über das ODER-Glied 70 erhalten. Ein darauf
folgender Zyklus CB während des Instruktionszyklus / setzt die Kippschaltung 66 zurück.
In der Folge verursacht jede Instruktion, von der die
zentrale Verarbeitungseinheit annimmt, daß sie eine geschützte Operation versucht, einen Vergleich des gegenwärtigen
Schlüsselwortes, wie es vom adressierten Register im Speicher 59 erhalten wird, mit dem Inhalt
des entsprechenden Registers 61, das dem aktiven Unterbrechungsniveau zugeordnet ist. Der Vergleich wird
in den Exklusiv-ODER-Gliedern 71 durchgeführt. Wenn an einem dieser Glieder Eingänge anliegen, welche verschieden
sind, erzeugt es ein Signal zum ODER-Glied 72. welches dadurch ein Eingangssignal zum UND-Invcrt-Glied
73 erzeugt. Wenn auch alle anderen Eingänge vorhanden sind, wird ein Ausgangssignal 74 erzeugt,
das anzeigt, daß eine Fehlerprüfoperation eingeleitet werden sollte. Wenn andererseits Eingänge zum logischen
Glied 73 negativ sind, und dadurch einen positiven Vergleich anzeigen, erzeugt das UND-Glied 75 ein Ausgar.gssignal
beim Erscheinen eines Taktpulses Cunddas Signal am Ausgang 76 zeigt somit an. daß die beabsichtigte
Operation im Prozessor durchgeführt werden kann.
Wie in F i g. 3 gezeigt, ist die beschriebene Speicherschutzeinrichtung
als Schreib-Schutz gedacht. Ein Anwendungsprogramm, das von einem bestimmten Speichcrblock
ausgelesen wird, wird also daran gehindert, den Inhalt von Speicherstellen in einem anderen Block
zu zerstören. Dies ist daraus ersichtlich, daß am Eingang des UND-Gliedes 75 und des UND-Invert-Gliedes 73
ein Spcicher-Schreibsignal SP. SCHR. anliegt, welches den Versuch der Instruktion anzeigt, eine Speicher-Schreib-Operation
durchzuführen. Wenn diese Schreiboperation bewilligt wird, wird ein Ausgangssignal 76
erzeugt und kann die Operation durchgeführt werden.
Ein weiterer Vorbereitungscingang zum UNDInverl-Glied
73 wird durch das Ausgangssignal des UND-Gliedes 77 erzeugt. Das UND-Glied 77 wird dann vorbereitet,
wenn die Verriegelungsschallung 62 gesetzt wurde und damit anzeigt, daß der Prozessor im Schutzmodus
arbeitet, und auch wenn kein Schutz-Ausschaltsignal »SP. SCHUTZ UNTERDRm geliefert wurde. Die
Schutzausschiltung kann im Zusammenhang mit verschiedenen
Funktionen, wie z. B. Überwachungsprogranimfiinktionen,
manueller Datenspeicherung in den Speicher von der Konsole, Zykluscntnahmi-operationen.
Datenübertragung von einem anderen Prozessor oder dergleichen verwendet werden. Es kann beabsichtigt
sein, die geschützte Operation für jede Anwendungsprogrammausführung
in ausgewählten Spcicherblocks des Speichers 56 zu gestatten. In der Schaltung
nach Fig. 3 ist zur Ausführung dieser Operation das invertierende UND-Glied 78 vorgesehen. Zu jedem
Block, der auf diese Weise nicht geschützt werden soll,
wird ein aus lauter Einsen bestehendes Schlüsselwort geladen. Wenn dieser Block adressiert wird, erzeugen
die Eingänge zum UND-Invert-Glied 78, die vom ausgewählten
Register im Speicher 59 lauter Einsen erhalten, am Ausgang des Gliedes 78 ein negatives Signal und
nehmen damit die Vorbereitung des UND-Invert-Glicdes
73 weg. Dementsprechend bereitet das UND-Invert-Glied 73 das UND-Glied 75 vor, so dall ein den
Zugriff bewilligendes Ausgangssignal 76 erzeugt wird, wenn zugleich der Taktpuls C und ein Signal auf der
Leitung 79 anliegt, das den Versuch der Ausführung der geschützten Operation im Prozessor anzeigt. Das Ausgangssignal
76 wird also unabhängig davon erzeugt, ob ein positiver Vergleich durch die Exklusiv-ODER-Glieder
71 stattgefunden hat. Gleichermaßen können Fälle auftreten, in denen die eventuell geschützte Operation
für die Ausführung eines Programmes unabhängig vom Zustand des mit dem betreffenden Block verbundenen
Schlüsselwortes gestattet wird. Zu diesem Zweck werden in eines der Register 61 lauter Nullen geladen. Das
10
der Startinstruktion .VM und damit des Speicherbereiches
angibt, ii. dem die verschiedenen Unterniveauadressen
gespeichert sind.
Wie aus F i g. 3 ersichtlich ist. wird die Niveauwort-Adrcssc
auf die Sammelleitung 57 gebracht. Eine weitere Aktion findet jedoch zunächst nicht statt, da noch
kein Insiruktionsabrufzyklus eingeleitet ist. Das Niveauwort wird kombiniert mit der Unterniveau-Adressenverschiebungsiingabe
O/S/Jund ergibt somit die Adresse
X X der Spcichcrstelle, in der die Startadresse der Unterroutine enthalten ist. die die betreffende Programmunterbrechung
abwickelt. Es wurde somit die Startadresse der ersten Instruktion gewonnen und diese
wird auf die Sammelleitung 57 wahrend des Instruktionsabrufzyklus
gegeben. Hierauf führt die in F i g. J beschriebene Einrichtung bei jeder lnstruktionsausfuhrung
die oben beschriebene Schut/prüfung durch.
X X | NIVEAU | I | DISP F | |
NIVEAU 1 | XX | NIVEAU | 1 | DISP F |
SIA LISTE | ||||
XX | NIVEAU | I | DISPl | |
XX | NIVEALI | 1 | DISPO | |
X X | NIVEAU | 0 | DISPO | |
NIVEAUO | XX | NIVEAU | 0 | DISPO |
SlA LISTE | ||||
X X | NIVEAU | 0 | DISP 1 | |
X X | NIVEAU | 0 | DISPO | |
OD | NIVEAU | 3 | SiA ZEIGER | |
OC | NIVEAU | 2 | SIA ZEIGER | |
NIVEAU | OB | NIVEAU | 1 | SlA ZEIGER |
WORTE | OA | NIVEAU | 0 | SIA ZEIGER |
Das Überwachungsprogramm kann eines oder alle
ODER-Glied 80 erzeugt sodann ein negatives Aus- 40 Schutzschlüsselwori-Register 61 auslesen, deren Inhalt
gangssignal und das UND-Invert-Glied 73 wird unter
diesen Umständen nic^«. vorbereitet. Das bedeutet, daß
ein Vorbereitungssignal zum UND-Glied 75 unabhängig von einem Vergleichssignal von den Exklusiv-ODER-Gliedern
71 geliefert wird, so daß das Bewilligungssignal 76 erzeugt wird und nicht ein Signal 74 zur
Anzeige einer Schutzverletzung.
Falls nur ein Schreibschutz vorgesehen ist. hat das Setzen der Kippschaltung 62 während des Ladens der
Schlüsselwortregister im Speicher 59 keinen Einfluß, da das Auslesen dieser Schlüsselwortinformation vom
Hauptspeicher und das Laden dieser Bytes in die Register im Speicher 59 keine Speicher-Schreiboperation
mit sich bringt. Wenn jedoch ein Schreib- und ein Leseschutz vorgesehen ist, muß ein Signal zur Ausschaltung
des Speicherschutzes als Eingangssignal zum UND-Glied 77 vorgesehen werden. Dadurch kann das UND-Glied
73 nicht durchschalten und kann kein Schutzverletzungssignal erzeugt werden.
In der nachfolgenden Tabelle ist ein Teil des Hauptspeichers
gezeigt, der im Zusammenhang mit Programmunterbrechungen auf verschiedenen Niveaus
und Unterniveaus Verwendung findet. Falls eine Programmunterbrechung auf einem höheren Niveau als
dem gegenwärtig verwendeten stattfindet, macht der Prozessor einen Zugriff zu den in den Speicherstellen
OA-OD gespeicherten Niveauworten. In diesem Niveau"iorten
ist ein Zeiger gespeichert, der die Adresse zur Identifikation des Benutzers verwende' wird und die
betreffenden Schlüsselwörter später wieder in die Register zurückschreiben.
Zusammenfassend kann die Arbeitsweise des Ausführungsbeispielcs \\ ie folgt dargestellt werden:
ledern Speicherblock im Hauptspeicher wird ein Schlüsselwort zugeordnet und in einem Schlüsselwortspeicher
gespeichert. Während des Abrufzyklus der ersten Instruktion eines Anwendurgsprogrammes wird
das Schlüsselwort, das zu dem Speicherblock gehört, der diese erste Instruktion enthält, in ein Schutzschlüsselworlrcgister
übertragen. Während der Ausführung der folgenden Instruktionen, die möglicherweise geschützte
Operationen enthalten, wird der Inhalt dieses Schlüsselwortregisters mit dem Inhalt des zu dem adressierten
Speichcrblock gehörenden Registers im Schlüsselwortspeicher
verglichen. Wird kein positiver Vergleich festgestellt, ist der Speicherschutz verletzt und
darf die betreffende Operation nicht ausgeführt werden, ledern Programm kann also ein verschiedenes Schlüsselwort
zugeordnet werden oder dasselbe Schlüsselwort kann für verschiedene Programme verwendet
werden. Jedenfalls muß das Schlüsselwort übereinstimmen mit dem Schlüsselwort, das dem betreffenden gera-•
de adressierten Speicherblock zugeordnet ist.
In einer Prozessoranordnung mit verschiedenen Unterbrechungsniveaus
wird jedem Unterbrechungsniveau nur ein einziges Schulzschlüsselwort zugeordnet.
11
Das Schutzschlüsselregister wi'd dabei während des
Abrufzyklus der ersten Instruktion automatisch gesetzt. Der Wert entspricht dem Schlüsselwort, das dem adressierten
Speicherblock zugeordnet ist. Das einem bestimmten Programm zugeordnete Schlüsselwort wird
also zunächst in den Schlüsselwortspeicher gesetzt, in dem jedem Speicherblock ein Schlüsselwort zugeordnet
ist. Dabei werden einem bestimmten Anwendungsprogramm bestimmte Speicherblöcke zugeordnet. Der erste
Abrufzyklus eines Anwendungsprogrammes bestimmt also das Schlüsselwort, das während der Ausführung
dieses Programmes gültig ist. Wenn also das Anwendungsprogramm während seiner Ausführung versucht,
eine geschützte Operation in einem Speicherblock auszuführen, dessen Schlüsselwort verschieden ist 1 ■->
von dem das im ersten Abrufzyklus der ersten Instruktion des Anwendungsprogrammes erhalten wurde, wird
vom Vergleicher kein positiver Vergleich festgestellt
2» Hierzu 3 Blatt Zeichnungen
JO
J5
40
45
55
bO
Claims (5)
1. Speicherschutzeinrichtung mit einem Schlüsselwortspeicher,
in dem zu jedem Daienblock im Hauptspeicher ein Schlüsselwort gespeichert ist und
mit einem Schiüsselwortvergleicher zum Vergleich
dieses mit einem vom jeweiligen Programm abgeleiteten und in einem Schutzschlüsselwortregister abgespeicherten
Schlüsselwort, dadurch gekennzeichnet, daß im Schutzschlüsselwortregister
(26, 61, 50—53) das Schlüsselwort des Speicherblocks, in dem die erste Instruktion des Programmes
gespeichert ist, abgespeichert wird, und daß bei jeder nachfolgenden Instruktion der Vergleicher
(30) dieses Schlüsselwort mit dem aus dem Schlüsselwortspeicher (18, 59) ausgelesenen Schlüsselwort
des jeweils adressierten Speicherblocks vergleicht und bei positivem Vergleich ein Signal (36)
zur Bewilligung des Speicherzugriffs erzeugt.
2. Einrichtung nach Anspruch 1, dadurch gekennzeichnet,
daß der Schlüsselwortspeicher (18,59) mit den hochwertigen Adressenbits der Hauptspeicheradresse
adressiert wird und daß die niederwertigen Bits dieser Adresse in das jeweils adressierte Register
des Schlüsselwortspeichers (18, 59) geladen werden, wobei während des Abrufzyklus der ersten
Instruktion eines Programmes diese niederwertigen Bits auch in das Schutzschiüsselwortregister (26,61)
geladen werden.
3. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, oaß im Schlüsselwortspeichcr (18, 59) ein
spezielles Schlüsselwort %■ speichert wird, derart,
daß der Vergleicher (20) in jedem Fall ein Erlaubnissignal für den jeweiligen Spei 'verzugriff liefert.
4. Einrichtung nach Anspruch I, dadurch gekennzeichnet, daß im Schut/.schlüsselwortrcgistcr (26,61)
ein spezielles Schlüsselwort gespeichert wird, derart, daß der Vergleicher (30) in jedem Falle ein Erlaubnissignal
liefert.
5. Einrichtung nach Anspruch 1 in einer Prozessoranordnung zur Mehrfachprogrammverarbeitung
mit Programmunterbrechungen auf verschiedenen Prioritätsniveaus, dadurch gekennzeichnet, daß für
jedes Unterbrechungsniveau ein Schuizschlüsselwortregister
(50 bis 53) vorgesehen ist. wobei von einer Prioritätsauswahllogik (49) jeweils das Schutzschlüsselwortregister
mit der höchsten aktiven Priorität bei der Ausführung jeder Instruktion des laufenden
Programmes /um Vergleicher (30,54) ausgelesen wird.
10
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US00356015A US3825903A (en) | 1973-04-30 | 1973-04-30 | Automatic switching of storage protect keys |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2414311A1 DE2414311A1 (de) | 1974-11-07 |
DE2414311C2 true DE2414311C2 (de) | 1984-10-04 |
Family
ID=23399751
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2414311A Expired DE2414311C2 (de) | 1973-04-30 | 1974-03-25 | Speicherschutzeinrichtung |
Country Status (7)
Country | Link |
---|---|
US (1) | US3825903A (de) |
JP (1) | JPS5524200B2 (de) |
CA (1) | CA1014672A (de) |
DE (1) | DE2414311C2 (de) |
FR (1) | FR2227579B1 (de) |
GB (1) | GB1437050A (de) |
IT (1) | IT1010742B (de) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4000487A (en) * | 1975-03-26 | 1976-12-28 | Honeywell Information Systems, Inc. | Steering code generating apparatus for use in an input/output processing system |
US4162529A (en) * | 1975-12-04 | 1979-07-24 | Tokyo Shibaura Electric Co., Ltd. | Interruption control system in a multiprocessing system |
US4037214A (en) * | 1976-04-30 | 1977-07-19 | International Business Machines Corporation | Key register controlled accessing system |
DE2721599C2 (de) * | 1976-05-17 | 1983-05-05 | Sperry Corp., 10019 New York, N.Y. | Schaltungsanordnung zur Verhinderung der Ausgabe von Datenworten aus einer EDV-Anlage ohne Sicherheitsverifizierung |
US4244049A (en) * | 1979-02-02 | 1981-01-06 | Burroughs Corporation | Method and apparatus for enhancing I/O transfers in a named data processing system |
US4251885A (en) * | 1979-03-09 | 1981-02-17 | International Business Machines Corporation | Checking programmed controller operation |
US4293910A (en) * | 1979-07-02 | 1981-10-06 | International Business Machines Corporation | Reconfigurable key-in-storage means for protecting interleaved main storage |
US4439830A (en) * | 1981-11-09 | 1984-03-27 | Control Data Corporation | Computer system key and lock protection mechanism |
US4506329A (en) * | 1982-03-08 | 1985-03-19 | Pitney Bowes Inc. | Non-volatile memory serial number lock for electronic postage meter |
US4574350A (en) * | 1982-05-19 | 1986-03-04 | At&T Bell Laboratories | Shared resource locking apparatus |
US4525786A (en) * | 1982-07-12 | 1985-06-25 | Pitney Bowes Inc. | Electronic postage meter having a one time actuable operating program to enable setting of critical accounting registers to predetermined values |
JPS5958700A (ja) * | 1982-09-29 | 1984-04-04 | Fujitsu Ltd | 記憶保護判定方式 |
FR2553541B1 (fr) * | 1983-10-17 | 1992-02-28 | Inst Nat Rech Inf Automat | Dispositif et procede pour le stockage rapide et stable d'informations |
JPS60159940A (ja) * | 1984-01-30 | 1985-08-21 | Fanuc Ltd | プログラムの保護範囲変更方法 |
JPS6376034A (ja) * | 1986-09-19 | 1988-04-06 | Hitachi Ltd | 多重アドレス空間制御方式 |
US5163096A (en) * | 1991-06-06 | 1992-11-10 | International Business Machines Corporation | Storage protection utilizing public storage key control |
US5467396A (en) * | 1993-10-27 | 1995-11-14 | The Titan Corporation | Tamper-proof data storage |
US5488702A (en) * | 1994-04-26 | 1996-01-30 | Unisys Corporation | Data block check sequence generation and validation in a file cache system |
US5852736A (en) * | 1996-03-28 | 1998-12-22 | Intel Corporation | Method and apparatus for protecting data using lock values in a computer system |
US5724551A (en) * | 1996-05-23 | 1998-03-03 | International Business Machines Corporation | Method for managing I/O buffers in shared storage by structuring buffer table having entries include storage keys for controlling accesses to the buffers |
US5809546A (en) * | 1996-05-23 | 1998-09-15 | International Business Machines Corporation | Method for managing I/O buffers in shared storage by structuring buffer table having entries including storage keys for controlling accesses to the buffers |
EP0825530A3 (de) * | 1996-06-20 | 2004-06-02 | Sharp Kabushiki Kaisha | Rechnergerät mit elektrischem wiederschreibbarem nichtflüchtigem Speicher und nichtflüchtiger Halbleiterspeicher |
US6807602B1 (en) * | 2000-10-30 | 2004-10-19 | Hewlett-Packard Development Company, L.P. | System and method for mapping bus addresses to memory locations utilizing access keys and checksums |
US9647838B2 (en) * | 2013-01-25 | 2017-05-09 | Ralph John Hilla | Restructuring the computer and its association with the internet |
US20150261693A1 (en) * | 2014-03-14 | 2015-09-17 | International Business Machines Corporation | Dynamic storage key assignment |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US27251A (en) * | 1860-02-21 | Improvement in compositions formed of caoutchouc | ||
US3328768A (en) * | 1964-04-06 | 1967-06-27 | Ibm | Storage protection systems |
US3377624A (en) * | 1966-01-07 | 1968-04-09 | Ibm | Memory protection system |
US3576544A (en) * | 1968-10-18 | 1971-04-27 | Ibm | Storage protection system |
DE2010640A1 (de) * | 1969-05-19 | 1970-11-26 | VEB Kombinat Robotron, χ 8l42 Radeberg | Patentwesen, Ost-Berlin WPI3989O Schaltungsanordnung zur Durchführung des Speicherschutzes in Verbindung mit Kanalsteuereinheiten |
-
1973
- 1973-04-30 US US00356015A patent/US3825903A/en not_active Expired - Lifetime
-
1974
- 1974-02-28 FR FR7407870A patent/FR2227579B1/fr not_active Expired
- 1974-03-19 GB GB1209074A patent/GB1437050A/en not_active Expired
- 1974-03-25 DE DE2414311A patent/DE2414311C2/de not_active Expired
- 1974-03-28 JP JP3403574A patent/JPS5524200B2/ja not_active Expired
- 1974-04-01 CA CA196,518A patent/CA1014672A/en not_active Expired
- 1974-04-05 IT IT12714/74A patent/IT1010742B/it active
Also Published As
Publication number | Publication date |
---|---|
DE2414311A1 (de) | 1974-11-07 |
IT1010742B (it) | 1977-01-20 |
CA1014672A (en) | 1977-07-26 |
FR2227579B1 (de) | 1976-06-25 |
US3825903A (en) | 1974-07-23 |
GB1437050A (en) | 1976-05-26 |
FR2227579A1 (de) | 1974-11-22 |
JPS5524200B2 (de) | 1980-06-27 |
JPS5011139A (de) | 1975-02-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2414311C2 (de) | Speicherschutzeinrichtung | |
DE3853759T2 (de) | Datenprozessor mit zwei Betriebsmoden. | |
DE68923627T2 (de) | Steuerungsverfahren und -vorrichtung für Nullursprungsdatenräume. | |
DE2645537C2 (de) | ||
DE69032334T2 (de) | Virtuelles Computersystem mit Ein-/Ausgabeunterbrechungssteuerung | |
DE2716051C2 (de) | Datenverarbeitungsanlage mit einem oder mehreren Prozessoren mit mindestem einem Ein-/Ausgabekanal mit mehreren Unterkanälen und mit einer Speicheranordnung, bei der zum Speicherzugriff Schlüssel verwendet werden | |
DE69021899T2 (de) | DMA-Steuerung. | |
DE3785897T2 (de) | Steuervorrichtung zum vorabruf von befehlen. | |
DE2629459C2 (de) | ||
DE3151745C2 (de) | ||
DE68923863T2 (de) | Ein-/Ausgabecachespeicherung. | |
DE3851746T2 (de) | Sprungvorhersage. | |
CH619309A5 (de) | ||
DE69030931T2 (de) | Mehrfachsequenzprozessorsystem | |
DE2458065A1 (de) | Datenverarbeitungsanlage mit sicherung der daten gegen unberechtigten zugriff | |
DE2744531A1 (de) | Elektronische datenverarbeitungsanlage | |
DE2630323B2 (de) | Datenspeichereinrichtung mit einem Hauptspeicher, einem Hilfsspeicher und einer Vorausschaulogik | |
CH615521A5 (de) | ||
DE2302074A1 (de) | Speicherschutzanordnung in einem multiprozessorsystem | |
DE2054830C3 (de) | Informationsverarbeitungsanlage mit Mitteln zum Zugriff zu Speicher-Datenfeldern variabler Länge | |
DE1549531A1 (de) | Digitale Rechenanlage | |
DE2134816C3 (de) | Einrichtung zur Adressenübersetzung | |
DE3750311T2 (de) | Gerät und Verfahren zur Übertragung zwischen Prozessoren. | |
DE3700800C2 (de) | Einrichtung zur Erzeugung eines Unterbrechungspunktes in einem Mikroprozessor | |
DE102016201340A1 (de) | Konfigurierung serieller Geräte |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OD | Request for examination | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |