[go: up one dir, main page]

DE3121710C2 - Steuereinrichtung für einen virtuellen Speicher in einer Datenverarbeitungsanlage - Google Patents

Steuereinrichtung für einen virtuellen Speicher in einer Datenverarbeitungsanlage

Info

Publication number
DE3121710C2
DE3121710C2 DE3121710A DE3121710A DE3121710C2 DE 3121710 C2 DE3121710 C2 DE 3121710C2 DE 3121710 A DE3121710 A DE 3121710A DE 3121710 A DE3121710 A DE 3121710A DE 3121710 C2 DE3121710 C2 DE 3121710C2
Authority
DE
Germany
Prior art keywords
memory
key
bit
reference bit
buffer
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
Application number
DE3121710A
Other languages
English (en)
Other versions
DE3121710A1 (de
Inventor
Mamoru Hadano Hinai
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of DE3121710A1 publication Critical patent/DE3121710A1/de
Application granted granted Critical
Publication of DE3121710C2 publication Critical patent/DE3121710C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • G06F12/1045Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
    • G06F12/1054Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache the data cache being concurrently physically addressed
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • G06F12/1466Key-lock mechanism
    • G06F12/1475Key-lock mechanism in a virtual system, e.g. with translation means

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Storage Device Security (AREA)

Abstract

In der Datenverarbeitungsanlage, die einen Puffer-Speicher besitzt und in einem virtuellen Speichersystem betrieben wird, werden Speicherschlüssel einschließlich Referenz-Bits in einem Speicherschlüssel-Speicher gespeichert, und zwar jeweils eines für jeden vorbestimmten Bereich eines Real-Speichers, sowie Referenz-Bits in einem Referenz-Bit-Speicher gespeichert, und zwar jeweils eines für einen vorbestimmten Bereich des Real-Speichers. Bei jeder Bezugnahme auf den Real-Speicher wird das entsprechende Referenz-Bit des Speicherschlüssel-Speichers gesetzt, und bei jeder Be zug nahme auf den Puffer-Speicher wird das entsprechende Referenz-Bit des Referenz-Bit-Speichers gesetzt. Das Referenz-Bit des Speicherschlüssel-Speichers und das Referenz-Bit des Referenz-Bit-Speichers erfahren eine ODER-Verknüpfung, um ein richtiges Referenz-Bit zu erzeugen.

Description

gekennzeichnet durch
— einen Referenz-Bit-Speicher (5), der einem jeweiligen Speicherbereich des Hauptspeichers entsprechende Referenz-Bits enthält, wobei die Verarbt.ajngseinrichiung (1), sobald sie zu einer im Pufferspeicher (4) Gespeicherten Datenkopie eines Speicherbereichs des Hauptspeichers (8) zugreift, das Ref.?renz-Bit im Referenz-Bit-Speicher (5) entsprechend dem Speicherbereich setzt, und
— ein mit der Verarbeitungseinrichtung (1) verbundenes ODER-Glied (6), das, wenn die Verarbeitungseinrichtung (1) einen Befehl zum Speicherschlüssel-Lesen ausgibt, das Referenz-Bit aus dem Sehlüsselspeicher (7) mit dem entsprechenden Referenz-Bit aus dem Referenz-Bit-Speicher (5) oderiert und ein wahres Referenz-Bit erzeugt.
2. Steuereinrichtung nach Anspruch 1, gekennzeichnet durch eine mit der Verarbeitungseinrichtung (1) verbundene Einrichtung, die das Referenz-Bit eines gekennzeichneten Speicherschlüssels im Sehlüsselspeicher (7) und das Referenz-Bit desselben Speicherschlüssels im Referenz-Bit-Speicher (5) zurücksetzt, wenn die Verarbeitungseinrichtung (1) eine den Speicherschlüssel kennzeichnende Referenz-Bit-Rücksetzanweisung ausgibt.
3. Steuereinrichtung nach Anspruch I1 gekennzeichnet durch eine Einrichtung, die abhängig von einer von der Verarbeitungseinrichtung (1) ausgegebenen Speicherschlüssel-Setzanweisung, die einen bestimmten Speicherschlüssel kennzeichnet, das Referenz-Bit des gekennzeichneten Speicherschlüssels im Sehlüsselspeicher (7) und das Referenz-Bit für denselben gekennzeichneten Speicherschlüssel im Referenz-Bit-Speicher (5) setzt.
65
Die Erfindung betrifft eine Steuereinrichtung für einen virtuellen Speicher in einer Datenverarbeitungsanlage der im Oberbegriff des Patentanspruchs 1 angegebenen Gattung.
Eine Datenverarbeitungsanlage oder ein Elektronen-Rechner, der mit einem virtuellen Speicher-System arbeitet, führt eine Verarbeitungsoperütion durch, während er Befehle und Daten zur Ausführung eines Programms von einem virtuellen Speicher (von dam ein Teil in einem externen Speicher vorhanden ist) zu einem realen Speicher (Hauptspeicher) bewegt Eine derartige Bewegung von Daten wird »Seitenwechsel« genannt Eine begrenzte Speicherkapazität eines Hauptspeichers wird so wirksam durch den Seitenwechsel genutzt, bei dem 2 k Bytes oder 4 k Bytes von Daten gewöhnlich £,!eichzeitig bewegt werden. Beim Seitenwechsel-Betrieb wird zum wirksamen Ersetzen von Daten bestimmter Hauptspeicher-Bereiche ein Speicherschlüssel gewöhnlich für je 2 k Bytes eines Hauptspeichert vorgesehen.
Die DE-Z »Elektronische Rechenanlagen« 18. Jahrgang 1976, Heft 3, S. 122-128, offenbart Pufferspeicherarchitekturen und behandelt in diesem Zusammenhang die sektorweise Abbildung anhand der IBM 360—85, die teilassoziative Abbildung anhand der IBM 360—165, die direkte Abbildung anhand der AMDAHL 470 V/6 und schließlich die vollassoziative Abbildung (lediglich prinzipiell).
Bei der genannten DE-Z »Elektronische Rechenanlagen« werden im Cache-Speicher stehende Daten, die kürzlich verwendet wurden, mittels einer LRU-Regel (last recently used-Regel) ersetzt und in einen Hauptspeicher eingespeichert, wenn neue Daten vom Hauptspeicher in den Cache-Speicher übernommen werden sollen.
In einer solchen herkömmlichen Datenverarbeitungsanlage, die mit einem Cache-Speicher arbeitet, gibt das R-Bit nicht genau den Status des Speicherzugriffs wieder, da zudem mit dem Hauptspeicher verbundenen Speicherschlüssel nicht zugegriffen r'ird.
F i g. 1 zeigt ein Beispiel eines Formats de- Speicherschlüssels. Zugriff-Bits (ACC) 0—3 und ein Zugriffssperre-Bit (F) werden zur Speichersperrung verwendet, wobei diese mit einem in einem Prozessor enthaltenen Schlüssel verglichen werden, wenn ein Speicher-Zugriff erfolgen soll. Die Bits ACC und F stehen in keinem direkten Zusammenhang mit dem Seitenwechsel. Ein Referenz-Bit (R) und ein Änderungs-Bit (C) beinhalten Informationen für die Datenersetzung zum Seitenwechsel. Das Bit R ist auf »1« jedes Mal gesetzt, wenn der entsprechende Speicherbereich des Hauptspeichers einem Zugriff unterliegt, während das Bit C auf »1« jedes Mal gesetzt ist, wenn eine Schreibanforderung zum entsprechenden Speicherbereich gelangt. Der Speicherschlüssel ist beschrieben in »IBM System/370 Principles of Operation«, S. 33. Ein Betriebssystem bestimmt einen geeigneten Bereich des Hauptspeichers auf der Grundlage der Bits R und C des Speicherschlüssels und der Anzahl der zu bewegenden Seiten, wenn der Seitenwechsel erforderlich ist, um die Datenersetzung vorzunehmen. Der Algorithmus ist derart beschaffen, daß ein Hauptspeicher-Bereich, für den sowohl das Bit R als auch das Bit C auf »0« gesetzt ist, d. h., auf dem keine Speicherreferenz erzeugt ist, zuerst angesteuert wird, und ein Hauptspeicher-Bereich, bei dem das Bit C auf »0« gesetzt ist, d. h., bei dem keine Schreib-Operation seit dem seitenweisen Einlagern stattgefunden hat, als zweiter angesteuert wird. Wenn der Seitenwechsel-Bereich nicht durch das erste und das zweite Tabellensuchen bestimmt worden ist, wird ein Hauptspeicher-Be-
reich, bei dem das Bit C auf »1« gesetzt worden ist, angesteuert Der Seitenwechsel durch das dritte Tabellensuchen erfordert ein seitenweises Auslagern, bei dem Daten, geändert im Hauptspeicher, nach außen zum externen Speicher vor der Datenübertragung (seitenweises Einlagern) aus dem externen Speicher zum Hauptspeicher bewegt werden.
Der Algorithmus der Entscheidung über den Hauptspeicher-Bereich beim Seitenwechsel kann daher den Hauptspeicher-Bereich wirksam zuordnen, wenn der Ablauf (die Geschichte) der Speicher-Anforderung (Abrafe und Speicherungen) zu den Bits R und C des Speicherschlüssels im Hauptspeicher genau wiedergegeben ist
In einem Elektronen-Rechner mit einem Puffer-Speicher können die angeforderten Daten vom Puffer-Speicher eirwr Zentraleinheit (einem zentralen Prozessor) ohne Bezugnahme auf den Hauptspeicher zugeführt werden, sobald die Daten vom Hauptspeicher zum Puffer-Speicher übertragen worden sind Daher wird auf den s'peicherschlüsseT, der dem Hauptspeicher zugeordnet ist, nicht Bezug genommen und daher wird der Zustand der Speicher-Bezugnahme durch das Bit R nicht genau wiedergegeben. Es sei z. B. angenommen, daß eine Abruf-Anforderung an einen Speicherbereich A abgegeben worden ist, die angeforderten Daten nicht im Puffer-Speicher gespeichert waren sowie auf den Hauptspeicher Bezug genommen worden ist, um die Daten des Speicherbereichs A mit diesen Daten zum Puffer-Speicher abzurufen, so daß das Bit R für diesen Speicherbereich auf »1« gesetzt worden ist. Wenn ein Befehl zum Löschen des Bits R (RRB-Befehl) anschließend an den Speicherbereich A abgegeben worden ist, wird das entsprechende Bit R auf »0« gesetzt. Andererseits werden, da der Speicherbereich A zum Puffer-Speicher abgerufen worden ist, wenn die Abrufanforderung zum Speicherbereich A anschließend abgegeben wird, die entsprechenden Daten aus dem Puffer-Speicher ausgelesen und wird auf den Hauptspeicher nicht Bezug genommen. Infolgedessen bleibt das entsprechende Bit R, das dem Hauptspeicher zugeordnet ist, gleich »0« trotz des Umstands, daß auf den Speicher Bezug genommen worden ist, und der Zustand der Speicher-Bezugnahme wird durch das Bit R nicht richtig wiedergegeben.
Wie eben erläutert wurde, kann es also vorkommen, daß bei einem Elektronen-Rechner mit Puffer-Speicher das Bit R nicht fortgeschrieben wird, obwohl ein Speicherbereich abgerufen vorden ist. Wenn ein derartiger Zustand eintritt, wird ein Speicherbereich, der gerade genutzt wrd, einem Seitenwechsel unterworfen, und wenn auf diesen Bereich erneut Bezug genommen wird, ist ein weiterer Seitenwechsel erforderlich. Infolgedessen nimmt der Seitenwechsel-Aufwand zu. Es wäre zwar denkbar, auf den Speicherschlüssel Bezug zu nehmen, wenn eine Speicherabruf-Anforderung abgegeben wird und entsprechende Daten aus dem Puffer-Speicher ausgelesen werden sollen, jedoch wäre dies nicht ratsam wegen einer Zunahme der Belastung einer Hauptspeicher-Steuereinheit.
Es ist daher Aufgabe der Erfindung, unter Vermeidung der angegebenen Schwierigkeiten, eine Steuereinrichtung für einen virtuellen Speicher der eingangs genannten Art zu schaffen, die richtig den vorhergehenden Ablauf (die Geschichte) der Speicherzugriffe ohne Erhöhung der Belastung dts Hauptspeichers wiedergibt und den Seitenwechsel-Aufwand verringert
Die Lösung dieser Aufgabe ist durch die kennzeichnenden Merkmale des Patentanspruchs 1 gegeben.
Für den Seitenwechsel sind Referenzbits (Bits R) vorgesehen, nämlich ein Bit R, das einem Hauptspeicher-Bereich zugeordnet ist, und ein Bit R, das einem diesen Hauptspeicherbereich als Kopie beinhaltenden Puffer-Speicher zugeordnet ist, wobei eine ODER-Verknüpfung beider Bits R das tatsächliche Referenzbit erzeugt. Anhand der Zeichnung wird die Erfindung beispielsweise näher erläutert Es zeigt
ίο F i g. 1 das Format eines Speicherschlüssels; und
Fig.2 das Blockdiagramm eines Ausführungsbeispiels gemäß der Erfindung.
Es sei nun anhand von F i g. 2 ein bevorzugtes Ausführungsbeispiel gemäß der Erfindung im einzelnen erläutert
F i g. 2 zeigt das Blockschaltbild eines Ausführungsbeispiels der Erfindung. Ausweislich F i g. 2 ist eine Verarbeitungseinrichtung (Zentraleinheit) 1 mit einer Pufferspeicher-Steuereinheit 2 über einen Bus 101 zur
Übertragung virtueller Adressen \ .öunden. Die Pufferspeicher-Steuereinheit 2 besitzt einen Schneli-Adressen-Übersetzer 3, einen Puffer-Speicher 4, einen Referenz-Bit-Speicher 5 und ein ODER-Glied 6.
Der Schnell-Adressen-Übersetzer 3 besitzt einen Adresse-Puffer mit mehreren Eintragungen einschließlich einem Übersetzungspaar einer virtuellen Adresse (L), einer realen Adresse (P) und einer Teil-Kopie (ACC, F) eines Speicherschlüssels und gibt ein Prozeß-Ergebnis (Realadresse) an einen Bus 102 zur Übertragung einer realen Adresse ab.
Der Puffer-Speicher 4, der eine reale Adresse von dem Bus 102 zur Übertragung einer realen Adresse empfängt, besitzt einen Puffer-Speicher-Teil (BS) zum Speichern von Teil-Kopien der Daten des Hauptspei-
chers 8 und eine Puffer-Adressen-Anordnung (BAA) zum Speichern von deren Adressen. Wenn eine Adresse, die mit der realen Adresse der Speicher-Anforderung übereinstimmt, im BAA eingespeichert wird, werden die entsprechenden Daten des BS ausgelesen und ein Bit
»1<' wird auf eine Steuerleitung 103 gegeben, die mit dem Referenz-Bit-Speicher 5 verbunden ist, der Referenz-Bits, und zwar jeweils eines für jede vorgegebene Einheit (z. B. 2 k Bytes oder 4 k Bytes) des realen Speichers 8 enthält. Der Referenz-Bit-Speicher 5 empfängt die reale Adresse vom Bus 102 und bezieht sich auf das entsprechende Bit R. Die aus dem Referenz-Bit-Speicher ausgelesenen Referenzbits werden dem ODER-Glied 6 über einen Bus 105 zugeführt.
Ein Schlüssebpeicher 7 umfaßt einen Speicherschlüssel-Speicher mit mehreren Eintragungen einschließlich einem Zugriff-Bit (aCC), einem Zugriffssperre-Bit F, einem Referenz-Bit R und einem Änderungs-Bit C. Jede der Eintragungen ist für einen vorbestimmten Speicherbereich des Hauptspeichers vorgesehen. Von den ausgelesenen Daten wird das Bit R eiern ODER-Glied 6 über eine Leitung 106 zugeführt. Der Hauptspeicher 8 ist mit dem Schlüsselspeicher 7 über den Bus 104 zur Übertragung der realen Adresse verbunden. Ein Ausgangsanschluß des ODER-Glieds 6 ist mit der Zentraleinheit 6 über eine Leitung 107 verbunden.
Die von der Zentraleinheit 1 abgegebenen Anforderungen können in zwei größere Kategorien klassifiziert werden, eine Speicherbezugnahme- und eine Speicherschlüssel-Operation
Die Speicherbezugnahme schließt einen Fall ein, bei dem entsprechende Daten nicht im Pufferspeicher sind, und einen Fall, wo sie im Pufferspeicher sind.
Die Speicherschlüssel-Opefation umfaßt einen Refe-
renz-Bit-Rücksetzbefehl (RRB) zum Rücksetzen des Bits R des Speicherschlüssels des entsprechenden Speicherbereichs, einen Speicherschlüssel-Einsetzbefehl (ISK) zum Laden des entsprechenden Speicherschlüssels in ein Universal-Register und einen Speicherschlüssel-Setzbefehl (SSK) zum Neusetzen des Speicherschlüssels des entsprechenden Speicherbereichs.
Der Betrieb des Ausführungsbeispiels von Fig.2 sei jetzt anhand dieser Fälle erläutert.
(i) Im Pufferspeicher (BS) nicht vorhanden
IO
Wenn eine Speicheranforderung von der Zentraleinheit 1 abgegeben wird, wird eine virtuelle Adresse über den Bus 101 geleitet, um die Pufferspeicher-Steuereinheit 2 zu erregen, und wird eine entsprechende reale Adresse über die Leitung 102 durch den Schnell-Adresseii-Übcfsetzer 3 geleitet. Die Bits ACC und F, die Kopien des ausgelesenen Speicherschlüssels sind, werden gleichzeitig gelesen, um die Speichersperre (den Speicherschutz) zu überprüfen. Die reale Adresse auf der Leitung 102 wird mit dem Inhalt der Puffer-Adressen-Anordnung (BAA) im Puffer-Speicher 4 verglichen und eine Nichtübereinstimmung festgestellt. Die reale Adresse auf der Leitung 102 wird dann dem Schlüsselspeicher 7 zugeführt, die die Bits R und C des Speicherschlüssel-Speichers entsprechend dem Inhalt der Speicheranforderung (Abruf, Speichern, usw.) fortschreibt und die reale Adresse über die Leitung 104 zum Absuchen des Hauptspeichers 8 leitet. Obwohl in F i g. 2 nicht gezeigt, wird der Speicherbereich mit den angeforderten Daten, ausgelesen aus dem Hauptspeicher 8, im Puffer-Speicher (BS) gespeichert und werden die angeforderten Daten zur Zentraleinheit 1 übertragen, um eine Folge von Prozessen abzuschließen. Die obige Operation ist dieselbe wie eine herkömmliche.
(ii) Vorhanden im Pufferspeicher (BS)
Wenn eine Speicheranforderung von der Zentraleinheit 1 abgegeben wird, wird eine reale Adresse über die Leitung 102 wie im Fall »nicht vorhanden im BS« geleitet und durchsucht der Puffer-Speicher 4 die Puffer-Adressen-Anordnung (BAA). Eine Obereinstimmung wird erfaßt beim Durchsuchen der BAA, und auf einen entsprechenden Block des Puffer-Speichers (BS) wird Bezug genommen, so daß angeforderte Daten zur Zentraleinheit 1 übertragen werden. Gleichzeitig wird ein Bit »1« auf die Leitung 103 durch Erfassen der Übereinstimmung gesetzt, so daß der Referenz-Bit-Speicher 5 erregt wird, um das Bit R entsprechend der realen Adresse auf der Leitung 102 zu setzen.
(iii) RRB-Befehl
Wenn ein RRB-Befehl von der Zentraleinheit 1 abgegeben wird, wird eine reale Adresse über die Leitung 101 geleitet und die reale Adresse der Leitung 102 zugeführt, ohne daß ein Durchsuchen des Schnell-Adressen-Obersetzers 3 stattfindet. Der Inhalt des Referenz-Bit-Speichers 5 entsprechend der realen Adresse auf der Leitung 102 wird zurückgesetzt, und der Schlüsselspeicher 7 wird erregt, so daß das Referenzbit des entsprechenden Speicherschlüssels rückgesetzt wird.
(iv)ISK-BefehI
geben wird, wird eine reale Adresse über die Leitung 101 geleitet und die reale Adresse der Leitung 102 zugeführt, wie es beim RRB-Befehl der Fall ist. Das Referenzbit entsprechend der realen Adresse auf der Leitung 102 wird aus dem Referenzbit-Speicher 5 ausgelesen und dem ODER-Glied 6 über die Leitung 105 zugeführt, und der Schlüsselspeicher 7 wird erregt, so daß der entsprechende Speicherschlüssel ausgelesen wird. Obwohl in Fig.2 nicht gezeigt, wird der Speicherschlüssel ohne das Referenzbit ausgelesen aus dem Schlüsselspeicher 7, direkt zur Zentraleinheit 1 übertragen. Das Referenzbit des Speicherschlüssels erfährt eine ODER-Verknüpfung durch das ODER-Glied 6 über die Leitung 106 mit dem Referenzbit, ausgelesen aus dem Referenzbit-Speicher 5, und das Ausgangssignal des ODER-Glieds 6 wird zur Zentraleinheit 1 über die Leitung 107 übertragen.
(v)SSK-Befehl
Wenn ein SSK-Befehl von der Zentraleinheit 1 abgegeben wird, wird eine reale Adresse über die Leitung 101 geleitet und durchsucht der Schnell-Adressen-Übersetzer 3 alle Schnell-Adressen-Übersetzungs-Puffer, um den Inhalt auf der Leitung 101 mit den gespeicherten realen Adressen (P) zu vergleichen. Von der Zentraleinheit 1 vorbereitete Daten werden in die ACC- und F-Bit-Plätze der Eintragungen eingeschrieben, mit denen eine Übereinstimmung festgestellt worden ist. Danach wird die reale Adresse über die Leitung 102 geleitet und werden der Referenzbit-Speicher 5 und der Schlüsselspeicher 7 erregt und wird das von der Zentraleinheit 1 abgegebene Referenzbit in die entsprechende Eintragung des Referenzbit-Speichers 5 eingeschrieben, während alle Bits des Speicherschlüssels in die entsprechenden Eintragungen des Schlüsselspeichers 7 eingeschrieben werden.
Obwohl eine Kopie des Speicherschlüssels zum Überprüfen des Speicherschutzes im Schnell-Adressen-Übersetzungs-Puffer 3 im Ausführungsbeispiel von Fig.2 gespeichert ist, kann sie auch im Referenzbit-Speicher 5 gespeichert werden, so daß alle Bits bis auf das Bit C des Speicherschlüssels dort gespeichert sind. In diesem Fall ist es nicht erforderlich, alle Schnell-Adressen-Übersetzer-Speicher abzusuchen, um die entsprechende Adresse zu finden, wenn der SSK-Befehl abgegeben ist, so daß der SSK-Befehl schneller verarbeitet werden kann.
Somit kann also ein Elektronen-Rechner mit einem Puffer-Speicher genau den vorhergehenden Ablar' (die Geschichte) der Speicher-Bezugnahme über das Referenzbit des Speicherschlüssels wiedergeben, was in einer virtuellen Speicheranlage den Aufwand beim Seitenwechsel verringert.
55
60
65 Hierzu 1 Blatt Zeichnungen
Wenn ein ISK-Befehl von der Zentraleinheit 1 abge-

Claims (1)

Patentansprüche:
1. Steuereinrichtung für einen virtuellen Speicher
in einer Datenverarbeitungsanlage, die
— einen Hauptspeicher (8), der zum Speichern von Daten mehrere Speicherbereiche vorgegebener Länge aufweist,
— einen Sehlüsselspeicher (7), der einerseits Speicherschlüssel mit jeweils einem dem unter Zugriff stehenden Speicherbereich des Hauptspeichers (8) entsprechenden Referenz-Bit speichert und der andererseits eine Einrichtung aufweist, die das zum jeweiligen Speicherschlüssel zugehörige Referenz-Bit bei jedem Hauptspeicherzugriff setzt,
— einen Pufferspeicher (4), der eine Datenkopie eines Teils des Hauptspeichers (8) speichert, und
— eine Verarbeitungseinrichtung (1), die zum Hauptspeicher und zum Pufferspeicher zugreift, aufweist,
DE3121710A 1980-06-02 1981-06-01 Steuereinrichtung für einen virtuellen Speicher in einer Datenverarbeitungsanlage Expired DE3121710C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7395780A JPS56169281A (en) 1980-06-02 1980-06-02 Data processor

Publications (2)

Publication Number Publication Date
DE3121710A1 DE3121710A1 (de) 1982-01-28
DE3121710C2 true DE3121710C2 (de) 1986-04-10

Family

ID=13533061

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3121710A Expired DE3121710C2 (de) 1980-06-02 1981-06-01 Steuereinrichtung für einen virtuellen Speicher in einer Datenverarbeitungsanlage

Country Status (3)

Country Link
US (1) US4424564A (de)
JP (1) JPS56169281A (de)
DE (1) DE3121710C2 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60229111A (ja) * 1984-04-26 1985-11-14 Fanuc Ltd 数値制御方式
JPS63259749A (ja) * 1987-04-17 1988-10-26 Hitachi Ltd 仮想記憶制御方式
EP0349123B1 (de) * 1988-06-27 1995-09-20 Digital Equipment Corporation Mehrprozessorrechneranordnungen mit gemeinsamem Speicher und privaten Cache-Speichern
US5222224A (en) * 1989-02-03 1993-06-22 Digital Equipment Corporation Scheme for insuring data consistency between a plurality of cache memories and the main memory in a multi-processor system
US5493663A (en) * 1992-04-22 1996-02-20 International Business Machines Corporation Method and apparatus for predetermining pages for swapping from physical memory in accordance with the number of accesses
US5590309A (en) * 1994-04-01 1996-12-31 International Business Machines Corporation Storage protection cache and backing storage having system control element data cache pipeline and storage protection bits in a stack array with a stack directory for the stack array

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3577185A (en) 1969-10-02 1971-05-04 Ibm On-line system for measuring the efficiency of replacement algorithms
US3839706A (en) 1973-07-02 1974-10-01 Ibm Input/output channel relocation storage protect mechanism
US4173783A (en) 1975-06-30 1979-11-06 Honeywell Information Systems, Inc. Method of accessing paged memory by an input-output unit
JPS5911980B2 (ja) 1975-12-23 1984-03-19 日本電気株式会社 ランダムアクセスメモリソウチ
US4229789A (en) 1977-12-22 1980-10-21 Ncr Corporation System for transferring data between high speed and low speed memories
JPS5849945B2 (ja) 1977-12-29 1983-11-08 富士通株式会社 バツフア合せ方式
JPS54111726A (en) 1978-02-22 1979-09-01 Hitachi Ltd Control unit for multiplex virtual memory
US4169284A (en) 1978-03-07 1979-09-25 International Business Machines Corporation Cache control for concurrent access
US4197580A (en) 1978-06-08 1980-04-08 Bell Telephone Laboratories, Incorporated Data processing system including a cache memory
US4277826A (en) 1978-10-23 1981-07-07 Collins Robert W Synchronizing mechanism for page replacement control
US4257097A (en) 1978-12-11 1981-03-17 Bell Telephone Laboratories, Incorporated Multiprocessor system with demand assignable program paging stores
US4290104A (en) 1979-01-02 1981-09-15 Honeywell Information Systems Inc. Computer system having a paging apparatus for mapping virtual addresses to real addresses for a memory of a multiline communications controller
US4322795A (en) 1980-01-24 1982-03-30 Honeywell Information Systems Inc. Cache memory utilizing selective clearing and least recently used updating
US4345309A (en) 1980-01-28 1982-08-17 Digital Equipment Corporation Relating to cached multiprocessor system with pipeline timing

Also Published As

Publication number Publication date
US4424564A (en) 1984-01-03
JPS56169281A (en) 1981-12-25
DE3121710A1 (de) 1982-01-28
JPS644214B2 (de) 1989-01-25

Similar Documents

Publication Publication Date Title
DE2227882C2 (de) Virtuelle Speicheranordnung
DE2415900C3 (de) Rechenautomat mit mehreren mit je einem Vorratsspeicher versehenen Rechenanlagen
DE3151745C2 (de)
DE2226382C3 (de) Datenverarbeitungsanlage mit mehreren Prozessoren und diesen zugeordneten Pufferspeichern
DE2235841C2 (de) Datenverarbeitungsanlage mit Speichersteuerung für mindestens einen Prozessor und diesen zugeordneten Pufferspeichern
DE3011552C2 (de)
DE2847960C2 (de) Speichersteuereinrichtung
DE69031967T2 (de) Informationsverarbeitungsanordnung
DE69030945T2 (de) Zweistufiger Adressübersetzungspufferspeicher mit partiellen Adressen zur Geschwindigkeitserhöhung
DE2725718C2 (de) Datenverarbeitungsanordnung zum Übersetzen von virtuellen Adressen
DE2817431C2 (de) Speichereinrichtung mit auf Durchspeichern(store thru) beruhender Speicherhierarchie mit Teilspeicherung
DE68902193T2 (de) Datenspeicheranordnung.
EP0013737A1 (de) Mehrstufige Speicherhierarchie für ein Datenverarbeitungssystem
EP0600112A1 (de) Datenverarbeitungsanlage mit virtueller Speicheradressierung und schlüsselgesteuertem Speicherzugriff
DE2841041A1 (de) Datenverarbeitungsanlage mit mindestens zwei mit einem schnellen arbeitsspeicher ausgeruesteten prozessoren
DE2241257A1 (de) Datenverarbeitende anlage
DE3102150A1 (de) &#34;schaltungsanordnung mit einem cachespeicher fuer eine zentraleinheit einer datenverarbeitungsanlage
DE10219623A1 (de) System und Verfahren zur Speicherentscheidung unter Verwendung von mehreren Warteschlangen
DE68925336T2 (de) Datenverarbeitungsvorrichtung mit Cache-Speicher
DE3874481T2 (de) Kontrolleinrichtung fuer pufferspeicher.
DE3873388T2 (de) Cache-speicher.
DE2149200A1 (de) Anordnung zum Steuern der Informationsuebertragung zwischen einerseits dem Zentralteil und andererseits entweder einem beliebig zugreifbaren Schnellspeicher oder einem beliebig zugreifbaren direkt adressierbaren Grossspeicher einer elektronischen Datenverarbeitungsanlage
DE3121710C2 (de) Steuereinrichtung für einen virtuellen Speicher in einer Datenverarbeitungsanlage
DE69227740T2 (de) Verarbeitungsanordnung zur dynamischen Adressübersetzung in einem Datenverarbeitungssystem
DE3832758C2 (de) Verfahren zum Adressieren eines im Rückschreib-Modus betriebenen virtuellen Cache-Speichers

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee