DE2523414A1 - Hierarchische speicheranordnung - Google Patents

Hierarchische speicheranordnung

Info

Publication number
DE2523414A1
DE2523414A1 DE19752523414 DE2523414A DE2523414A1 DE 2523414 A1 DE2523414 A1 DE 2523414A1 DE 19752523414 DE19752523414 DE 19752523414 DE 2523414 A DE2523414 A DE 2523414A DE 2523414 A1 DE2523414 A1 DE 2523414A1
Authority
DE
Germany
Prior art keywords
memory
data
journal
level
retransmission
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.)
Granted
Application number
DE19752523414
Other languages
English (en)
Other versions
DE2523414B2 (de
DE2523414C3 (de
Inventor
Vincent Anthony Cordi
Bruce Adam Edson
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE2523414A1 publication Critical patent/DE2523414A1/de
Publication of DE2523414B2 publication Critical patent/DE2523414B2/de
Application granted granted Critical
Publication of DE2523414C3 publication Critical patent/DE2523414C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • G06F12/0897Caches characterised by their organisation or structure with two or more cache hierarchy levels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/31Providing disk cache in a specific location of a storage system
    • G06F2212/311In host system
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users

Description

25234U
Böblingen, den 14. 5. 1975 Iw- fe
Anmelderin: International Business Machines
Corporation, Armonk, Ν.Ϊ. 10504
Amtliches Aktenzeichen: Neuanmeldung Aktenzeichen der Anmelderin: EN 972 070
Hierarchische Speicheranordnung
Die Erfindung betrifft eine hierarchische Speicheranordnung mit mehr als zwei Stufen.
In Datenverarbeitungsanlagen mit derartigen Speicheranordnungen ist in der höchsten Stufe ein kleiner aber sehr rascher Arbeitsspeicher zur direkten Zusammenarbeit mit dem Prozessor vorgesehen 3 während in den niedrigeren Stufen jeweils mehr, aber langsamer zugreifbare Daten gespeichert sind.
Hierarchische Speicher mit Halbleiterelementen auf ihren höheren Ebenen führen zwar zu schnelleren und ökonomischeren Speichersystemen, sie sind jedoch nicht ohne Nachteile. Insbesondere treten bei hierarchischen Speichersystemen bedeutende Übertragungsprobleme zwischen den einzelnen Ebenen der Hierarchie auf, und da die Halbleiterspeicher informationsflüchtig, d.h. energieabhängig sind, treten Datensicherheitsprobleme auf, die mit der Zuverlässigkeit und der Empfindlichkeit dieser Halbleiterelemente gegen Ausfall oder Schwankung der Stromversorgung zusammenhängen.
Eine bekannte Maßnahme zur Erhöhung der Sicherheit besteht darin, wichtige Einrichtungen mehrfach vorzusehen und mit einer Majoritätslogik die jeweils richtigen Daten herauszufinden. Diese Lösung trägt zwar zur Verbesserung der Zuverlässigkeit und der Datenintegrität bei, sie beseitigt jedoch nicht das Übertragungsproblem zwischen den einzelnen Ebenen, sondern erschwert es im Gegenteil noch. Außerdem nimmt beim Auftreten eines Fehlers, der
509884/0771
es nötig macht, den Speicher einer oder mehrerer Stufen außer Betrieb zu setzen, die übertragung der Daten von den Ebenen des Speichers, die energieabhängige Speicherelemente enthalten, in Ebenen mit energieunabhängigen Speicherelementen leicht mehr Zeit in Anspruch, als tatsächlich vorhanden ist, bevor die Daten durch den Stromausfall oder andere Beeinträchtigungen verlorgengehen.
Es ist daher Aufgabe der vorliegenden Erfindung, in einer hierarchischen Speicheranordnung die Datensicherheit zu erhöhen und den Datenaustausch zwischen den verschiedenen Stufen der Hierarchie zu erleichtern.
Diese Aufgabe wird durch die kennzeichnenden Merkmale des Hauptanspruches gelöst.
Durch die Erfindung werden die zur Erhaltung der Aktualität der Daten notwendigen Übertragungen zwischen den einzelnen Stufen der Hierarchie sehr erleichtert. Die Ergänzung des Datenspeichers einer Stufe durch einen weiteren Speicher, der nur Änderungen speichert, erlaubt eine wesentliche Erhöhung der Datensicherheit mit geringen Mitteln. Dabei kann die Quantität der zu übertragenden Daten klein gehalten werden, so daß im Falle des Auftretens eines Fehlers in der Speicheranordnung die geringe, zur Rettung der Daten zur Verfügung stehende Zeit nicht überschritten wird.
Eine vorteilhafte Weiterbildung der Erfindung ist dadurch gekennzeichnet, daß für den Datenspeicher und für den Rückübertragungsspeicher getrennte Stromversorgungen vorgesehen sind. Durch diese Maßnahme kann die Datensicherheit noch einmal ganz wesentlich erhöht werden.
Die Erfindung soll nun anhand eines in den Zeichnungen dargestellten Ausführungsbeispieles näher beschrieben werden. Es zeigen:
Fig. 1 ein Blockschaltbild eines mehrstufigen hierar-
EN 972 070
509884/Q771
- 3 chischen Speichersystems,
252341A
Fign. 2 und 3 aneinandergesetzt ein Blockschaltbildung zweier
Ebenen des in Pig. I dargestellten Speichersystems ,
Fig. 4 ein Exklusiv-ODER-Glied,
Fig. 5 einen Schaltkreis zur Erzeugung eines Rücküber-
tragungssignales ,
Fig. 6 ein Journalverzeichnis und
Fig. 7 eine Schaltung zur Änderung eines Statusbits.
Gemäß Fig. 1 besteht jede Ebene (d. h. Stufe) der Speicher-Hierarchie aus einem Datenspeicher 10a bis 1On mit Zugriffsmöglichkeit für die Entnahme oder Einspeicherung von Daten auf der betreffenden Ebene, einem Verzeichnis 12 a bis 12n, das mit dem Datenspeicher 10 seiner Ebene zusammenarbeitet und ein Inhaltsverzeichnis der in dieser Ebene der Hierarchie gespeicherten Daten enthält, einem Rückübertragungsspeicher l4a bis l4n, nachfolgend auch Zwischenspeicher genannt, der sämtliche Änderungen enthält, die an den in der betreffenden Ebene gespeicherten Daten vorgenommen worden sind, einem Journalspeicher 16a bis I6n zur Aufzeichnung der Reihenfolge, in welcher Änderungen in den Zwischenspeicher 14 gespeichert worden sind, und einem Journalverzeichnis l8a bis l8n, in welchem Information darüber gespeichert wird, ob Daten in der Ebene der Hierarchie bereits vorher geändert worden sind.
Wenn die Verarbeitungseinheit 20 Daten abruft, prüft das Verzeichnis 12a der höchsten Speicherebene Ll, ob die verlangten Daten auf dieser höchsten Ebene gespeichert sind. Wenn das der Fall ist, werden die Daten aus dem Datenspeicher 10a ausgelesen. Falls sich die Daten nicht in der höchsten Ebene des Speichers
EN 972 070
5Q988Ä/0771
befinden, wird das Verzeichnis 12b der nächstniederen Ebene L2 geprüft, um festzustellen, ob die Daten sich auf dieser Ebene befinden, usw., bis die Daten aufgefunden sind oder die niedrigste Ebene erreicht ist. Wenn die Daten aufgefunden sind, werden sie in die höchste Ebene Ll der Hierarchie übertragen, wo ein Zugriff durch die Verarbeitungseinheit 20 auf den Datenspeicher 10a dieser Ebene möglich ist.
Wenn von der Verarbeitungseinheit 20 Daten in die Speicherhierarchie eingegeben werden sollen, werden diese sowohl im Datenspeicher 10 als auch im Zwischenspeicher 14a der ersten Ebene Ll gespeichert. Gleichzeitig wird das Journalverzeichnis l8a abgefragt, um festzustellen, ob die Daten bereits vorher geändert worden sind. Ist das nicht der Fall, erfolgt eine Eingabe in den Journalspeicher 16a an dessen nächstem freien Speicherplatz. Diese Eingabe in den Journalspeicher l6a erfolgt in der Reihenfolge der Adressierung des Journalspeichers, d.h. die erste Eingabe geht in die erste Speicherstelle, die zweite Eingabe in die zweite Speicherstelle usw., bis die letzte Speicherstelle (Adresse) in der Folge gefüllt ist. Die nächste Eingabe wird dann an den Ort der ersten Adresse übertragen und die Folge wiederholt. Auf diese Weise registriert der Journalspeicher die Reihenfolge der Daten auf der Ebene Ll, welche zuerst geändert worden sind. Diese Aufzeichnung wird dann dazu benutzt, die Änderungen an den Daten auf der Ebene Ll in die anderen Ebenen der Hierarchie zu übertragen, wobei versucht wird, eine Datenpyramide aufrecht zu erhalten, in welcher die Ebene L2 alle Daten enthält, die in der Ebene Ll vorhanden sind plus einige mehr, die Ebene L3 alle Daten enthält, die in der Ebene L2 enthalten sind und einige mehr usw.
Die Übertragung der Daten von der Ebene Ll in die Ebene L2 erfolgt wann immer der Datenspeicher 10b der zweiten Ebene L2 frei ist. Dann können die geänderten Daten vom Zwischenspeicher l4a der ersten Ebene Ll in den Datenspeicher 10b der Ebene L2 übertragen werden, während der Datenspeicher 10a der ersten Ebene
EN 972 070
509884/0771
Ll mit der übertragung von Daten zwischen dem Speichersystem und der Verarbeitungseinheit 20 beschäftigt ist. In gleicher Weise erfolgt die übertragung von Daten von der Ebene L2 in die Ebene L3, wenn der Datenspeicher 10c der Ebene L 3 frei ist, usw. Die Rückübertragung der Daten erfolgt in der Reihenfolge, in welcher die Änderungen in den Journalspeicher Ib eingegeben worden waren, wobei die älteste Eingabe in den Journalspeicher zuerst rückübertragen wird. Mit anderen Worten werden die Daten, deren erste Änderung am weitesten zurückliegt, zuerst übertragen, wenn sich die Gelegenheit zur übertragung ergibt. Auf diese Weise wird bei der Rückübertragung von Daten innerhalb der Hierarchie zur Aufrechterhaltung der Datenpyramide ein großer Wirkungsgrad erzielt, ohne daß in der Aufwärtsbewegung der Daten von den unteren Ebenen zu den oberen der Hierarchie eine Störung eintritt.
Neben der übertragung von Daten von höheren Ebenen der Hierarchie zu niederen Ebenen zwecks Aufrechterhaltung der Datenpyramide können geänderte Daten auch von jeder beliebigen Speicherebene entfernt oder auf niedere Ebenen übertragen werden, um für neue Daten Platz zu schaffen. Bevor geänderte Daten auf niedere Ebenen der Hierarchie übertragen werden können, müssen sie zunächst die Spitze der Datenpyramide erreicht haben. Das bedeutet, daß auf niedere Ebenen zu übertragende Daten nicht auf einer höheren Ebene in der Hierarchie sein können als diejenige Ebene, von welcher sie entfernt werden. Der Grund dafür, daß nur von der Spitze der Datenpyramide Daten auf niedere Ebene übertragen werden können, liegt in der Vermeidung von Löchern in der Datenpyramide, da dieses die Benutzung der Portschreibungstechnik im Journalspeicher und der Zwischenspeicherungstechnik erleichtert. Nicht geänderte Daten müssen natürlich nicht auf niedere Ebenen zurückübertragen werden, um für neue Daten Platz zu schaffen. Sie werden durch neue Daten lediglich überdeckt, da eine Kopie der ungeänderten Daten bereits in niederen Ebenen der Speicherhierarchie vorhanden ist.
EN 972 070
509884/0771
25234U
Zur Erhaltung der Integrität der Daten macht die Erfindung Gebrauch von einer durch die gestrichelte Linie 24 in Pig. I dargestellten Stromversorgungs-Trennung. Damit ist gemeint, daß sämtliche Einheiten auf der einen Seite der gestrichelten Linie 24 aus einer Stromversorgungsanlage gespeist werden, während alle auf der anderen Seite der gestrichelten Linie 24 befindlichen Einheiten von einer anderen Stromversorgungsanlage gespeist werden. Außerdem werden wenigstens auf der niedrigsten Ebene Ln des Speichersystems die Daten in einem nicht-informationsflüchtigen, d.h. energieunabhängigen Speicher, wie beispielsweise einem Magnetbandspeicher, gespeichert, so daß die Daten nicht verlorengehen können, wenn die Stromversorgung ausfällt. Auf dieser untersten Ebene Ln enthält der Zwischenspeicher l4n ein Duplikat aller Daten, die im Datenspeicher 1On dieser Ebene enthalten sind, so daß ein Verlust von Daten im Speicher 1On der untersten Ebene Ln die Integrität der Daten im allgemeinen nicht berührt. Dadurch ist gewährleistet, daß bei Ausfall der Stromversorgung auf einer der Seiten der gestrichelten Linie 24 die Integrität der Daten nicht zerstört wird, da sämtliche Daten zumindest auf der untersten Ebene Ln in einem gegen diesen Stromausfall immunen Speicher gespeichert sind, und da sämtliche Änderungen an den Daten auf der Ebene Ln auf beiden Seiten der gestrichelten Linie auf wenigstens einer der anderen Ebenen Ll bis Ln-I vorhanden sind, so daß sie wieder auf alle anderen Ebenen der Hierarchie übertragen werden können, wenn der Stromausfall beseitigt ist. Schließlich kann auch die Stromversorgung aus einer Batterie vorgesehen werden, um sicherzustellen, daß die Daten in den Zwischenspeichern 14, in den Journalspeichern 16 und in den Journalverzeichnissen 18 erhalten bleiben und bis in einen energieunabhängigen Speicher rückübertragen werden können, falls auf beiden Seiten der gestrichelten Linie 24 die Stromversorgung ausfallen sollte.
In den Pign. 2 und 3 sind Einzelheiten zweier Ebenen der Speicherhierarchie gemäß Fig. 1 dargestellt. Das Verzeichnis 26 (bzw. 12a)
EN 972 070
509884/0771
2b23414
der Ebene Ll speichert die virtuellen Adressen in Gruppen von jeweils vier Adressen, für alle zu einem bestimmten Zeitpunkt in der Ebene Ll des Speichersystems vorhandenen Daten. Die vier Adressen einer jeden Gruppe werden als Kongruenz-Klasse bezeichnet, deren Adresse in der Ebene Ll durch eine Verknüpfungsoperation bestimmt wird, die die Verknüpfung gewisser Bits des virtuellen Adressen teils mit Bits des realen Adressenteils in einem EXKLUSIV-ODER-Glied 23, dessen Einzelheiten in der Fig. 4 dargestellt sind, umfaßt. Das Ausgangssignal des EXKLUSIV-ODER-Gliedes 29 wird dem Decodier-Eingang des Verzeichnisses 26 zugeführt. Bei diesem Zugriff werden vier Adressen einer Kongruenz-Klasse parallel aus dem Register 8 ausgelesen. Jede der virtuellen Adressen, die aus der Programm-Verarbeitungseinheit 28 ausgelesen werden, wird in einem Vergleicher 30 mit der virtuellen Adresse verglichen, die zur Erzeugung der Bits für den Zugriff zum Verzeichnis der Ebene Ll benutzt wurden. Wenn eine der aus dem Verzeichnis 26 ausgelesenen Adressen mit der gewünschten virtuellen Adresse übereinstimmt, gibt der Vergleicher 30 ein Ausgangssignal ab. Dieses Ausgangssignal besteht aus zwei Bits, die angeben, welche der vier aus dem Verzeichnis gelesenen Adressen mit der gesuchten Adresse übereinstimmt. Dieses Zwei-Bit-Signal wird einem Decodierer zugeführt, der mit dem Ausgang des Datenspeichers 32 der ersten Ebene verbunden ist. In diesem Speicher 32 sind alle Daten der ersten Ebene gespeichert, und der Zugriff erfolgt über seinen Eingangs-Decodierer durch das gleiche Signal 3, das dem Verzeichnis 26 zugeführt wird, und wenn der Zugriff erfolgt ist, werden die Daten, die sich an den vier virtuellen Adressen der Kongruenz-Klasse befinden, ausgelesen. Das Ausgangssignal des Vergleichers 30, das ein Eins-von-vier-Zwei-Bit-Signal ist, wählt sodann die Daten an einer der virtuellen Adressen seiner Kongruenz-Klasse aus und liest sie in ein Eingabe/Ausgabe-Register 33, das mit dem Hauptspeicher 12 verbunden ist, von wo das Signal zur Programm-Verarbeitungseinheit 28 zurückgeführt wird.
Wenn festgestellt wird, daß sich die Daten nicht auf der ersten
EN 972 070
509884/0771
Ebene Ll befinden, muß geprüft werden, ob sich die Daten auf der zweiten Ebene L2 befinden. Wie die erste Ebene Ll, ist auch die zweite Ebene L2 mit einem Verzeichnis 34 ausgerüstet. Da, wie erwähnt, auf der zweiten Ebene mehr Information gespeichert werden muß als auf der ersten Ebene, ist auch das Verzeichnis größer. Entsprechend umfaßt auch das Adreß-Signal mehr Bits, um die Kongruenz-Klasse der vier virtuellen Adressen auszuwählen. Dieses Adreßsignal γ wird ebenfalls durch das in Fig. 4 gezeigte EXKLUSIV-ODER-Glied 29 erzeugt. Beim Abfragen des Verzeichnisses 34 durch das Signal γ werden die vier virtuellen Adressen der Kongruenz-Klasse in das Eingabe/Ausgabe-Register 31 des Verzeichnisses und in einem Vergleicher 35 ausgelesen, in welchem die gespeicherte virtuelle Adresse mit der von der Verarbeitungseinheit 28 gelieferten virtuellen Adresse verglichen wird. Dieser Vergleich führt zu einem Eins- von -vier-Vergleichssignal, das angibt, welche der vier Adressen der Kongruenz-Klasse verlangt wurde. Auch dieses Signal wird dem Decodierer am Ausgang des Eingabe/Ausgabe-Registers des Datenspeichers 36 der zweiten Ebene L2 zugeführt, der durch das vom Verzeichnis 34 gelieferte Signal Ύ angesteuert wurde. Auf diese Weise werden die an einer der Adressen der Kongruenz-Klasse gespeicherten Daten aus der zweiten Ebene ausgelesen und in die erste Ebene übertragen.
Wenn Daten in das Speichersystem eingegeben werden sollen, liefert die Verarbeitungseinheit 28 ein Steuersignal an ein UND-Glied 38, welches die virtuelle Adresse in ein Adressen-Suchregister 40 des Journalverzeichnisses 42 eingibt, das als Assoziativspeicher ausgebildet ist und dessen Einzelheiten in Fig. 6 dargestellt sind. Es wird eine assoziative Suche durchgeführt, bei welcher die virtuelle Adresse mit jeder der im Journalverzeichnis gespeicherten virtuellen Adressen verglichen wird. Bei Übereinstimmung der virtuellen Adresse im Adressensuchregister 40 mit aer virtuellen Adresse im Journalverzeichnis liefert dieses ein Vergleichssignal, welches anzeigt, daß die Adresse im Journalverzeichnis vorhanden ist, mit anderen Worten, daß die Da-
-•:N 972 070
509884/0771
■ten, die an dieser Adresse gespeichert sind, bereits früher geändert worden sind. Falls der Vergleich keine Übereinstimmung der Adressen ergibt, bedeutet das, daß die an der Adresse gespeicherten Daten noch nicht geändert worden sind. Wenn diese Situation vorliegt, wird sowohl im Journalverzeichnis 42 wie auch im zugeordneten Journalspeicher 44 vermerkt, daß die Daten dieser Adresse nun geändert werden. Wenn andernfalls eine Übereinstimmung der Adressen festgestellt wird, erfolgt keine Eingabe in das Journalverzeichnis oder den Journalspeicher. Die Speicherstelle im Journalverzeichnis, in welche die virtuelle Adresse eingegeben wird, ist nicht von Bedeutung, da es sich um einen assoziativen Speicher handelt, bei dem alle Adressen gleichzeitig abgefragt werden. Die Speicherstelle im Journalspeicher 44 gibt jedoch einen Hinweis auf die Reihenfolge, in welcher die Änderungen durchgeführt wurden, und, wie weiter unten ausgeführt werden wird, bestimmt die Adresse im Journalspeicher die Reihenfolge, in welcher die Änderungen später in die unteren Ebenen der Speicherhierarchie übertragen werden. Zu diesem Zweck ist ein Zähler 46 vorgesehen, der den nächsten freien Speicherplatz angibt. Wenn das mit dem Journalverzeichnis verbundene übereinstimmungsregister 45 ein keine Übereinstimmung anzeigendes Signal abgibt, welches gleichzeitig mit dem Steuersignal der Verarbeitungseinheit 28 eintrifft, wird das Ausgangssignal des Zählers 46 mittels der UND-Glieder 48 und 50 in das Adressenregister SAR des Journalspeichers 44 übertragen, um eins der darin gespeicherten Wörter auszuwählen. Gleichzeitig wird die virtuelle Adresse in das Eingabe/Ausgabe-Register 52 des Journalspeichers 44 übertragen, damit die virtuelle Adresse im Journalspeicher an der durch den Zähler 46 bestimmten Stelle gespeichert werden kann. Wenn die Eingabe in den Journalspeicher 44 erfolgt ist, wird der Zähler 46 durch ein Signal "Eingabe beendet" auf die nächste Zahl der Adressenreihenfolge weitergeschaltet. Auf diese Weise erfolgt jede Eingabe in den Journalspeicher 44 in der Reihenfolge, in welcher durch die Verarbeitungseinheit 28 eine Änderung in den Daten verlangt wurde, so daß wenn die Daten zu niedrigeren Stufen rückübertragen werden, diese über-
EN 972 070
509884/0771
25234U
tragung in der gleichen Reihenfolge erfolgen kann, in welcher die Eingabe in den Journalspeicher 44 gemacht wurde. Hierzu brauchen lediglich die Adressen im Journalspeicher in ihrer numerischen Reihenfolge aufgerufen werden.
Außer der Eingabe der Adressen in das Journalverzeichnis 42 und den Journalspeicher 44 werden die Daten der betreffenden Adresse auch in den Datenspeicher 32 und den Zwischenspeicher 54 eingegeben. Der Inhalt des Zwischenspeichers 54 ist mit dem Inhalt des Datenspeichers 32 der gleichen Ebene identisch, wobei sich Speicherstellen in beiden Speichern genau entsprechen. Daher werden Änderungen an Daten, die in einer Speicherstelle B1 im Datenspeicher 32 stehen, auch an den in der Speicherstelle Bl1 des Zwischenspeichers 54 stehenden Daten durchgeführt (vergleiche die schraffierten Bereiche im Datenspeicher 32 und im Zwischenspeicher 54).
Wie bereits erwähnt, werden Änderungen in der Reihenfolge, in welche sie in den Journalspeicher 44 eingegeben werden, an untere Ebenen des Speichersystems übertragen. Zu diesem Zweck wird ein Zähler 53 durch die in Fig. 5 dargestellten Schaltkreise in Betrieb gesetzt, wenn das Ausgangssignal eines als Kippschaltung ausgeführten Haltekreises 58 angibt, daß der Zwischenspeicher der ersten Ebene Ll nicht aktiv ist, d.h., wenn keine Eingabe oder Ausgabe erfolgt, und wenn das Ausgangssignal eines Haltekreises 60 anzeigt, daß der Datenspeicher der zweiten Ebene L2 zur Zeit nicht aktiv ist. Dann wird das Ausgangssignal des Zählers 53 durch eine von den Haltekreisen 58 und 60 gesteuerte Verknüpfungsschaltung 32 aus UND-Gliedern dem Adre oenregister des Journalspeichers 44 der Ebene Ll zugeführt, um Daten an der durch das Ausgangssignal des Zählers 53 bestimmten Adresse auszulesen. Diese virtuelle Adresse wird der Misch-Schaltung der Fig. 4 zugeführt, wo die Adressensignale3 und γ für den Zwischenspeicher
der Ebene Ll und für den Datenspeicher 36 sowie den Zwischenspeicher 37 der Ebene L2 erzeugt und den entsprechenden Adressenregistern des Datenspeichers 36 und des Zwischenspeichers 27 ^l?e% l aaS in den Fign* 2 und 3 dargestellt ist.
509884/077 1
- ii -
Nachdem die Dateneintragung vom Zwischenspeicher 54 der ersten Ebene Ll in den Datenspeicher 36 und den Zwischenspeicher 37 der zweiten Ebene übertragen worden ist und Hinweise auf die Änderungen an den Daten entsprechend in den (nicht dargestellten) Journalspeicher und das Journalverzeichnis der zweiten Ebene L2 eingegeben worden sind, wird dem Zähler 53 ein externes Portschaltsignal zugeführt, das ihn auf die nächste Stelle weiterschaltet. Wenn nun weitere Rückübertragungen von Daten nötig sind, erfolgt erneut ein Zugriff zum Journalspeicher 44, werden die Adresseng und γ für den Zugriff zum Zwischenspeicher und Datenspeicher erzeugt und die Daten an der nächsten Adresse werden in den Datenspeicher und Zwischenspeicher der nächstniederen Ebene übertragen.
Neben der Speicherung der virtuellen Adresse speichert der Journalspeicher 44 auch die Ergebnisse des Eins-von-vier-Vergleiches durch den Vergleicher 30, wenn das Verzeichnis 26 nach der Adresse abgefragt wird, und speichert zusätzlich ein Gültigkeitsbit. Dieses Gültigkeitsbit wird gleich "1" gesetzt, wenn zuerst eine Eingabe in das Journalverzeichnis und den Journalspeicher erfolgt. Fig. 5 zeigt, wie ein Gültigkeitsbit in die Suchmatrix des Journalverzeichnisses 42 eingegeben wird und wie dieses Bit dann in den Journalspeicher 44 übertragen wird, wenn die neue Eingabe in das Eingabe/Ausgabe-Register 52 des Journalspeichers eingegeben wird. Wenn die Verarbeitungseinheit 28 einen Schreibbefehl für eine bestimmte virtuelle Adresse ausgibt, wird diese virtuelle Adresse in das Adressen-Suchregister 40 eingegeben (Fig. 3 und 6). Die Länge des Adressen-Suchregisters 40 ist um ein Bit länger als die virtuelle Adresse, und bei der Eingabe der virtuellen Adresse wird die letzte oder y-te Stelle im Adressen-Suchregister 40 auf eine binäre "1" gesetzt. Wie erwähnt, wird das gesamte Journalverzeichnis 42 gleichzeitig assoziativ abgefragt. Falls der Inhalt des Adressen-Suchregisters 40 mit einem der Wörter im Journalverzeichnis übereinstimmt, wird eine und nur eine der Treiberschaltungen 4l (Fig. 6) eingeschaltet. Wenn irgendeine der Treiberschaltungen 4l eingeschaltet ist,
EN 972 070
50988Λ/0771
25234U
zeigt deren Ausgangssignal an, daß die Daten bereits vorher verändert worden sind und daß eine entsprechende Eingabe in den Journalspeicher und das Journalverzeichnis erfolgt ist.
Wenn keine der Treiberschaltungen 41 eingeschaltet worden ist, zeigt dies an, daß keine Übereinstimmung gefunden worden ist. Das bedeutet, daß in das Journalverzeichnis 42 und den Journalspeicher 44 eine Eingabe gemacht werden muß. Zu diesem Zweck wird ein Ringzähler 43 fortgeschaltet, um die Adresse des nächsten verfügbaren Wortes im Journalverzeichnis 42 aufzurufen. Gleichzeitig wird die Schreib-Torschaltung 47 aktiviert, so daß ι der Inhalt des Adressen-Suchregisters 40 an der durch den Ringzähler 43 adressierten Speicherstelle gespeichert wird.
Wenn die Daten rückübertragen werden, muß auch der Journalspei- :
eher diese übertragung berücksichtigen. Daher muß nach Beendigung der Rückübertragung das Journalverzeichnis den Zustand ; wiedergeben, daß die im Datenspeicher 32 der ersten Ebene Ll gespeicherte Datenseite nicht mehr von der im Datenspeicher 36 der zweiten Ebene L2 befindlichen Kopie abweicht. Das geschieht ; auf die folgende Art: Die zur Zeit der Rückübertragung aus dem Journalspeicher 44 der ersten Ebene Ll entnommene virtuelle : Adresse wird für das Abfragen des Journalverzeichnisses 44 der ersten Ebene Ll benutzt. Die aus der Suchmatrix entnommene übereinstimmende Adresse wird in ein Register 4? gesetzt und das Gül- ! tigkeits-Bit im Adressen-Suchregister 40 auf binär "0". In dem für das Einschreiben vorgesehenen Teil des Speicherzyklus wird das Register 4? für die Adressierung des Journalverzeichnisses benutzt.
Der Inhalt des Adressen-Suchregisters 40 wird in die auf diese ; Weise adressierte Speicherstelle eingeschrieben. Durch den "0"-
Zustand des Gültigkeits-Bits wird ein positiver Vergleich der <
virtuellen Adresse beim nächsten Abfragen verhindert. '
EN 972 070 „
509884/0771
- 13 - 2523AU
Die in den Figuren verzeichneten Taktsignale T werden durch einen konventionellen Taktgeber erzeugt und erscheinen in der Reihenfolge der Indices (Tl - T12).
Es sind zwei Arten von Rückübertragungen möglich, nämlich Rückübertragurig in Übereinstimmung mit dem vorstehend diskutierten LRFM-Algorithmus und erzwungene Rückübertragung. Die erzwungene Rückübertragung erfolgt nicht in der Reihenfolge der am weitesten zurückliegenden Änderungen, d.h., gemäß dem durch die Fortschaltung des Journalspeichers 44 gegebenen LRFM-Algorithmus, wobei die Adressen-Fortschaltung des Journalspeichers in der durch den Zähler 53 gegebenen Reihenfolge erfolgt. Bei der erzwungenen Rückübertragung wird das Gültigkeits-Bit aus dem Journalspeicher und aus dem Journalverzeichnis entfernt, wie während einer normalen Rückübertragung, um anzuzeigen, daß die Daten bereits rückübertragen worden sind und dies nicht noch einmal wiederholt werden soll.
Eine erzwungene Rückübertragung findet statt, wenn Daten in eine Kongruenz-Klasse eingegeben werden sollen, in welcher Daten an allen vier virtuellen Adressen der Kongruenz-Klasse bereits geändert worden sind und die Änderungen noch nicht rückübertragen worden sind. Zur Feststellung, ob eine erzwungene Rückübertragung erforderlich ist, enthält das Journalverzeichnis 26 vier Status-Bits, eins für jede einzelne Adresse in der betreffenden Kongruenz-Klasse. Die Status-Bits werden von einer in Fig. 7 näher dargestellten Status-Bit-Schaltung 56 (Fig. 2) gesetzt. Immer wenn Daten entweder geändert oder rückübertragen werden, erfolgt eine Änderung der Status-Bits, um diesen Vorgang zu reflektieren. Die Status-Bit-Schaltung 56 umfaßt ein UND-Glied 58. Wenn das im "STATUS Yo" -Register gespeicherte Ausgangssignal des Journalverzeichnisses 26 vier "1"-Bits enthält, was besagt, daß Daten an allen Adressen in einer bestimmten Kongruenz-Klasse geändert worden sind, und wenn ein Signal vorliegt, das anzeigt,
EN 972 070
509884/0771
25234U
daß die Daten nicht anderswo auf der gleichen Ebene gespeichert sind, erzeugt das UND-Glied 58 ein Ausgangssignal, das die erzwungene Rückübertragung herbeiführt.
EN 972 070
50988 4/0771

Claims (8)

  1. _ 15 - 25234H
    PATENTANSPRÜCHE
    Ι,ί Hierarchische Speicheranordnung mit mehr als zwei Speicherstufen, die in der höchsten, mit dem Prozessor der Datenverarbeitungsanlage direkt verbundenen Stufe den kleinsten und schnellsten Speicher und in der niedrigsten Stufe den größten und langsamsten Speicher aufweist und in der vom Prozessor veränderte Daten zu niedrigeren Stufen rückübertragen werden,
    dadurch gekennzeichnet, daß in jeder Stufe (Ll - Ln) der Hierarchie außer dem Datenspeicher (10a - 1On) und dem zugehörigen Verzeichnis (12a - 12n) der darin gespeicherten Daten noch vorgesehen sind:
    - ein Rückübertragungsspeicher (14a - l4n) zur Speicherung auf dieser Stufe von veränderten Daten, die noch nicht rückübertragen wurden,
    - ein Journalspeicher (l6a - lon) zur fortlaufenden Speicherung von Adressen von erstmalig veränderten Daten, und
    - ein Journalverzeichnis (18a - l8n) zur Anzeige, ob veränderte Daten bereits vorher verändert worden waren.
  2. 2. Hierarchische Speicheranordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Datenspeicher (10) einerseits und andererseits die Rückübertragungsspeicher (14), die Journalspeicher (16) und die Journalverzeichnisse (18) von getrennten Stromversorgungen (Trennlinie 24) gespeist werden.
  3. 3. Hierarchische Speicheranordnung nach Anspruch 1, dadurch gekennzeichnet, daß die im Rückübertragungsspeicher (Ik) gespeicherten Daten in der Reihenfolge der im Journalspeicher (16) gespeicherten Adressen, d.h. in der Reihenfolge, in der die Daten dieser Stufe zuerst verändert wurden, rückübertragen werden.
  4. 4. Hierarchische Speicheranordnung nach Anspruch 3, gekenn-
    EN 972 070
    509884/0771
    zeichnet durch eine Rückübertragungsschaltung (Pig. 5) mit Kippschaltungen (58, 60) zur Belegtanzeige der Speicher (10, 32; 14, 54) und einen Zähler (53) zur Adressierung des Journalspeichers (16, 44) derart, daß Rückübertragungen von Datenseiten in der Reihenfolge durchgeführt werden, in der die Daten auf der betreffenden Stufe zuerst verändert und noch nicht rückübertragen worden waren, wobei die Rückübertragung in den Datenspeicher und den Rückübertragungsspeicher der nächstniedrigeren Stufe dann durchgeführt wird, wenn diese Speicher frei sind und wobei Rückübertragungsanzeigen in den Journalspeicher und das Journalverzeichnis dieser nächstniedrigeren Stufe eingetragen werden und nach Beendigung einer Rückübertragung der Zähler (53) zur nächsten Journalspeicheradresse weitergeschaltet wird.
  5. 5. Hierarchische Speicheranordnung nach Anspruch 1, dadurch gekennzeichnet, daß der Datenspeicher (1On) und der Rückübertragungsspeicher (l4n) der niedrigsten Stufe als nicht - informationsflüchtige Speicher (z.B. Magnetbandspeicher) ausgeführt sind und die gleichen Daten speichern, und die anderen Datenspeicher (10a, 10b, etc.) als informationsflüchtige Speicher (z.B. Halbleiterspeicher) ausgeführt sind.
  6. 6. Hierarchische Speicheranordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Journalverzeichnisse (18) als assoziative Speicher (Fig. 6) ausgebildet sind.
  7. 7. Hierarchische Speicheranordnung nach Anspruch 3, gekennzeichnet durch ein Gültigkeitsbit in jeder Speicherstelle des Journalspeichers (16, 44), das gesetzt wird, wenn eine ursprüngliche Eintragung in die Speicherstelle erfolgt und rückgestellt wird, wenn die Daten mit der an dieser Speicherstelle gespeicherten Adresse rückübertragen worden sind.
    EN 972 070 ,
    S09884/0771
    _„_ 25234H
  8. 8. Hierarchische Speicheranordnung nach Anspruch 1, dadurch gekennzeichnet, daß zur Adressierung (Adressen 3,γ der Datenspeicher (10; 32, 36), deren Verzeichnisse (12; 26, 34) und der Rückubertragungsspeicher (14; 54, 37) einer jeden Speicherstufe eine Mischschaltung (29, Fig. 4) zur Mischung von Adressenbits des virtuellen Teils der Datenseitenadresse und von Adressenbits des realen Teils verwendet wird, derart, daß eine Datenseite nur an einer bestimmten Auswahl von Adressen (Kongruenz-Klasse, z.B. vier Adressen) gespeichert werden kann und daß in den Verzeichnissen (10; 26, 34) der Datenspeicher (10; 32, 36) für jede dieser Adressen ein Status-Bit vorgesehen ist.
    9· Hierarchische Speicheranordnung nach Anspruch 8, gekennzeichnet durch eine Statusbit-Schaltung (56, Fig. 7) mit eiern UND-Glied (58), das ein Signal abgibt, wenn alle Adressen einer Kongruenz-Klasse besetzt sind und die betreffenden Daten verändert aber noch nicht rückübertragen worden sind, und das eine erzwungene Rückübertragung einleitet.
    EN 972 070
    £09884/0771
    4g
    Leerseite
DE2523414A 1974-07-05 1975-05-27 Hierarchische Speicheranordnung mit mehr als zwei Speicherstufen Expired DE2523414C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/486,043 US4020466A (en) 1974-07-05 1974-07-05 Memory hierarchy system with journaling and copy back

Publications (3)

Publication Number Publication Date
DE2523414A1 true DE2523414A1 (de) 1976-01-22
DE2523414B2 DE2523414B2 (de) 1978-04-27
DE2523414C3 DE2523414C3 (de) 1978-12-14

Family

ID=23930382

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2523414A Expired DE2523414C3 (de) 1974-07-05 1975-05-27 Hierarchische Speicheranordnung mit mehr als zwei Speicherstufen

Country Status (16)

Country Link
US (1) US4020466A (de)
JP (1) JPS5615067B2 (de)
AT (1) AT355353B (de)
BR (1) BR7504244A (de)
CA (1) CA1033847A (de)
CH (1) CH581864A5 (de)
DD (1) DD121208A5 (de)
DE (1) DE2523414C3 (de)
ES (1) ES438793A1 (de)
FR (1) FR2277407A1 (de)
GB (1) GB1468483A (de)
IT (1) IT1038938B (de)
NL (1) NL7506922A (de)
SE (1) SE408102B (de)
SU (1) SU692585A3 (de)
ZA (1) ZA753033B (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0010625A1 (de) * 1978-10-26 1980-05-14 International Business Machines Corporation Hierarchisches Speichersystem

Families Citing this family (87)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4282572A (en) * 1979-01-15 1981-08-04 Ncr Corporation Multiprocessor memory access system
US4264953A (en) * 1979-03-30 1981-04-28 Honeywell Inc. Virtual cache
DE3068498D1 (en) * 1979-05-09 1984-08-16 Int Computers Ltd Hierarchical data storage system
US4868734A (en) * 1984-04-30 1989-09-19 Unisys Corp. Variable rate improvement of disc cache subsystem
US5371855A (en) * 1979-06-04 1994-12-06 Unisys Corporation Disc cache subsystem having plural-level cache memories
US5241666A (en) * 1979-06-04 1993-08-31 Unisys Corporation Variable rate improvement of disc cache subsystem
US4339804A (en) * 1979-07-05 1982-07-13 Ncr Corporation Memory system wherein individual bits may be updated
FR2472232B1 (fr) * 1979-12-14 1988-04-22 Honeywell Inf Systems Dispositif et procede d'effacement d'antememoire
US4458310A (en) * 1981-10-02 1984-07-03 At&T Bell Laboratories Cache memory using a lowest priority replacement circuit
US4430727A (en) * 1981-11-10 1984-02-07 International Business Machines Corp. Storage element reconfiguration
US4442487A (en) * 1981-12-31 1984-04-10 International Business Machines Corporation Three level memory hierarchy using write and share flags
US4530054A (en) * 1982-03-03 1985-07-16 Sperry Corporation Processor-addressable timestamp for indicating oldest written-to cache entry not copied back to bulk memory
US4811203A (en) * 1982-03-03 1989-03-07 Unisys Corporation Hierarchial memory system with separate criteria for replacement and writeback without replacement
US4530055A (en) * 1982-03-03 1985-07-16 Sperry Corporation Hierarchical memory system with variable regulation and priority of writeback from cache memory to bulk memory
US4464717A (en) * 1982-03-31 1984-08-07 Honeywell Information Systems Inc. Multilevel cache system with graceful degradation capability
US4507751A (en) * 1982-06-21 1985-03-26 International Business Machines Corporation Method and apparatus for logging journal data using a log write ahead data set
US4489381A (en) * 1982-08-06 1984-12-18 International Business Machines Corporation Hierarchical memories having two ports at each subordinate memory level
US4571674A (en) * 1982-09-27 1986-02-18 International Business Machines Corporation Peripheral storage system having multiple data transfer rates
US4638425A (en) * 1982-09-29 1987-01-20 International Business Machines Corporation Peripheral data storage having access controls with error recovery
US4819154A (en) * 1982-12-09 1989-04-04 Sequoia Systems, Inc. Memory back up system with one cache memory and two physically separated main memories
EP0128945B1 (de) * 1982-12-09 1991-01-30 Sequoia Systems, Inc. Sicherstellungsspeichersystem
JPH0658646B2 (ja) * 1982-12-30 1994-08-03 インタ−ナショナル・ビジネス・マシ−ンズ・コ−ポレ−ション デ−タ持続性が制御される仮想記憶アドレス変換機構
US4604709A (en) * 1983-02-14 1986-08-05 International Business Machines Corp. Channel communicator
JPS59165162A (ja) * 1983-03-11 1984-09-18 インタ−ナシヨナル ビジネス マシ−ンズ コ−ポレ−シヨン ボリューム回復方法
EP0118583A1 (de) * 1983-03-17 1984-09-19 Georg V. Coza Speicher-Korrektureinheit
JPH0644245B2 (ja) * 1983-12-29 1994-06-08 富士通株式会社 ストアバッファ装置
JPH065541B2 (ja) * 1983-12-30 1994-01-19 株式会社日立製作所 論理回路の自動設計方法
US4747043A (en) * 1984-02-10 1988-05-24 Prime Computer, Inc. Multiprocessor cache coherence system
US4916605A (en) * 1984-03-27 1990-04-10 International Business Machines Corporation Fast write operations
US4875155A (en) * 1985-06-28 1989-10-17 International Business Machines Corporation Peripheral subsystem having read/write cache with record access
US4814971A (en) * 1985-09-11 1989-03-21 Texas Instruments Incorporated Virtual memory recovery system using persistent roots for selective garbage collection and sibling page timestamping for defining checkpoint state
US5043871A (en) * 1986-03-26 1991-08-27 Hitachi, Ltd. Method and apparatus for database update/recovery
US4872111A (en) * 1986-08-27 1989-10-03 Amdahl Corporation Monolithic semi-custom IC having standard LSI sections and coupling gate array sections
US4926317A (en) * 1987-07-24 1990-05-15 Convex Computer Corporation Hierarchical memory system with logical cache, physical cache, and address translation unit for generating a sequence of physical addresses
GB8805908D0 (en) * 1988-02-12 1988-04-13 Int Computers Ltd Data memory system
US5146571A (en) * 1988-03-28 1992-09-08 Emc Corporation Remapping defects in a storage system through the use of a tree structure
US5043866A (en) * 1988-04-08 1991-08-27 International Business Machines Corporation Soft checkpointing system using log sequence numbers derived from stored data pages and log records for database recovery
US4987533A (en) * 1988-05-05 1991-01-22 International Business Machines Corporation Method of managing data in a data storage hierarchy and a data storage hierarchy therefor with removal of the least recently mounted medium
US5175842A (en) * 1988-05-31 1992-12-29 Kabushiki Kaisha Toshiba Data storage control system capable of reading data immediately after powered on
JPH0752399B2 (ja) * 1988-06-30 1995-06-05 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン 記憶システム
US5150328A (en) * 1988-10-25 1992-09-22 Internation Business Machines Corporation Memory organization with arrays having an alternate data port facility
US5166903A (en) * 1988-10-25 1992-11-24 International Business Machines Corporation Memory organization with arrays having an alternate data port facility
JPH02148235A (ja) * 1988-11-30 1990-06-07 Toshiba Corp データ退避方式
US6038641A (en) * 1988-12-30 2000-03-14 Packard Bell Nec Two stage cache memory system and method
US5193162A (en) * 1989-11-06 1993-03-09 Unisys Corporation Cache memory with data compaction for use in the audit trail of a data processing system having record locking capabilities
US5544347A (en) 1990-09-24 1996-08-06 Emc Corporation Data storage system controlled remote data mirroring with respectively maintained data indices
JPH04230549A (ja) * 1990-10-12 1992-08-19 Internatl Business Mach Corp <Ibm> 多重レベル・キャッシュ
JP3386823B2 (ja) * 1991-03-28 2003-03-17 株式会社日立製作所 ファイルの管理方法及び装置
US5357607A (en) * 1991-04-01 1994-10-18 Xerox Corporation File storage process for electronic printing systems having multiple disks
US5241672A (en) * 1991-04-01 1993-08-31 Xerox Corporation System using the storage level of file updates in nonvolatile memory to trigger saving of RAM to disk and using the file updates to reboot after crash
JPH04305741A (ja) * 1991-04-02 1992-10-28 Nec Corp データベース入出力制御方式
JPH0827754B2 (ja) * 1992-05-21 1996-03-21 インターナショナル・ビジネス・マシーンズ・コーポレイション コンピュータシステムにおけるファイル管理方法及びファイル管理システム
US5577222A (en) * 1992-12-17 1996-11-19 International Business Machines Corporation System for asynchronously duplexing remote data by sending DASD data grouped as a unit periodically established by checkpoint based upon the latest time value
US5303146A (en) * 1993-03-11 1994-04-12 Borland International, Inc. System and methods for improved scenario management in an electronic spreadsheet
US6662307B1 (en) 1993-06-14 2003-12-09 Unisys Corporation Disk recovery/reconstruction
AU2663095A (en) * 1994-06-10 1996-01-05 Sequoia Systems, Inc. Main memory system and checkpointing protocol for fault-tolerant computer system
US5590274A (en) * 1995-01-23 1996-12-31 Tandem Computers Incorporated Multi-volume audit trails for fault tolerant computers
US5680537A (en) * 1995-03-01 1997-10-21 Unisys Corporation Method and apparatus for isolating an error within a computer system that transfers data via an interface device
US5784712A (en) * 1995-03-01 1998-07-21 Unisys Corporation Method and apparatus for locally generating addressing information for a memory access
US5828823A (en) * 1995-03-01 1998-10-27 Unisys Corporation Method and apparatus for storing computer data after a power failure
US5784382A (en) * 1995-03-01 1998-07-21 Unisys Corporation Method and apparatus for dynamically testing a memory within a computer system
US5784393A (en) * 1995-03-01 1998-07-21 Unisys Corporation Method and apparatus for providing fault detection to a bus within a computer system
JP3086779B2 (ja) * 1995-06-19 2000-09-11 株式会社東芝 メモリ状態復元装置
US5778165A (en) * 1995-10-20 1998-07-07 Digital Equipment Corporation Variable-level backup scheduling method and apparatus
US5751939A (en) * 1995-11-29 1998-05-12 Texas Micro, Inc. Main memory system and checkpointing protocol for fault-tolerant computer system using an exclusive-or memory
US5864657A (en) * 1995-11-29 1999-01-26 Texas Micro, Inc. Main memory system and checkpointing protocol for fault-tolerant computer system
US5737514A (en) * 1995-11-29 1998-04-07 Texas Micro, Inc. Remote checkpoint memory system and protocol for fault-tolerant computer system
US5745672A (en) * 1995-11-29 1998-04-28 Texas Micro, Inc. Main memory system and checkpointing protocol for a fault-tolerant computer system using a read buffer
US5809331A (en) * 1996-04-01 1998-09-15 Apple Computer, Inc. System for retrieving configuration information from node configuration memory identified by key field used as search criterion during retrieval
US6052797A (en) * 1996-05-28 2000-04-18 Emc Corporation Remotely mirrored data storage system with a count indicative of data consistency
US5889935A (en) * 1996-05-28 1999-03-30 Emc Corporation Disaster control features for remote data mirroring
US5829038A (en) * 1996-06-20 1998-10-27 Intel Corporation Backward inquiry to lower level caches prior to the eviction of a modified line from a higher level cache in a microprocessor hierarchical cache structure
US5845330A (en) * 1996-07-03 1998-12-01 Sun Microsystems, Inc. Using an intermediate storage medium in a database management system
TW379298B (en) * 1996-09-30 2000-01-11 Toshiba Corp Memory updating history saving device and memory updating history saving method
US5949970A (en) * 1997-01-07 1999-09-07 Unisys Corporation Dual XPCS for disaster recovery
US5940826A (en) * 1997-01-07 1999-08-17 Unisys Corporation Dual XPCS for disaster recovery in multi-host computer complexes
US5909698A (en) * 1997-03-17 1999-06-01 International Business Machines Corporation Cache block store instruction operations where cache coherency is achieved without writing all the way back to main memory
US6298345B1 (en) * 1998-07-10 2001-10-02 International Business Machines Corporation Database journal mechanism and method that supports multiple simultaneous deposits
US6463509B1 (en) 1999-01-26 2002-10-08 Motive Power, Inc. Preloading data in a cache memory according to user-specified preload criteria
US6370614B1 (en) 1999-01-26 2002-04-09 Motive Power, Inc. I/O cache with user configurable preload
DE10211606B4 (de) * 2002-03-12 2017-06-08 Kip Cr P1 Lp Datenverarbeitungseinrichtung mit einem Metadatensicherungsmanagement
US7606994B1 (en) * 2004-11-10 2009-10-20 Sun Microsystems, Inc. Cache memory system including a partially hashed index
JP4938328B2 (ja) * 2006-03-28 2012-05-23 株式会社日立製作所 記憶システム及びその電源制御方法並びにストレージ装置
US8874517B2 (en) * 2007-01-31 2014-10-28 Hewlett-Packard Development Company, L.P. Summarizing file system operations with a file system journal
US8185706B2 (en) * 2008-04-30 2012-05-22 Apple Inc. Copyback optimization for memory system
US10223026B2 (en) * 2013-09-30 2019-03-05 Vmware, Inc. Consistent and efficient mirroring of nonvolatile memory state in virtualized environments where dirty bit of page table entries in non-volatile memory are not cleared until pages in non-volatile memory are remotely mirrored
US10140212B2 (en) * 2013-09-30 2018-11-27 Vmware, Inc. Consistent and efficient mirroring of nonvolatile memory state in virtualized environments by remote mirroring memory addresses of nonvolatile memory to which cached lines of the nonvolatile memory have been flushed

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1925427A1 (de) * 1968-05-25 1970-01-15 Fujitsu Ltd Datenuebertragungsvorrichtung zum UEbertragen von Daten zwischen Informationsspeichern
JPS5633915B1 (de) * 1970-11-06 1981-08-06
US3737866A (en) * 1971-07-27 1973-06-05 Data General Corp Data storage and retrieval system
US3806888A (en) * 1972-12-04 1974-04-23 Ibm Hierarchial memory system
US3810110A (en) * 1973-05-01 1974-05-07 Digital Equipment Corp Computer system overlap of memory operation

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0010625A1 (de) * 1978-10-26 1980-05-14 International Business Machines Corporation Hierarchisches Speichersystem

Also Published As

Publication number Publication date
SU692585A3 (ru) 1979-10-15
FR2277407B1 (de) 1977-04-15
JPS5119455A (de) 1976-02-16
AU8100675A (en) 1976-11-11
AT355353B (de) 1980-02-25
JPS5615067B2 (de) 1981-04-08
ATA407675A (de) 1979-07-15
IT1038938B (it) 1979-11-30
DE2523414B2 (de) 1978-04-27
SE408102B (sv) 1979-05-14
ZA753033B (en) 1976-12-29
DD121208A5 (de) 1976-07-12
NL7506922A (nl) 1976-01-07
ES438793A1 (es) 1977-03-16
BR7504244A (pt) 1976-07-06
CA1033847A (en) 1978-06-27
DE2523414C3 (de) 1978-12-14
CH581864A5 (de) 1976-11-15
US4020466A (en) 1977-04-26
GB1468483A (en) 1977-03-30
SE7507113L (sv) 1976-01-07
FR2277407A1 (fr) 1976-01-30

Similar Documents

Publication Publication Date Title
DE2523414A1 (de) Hierarchische speicheranordnung
DE2226382C3 (de) Datenverarbeitungsanlage mit mehreren Prozessoren und diesen zugeordneten Pufferspeichern
DE2231146C3 (de) Datenverarbeitungsanlage mit virtueller Adressierung
EP0010198B1 (de) Vorrichtung zur Steuerung des Seitenaustausches in einem Datenverarbeitungssystem mit virtuellem Speicher
DE2656546C2 (de) Datenblock-Austauschanordnung
DE2515696C2 (de) Datenverarbeitungssystem
DE2550339C2 (de) Speichersystem mit einem langsam arbeitenden Hauptspeicher großer Kapazität und mit zumindest einem schnell arbeitenden Pufferspeicher geringer Kapazität
DE2717702C2 (de) Speicher-Zugriff-Steuersystem
DE2637054C3 (de) Steuervorrichtung für einen Pufferspeicher
DE3011552A1 (de) Datenverarbeitungsanlage mit einem hauptspeicher sowie wenigsten einem datenprozessor mit zugeordnetem adressenumformer
DE2241257A1 (de) Datenverarbeitende anlage
EP0013737A1 (de) Mehrstufige Speicherhierarchie für ein Datenverarbeitungssystem
DE2131066A1 (de) Anordnung zur Adressen-Umsetzung
DE2841041A1 (de) Datenverarbeitungsanlage mit mindestens zwei mit einem schnellen arbeitsspeicher ausgeruesteten prozessoren
DE2928488A1 (de) Speicher-subsystem
DE2400064A1 (de) Speicherpruefanordnung und diese verwendendes endgeraetsystem in einem datenverarbeitungssystem
DE1524788C3 (de) Schaltungsanordnung zum Erkennen und zum automatischen Ersetzen von schadhaften Speicherstellen in Datenspeichern
DE2356260A1 (de) Dynamisch doppelt geordneter schieberegisterspeicher und verfahren zum betrieb des speichers
DE2703559C2 (de)
DE1524111A1 (de) Datenverarbeitungsanlage
DE2117581B2 (de) Einrichtung zur Adressenprüfung
DE2648225A1 (de) Datenspeicherwerk mit mehreren speichermodulen
DE2233193A1 (de) Stapel-speichersystem
DE3000012A1 (de) Schaltungsanordnung zur ausfuehrung eines uebertragungsbefehls in einer datenverarbeitungsanlage
DE2853165C2 (de)

Legal Events

Date Code Title Description
C3 Grant after two publication steps (3rd publication)
8339 Ceased/non-payment of the annual fee