[go: up one dir, main page]

DE69622647T2 - Wiederherstellbares Plattensteuersystem mit nichtflüchtigem Speicher - Google Patents

Wiederherstellbares Plattensteuersystem mit nichtflüchtigem Speicher

Info

Publication number
DE69622647T2
DE69622647T2 DE69622647T DE69622647T DE69622647T2 DE 69622647 T2 DE69622647 T2 DE 69622647T2 DE 69622647 T DE69622647 T DE 69622647T DE 69622647 T DE69622647 T DE 69622647T DE 69622647 T2 DE69622647 T2 DE 69622647T2
Authority
DE
Germany
Prior art keywords
write
write data
storing
disk device
request
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 - Fee Related
Application number
DE69622647T
Other languages
English (en)
Other versions
DE69622647D1 (de
Inventor
Hideaki Hirayama
Kuniyasu Shimizu
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Application granted granted Critical
Publication of DE69622647D1 publication Critical patent/DE69622647D1/de
Publication of DE69622647T2 publication Critical patent/DE69622647T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1435Saving, restoring, recovering or retrying at system level using file system or storage system metadata
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Library & Information Science (AREA)
  • Human Computer Interaction (AREA)
  • Retry When Errors Occur (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

  • Die Erfindung betrifft ein einen Prüfpunktverfahren verwendendes Computersystem und im besonderen ein Plattensteuersystem, das einen Hochgeschwindigkeitsplattenzugriff ermöglicht, um eine mit dem Prüfpunktverfahren verbundene Verarbeitungsverzögerung zu vermeiden.
  • Verwandter Stand der Technik
  • Ein das Prüfpunktverfahren verwendendes Computersystem verschiebt eine Schreiboperation auf eine Platteneinrichtung bis der nächste Prüfpunkt erfaßt ist. Startet das Computersystem wegen eines Fehlers vom letzten Prüfpunkt aus, wird die Platteneinrichtung andernfalls nicht in der Lage sein, den Status zum Zeitpunkt des letzten Prüfpunktes wiederherzustellen. Dies verursacht eine merkliche Performanceherabsetzung.
  • Technisches Problem und dessen Lösung
  • Ziel dieser Erfindung ist es, eine wiederherstellbare Platteneinrichtung ohne mit dem Prüfpunktverfahren verbundene Prozeßverzögerung bereitzustellen.
  • Eine andere Aufgabe dieser Erfindung ist es, eine Plattenschreiboperation unter Verwendung eines nicht flüchtigen Speichers zu beschleunigen.
  • Gemäß der vorliegenden Erfindung werden die bisherigen Ziele neben anderen durch Bereitstellung eines Computersystems erreicht, das eine Prüfpunktoperation ausführt, das System vom letzten Prüfpunktstatus aus neu startet, falls ein Fehler auftritt, wobei das System gekennzeichnet ist durch besagte Platteneinrichtungen zum Lesen und Speichern von Daten, besagtes Betriebssystem zur Ausgabe einer Schreib- oder Leseanfrage an die Platteneinrichtung, und das System ferner aufweist einen nichtflüchtigen Speicher, Schreibanfragenspeichermittel zum Speichern von Schreibdaten und einer zugehörigen Schreibanfrage in den nicht flüchtigen Speicher, und Plattenschreibmittel zum Speichern der in dem nichtflüchtigen Speicher gespeicherten Daten durch die Schreibanfragenspeichermittel in die Platteneinrichtung, wobei das Plattenschreibmittel ferner Mittel zum Speichern von Schreibdaten entsprechend der Schreibanfrage aufweist, die vor dem letzten Prüfpunkt von dem nichtflüchtigen Speicher zur Platteneinrichtung erzeugt worden ist.
  • Gemäß einem weiteren Aspekt der vorliegenden Erfindung wird ebenso ein Verfahren zum Steuern eines Plattenzugriffs in einem Computersystem bereitgestellt, das gekennzeichnet ist durch Aufweisen der Schritte:
  • erstes Speichern von Schreibdaten und einer zugehörigen Schreibanfrage von dem genannten Betriebssystem an die genannte Platteneinrichtung in einem nichtflüchtigen Speicher, zweites Speichern der in dem nichtflüchtigen Speicher gespeicherten Schreibdaten in die genannte Platteneinrichtung, wobei der zweite Speicherschritt den Schritt des Speicherns der vor dem letzten Prüfpunkt erzeugten Schreibdaten aus dem nichtflüchtigen Speicher in die Platteneinrichtung umfaßt.
  • Die Erfindung speichert mittels eines Operationssystems angefragte Schreibdaten in den nichtflüchtigen Speicher. Die Erfindung speichert ebenso mit einer Schreibanfrage korrespondierende Schreibdaten, die vor einer Durchführung des letzten Prüfpunktes vom nichtflüchtigen Speicher in die Platteneinrichtung erzeugt worden ist.
  • Die Erfindung kann eine Fehlerresistenz absichern. Das Plattensteuersystem der Erfindung kann die Latenz des Plattenzugriffes durch Vermeidung einer Verarbeitungsverzögerung resultierend vom Standpunkt der Prüfpunktdurchführung aus verbessern.
  • Andere Gegenstände, Merkmale und Vorteile der vorliegenden Erfindung werden aus der folgenden detaillierten Beschreibung ersichtlich werden. Das Ganze ist jedoch dahingehend zu verstehen, daß die detaillierte Beschreibung und die spezifischen Beispiele unter Anzeigen bevorzugter Ausführungsformen der Erfindung lediglich als Illustration aufgeführt werden, da verschiedene Veränderungen und Modifikationen innerhalb des Offenbarungsgehaltes der Erfindung dem Fachmann aus der detaillierten Beschreibung offensichtlich werden.
  • Kurze Beschreibung der Zeichnungen
  • Fig. 1 ist ein schematisches Blockdiagramm eines Computersystems, das einen Prüfpunkt verwendet und in dem das Plattensteuersystem dieser Erfindung appliziert ist.
  • Fig. 2 ist ein schematisches Blockdiagramm, das die Elemente einer Ausgestaltung eines Computersystems illustriert, bei dem eine Schreibanfrage Daten an einen nichtflüchtigen Speicher sendet.
  • Fig. 3 ist ein schematisches Blockdiagramm, das die Bewegung der Daten von der undefinierten Warteschlange zur definierten Warteschlange darstellt.
  • Fig. 4(a) ist ein Flußdiagramm, das den Schreibprozeß des Plattensteuersystems illustriert.
  • Fig. 4(b) ist ein Flußdiagramm, das die Prüfpunktoperation des Plattensteuersystems darstellt.
  • Fig. 4(c) ist ein Flußdiagramm, das die Hintergrundverarbeitung des Plattensteuerungssystems darstellt.
  • Fig. 5(a) ist ein Blockdiagramm, das die Verknüpfungssteuerstruktur eines nichtflüchtigen Speichers darstellt.
  • Fig. 5(b) ist ein Flußdiagramm, das die Verarbeitung einer Plattenbeschreibung aufzeigt.
  • Fig. 5(c) illustriert Schreibdaten und Schreibanfragestrukturen im nichtflüchtigen Speicher.
  • Fig. 6 und 7 sind Blockdiagramme, die den Betrieb eines Plattensteuersystems darstellen, wenn ein Fehler im Computersystem auftritt.
  • Fig. 8 ist ein Zeitdiagramm, das den Betrieb eines Plattensteuersystems darstellt, wenn ein Fehler im Computersystem auftritt.
  • Fig. 9(a) ist ein Flußdiagramm, das die Wiederherstellungssequenz (1) des Plattensteuersystems darstellt.
  • Fig. 9(b) ist ein Flußdiagramm, das die Wiederherstellungssequenz (2) des Plattensteuersystems darstellt.
  • Fig. 9(c) ist ein Flußdiagramm, das die Schreibverarbeitung des Plattensteuersystems darstellt.
  • Beschreibung spezieller Ausgestaltungen
  • Eine Ausgestaltung dieser Erfindung wird unter Bezugnahme der Zeichnungen erläutert.
  • Fig. 1(a) ist ein Blockdiagramm eines Computersystems, dasein Prüfpunktverfahren verwendet, auf das das Plattensteuerungssystem dieser Erfindung angewandt wird.
  • Wenn ein Prozessor 1 den Inhalt eines Hauptspeichers 2 aktualisiert (updated), nimmt dieses Comutersystem das vorherige Bild des aktualisierten Anteils in einen Protokollspeicher 6 auf. Die Kontextinformation auf dem Prozessor und der Inhalt eines Cachespeichers werden in den Hauptspeicher am Prüfpunkt geschrieben. Der Status, der zum erneuten Starten der Datenverarbeitung vom letzten Prüfpunkt aus benötigt wird, wird in den Hauptspeicher und den Protokollspeicher gegeben. Tritt ein Fehler auf, speichert das Computersystem den Hauptspeicherstatus des letzten Prüfpunktes erneut mittels Rückschreiben des vorherigen Bildes auf den aktualisierten Teil des Hauptspeichers. Am Ende der Prüfpunktoperation wird der Inhalt des Protokollspeichers gelöscht. Darüber hinaus weist das Computersystem der Erfindung einen nichtflüchtigen Speicher 3 als Hilfsspeicher und eine Platteneinrichtung 4 auf.
  • Fig. 1(b) ist ein Blockdiagramm des Plattensteuerungssystems dieser Erfindung. Wie in Fig. 1(b) gezeigt, weist das Plattensteuerungssystem ein Schreibanfragespeichermittel 11, ein Schreibanfragenfixierungsmittel 12, ein Schreibanfragenverwerfungsmittel 13 und ein Plattenschreibmittel 14 auf.
  • Generiert ein Betriebssystem eine Schreibanfrage an die Plattenvorrichtung, speichert das Schreibanfragenspeicherungsmittel die Schreibanfrage und die damit verbundenen Schreibdaten in den nichtflüchtigen Speicher. Obwohl die Schreibanfrage an diesem Punkt im nichtflüchtigen Speicher gehalten wird, können die damit verbundenen Daten nicht auf die Plattenvorrichtung vor dem nächsten Prüfpunkt geschrieben werden. Tritt ein Fehler vor dem Ende der nächsten Prüfpunktoperation auf, werden die Schreibanfrage und Schreibdaten verworfen.
  • Im folgenden sprechen wir davon, daß solch eine Schreibanfrage und im nichtflüchtigen Speicher gespeicherte Daten sich in einem undefinierten Zustand befinden.
  • Wird die Operation des nächsten Prüfpunktes ohne jegliche Fehler durchgeführt, ändert das Schreibanfragenfixierungsmittel den Status der Schreibanfrage in dem nichtflüchtigen Speicher von einem undefinierten Status in einen definierten Status. Dies bedeutet, sollte sogar ein Fehler nach einem solchen Statuswechsel auftreten, daß die Schreibanfrage endgültig auszuführen ist.
  • Tritt ein Fehler vor der nächsten Prüfpunktdurchführung auf, verwirft das Schreibanfragenverwerfungsmittel die Plattenschreibanfragen und die damit verknüpften Daten im undefinierten Zustand.
  • Das Plattenschreibmittel führt eine Plattenschreiboperation gemäß den im definierten Zustand im nichtflüchtigen Speicher gelassenen Plattenschreibanfragen durch.
  • Als nächstes wird die Arbeitsweise der Erfindung unter Bezugnahme der Fig. 2 bis 9 erläutert, die Blockdiagramme und Flußdiagramme darstellen, die die Arbeisweise einer Ausführung die er Erfindung darstellen.
  • Zunächst gibt das Schreibanfragenspeicherungsmittel die Schreibanfrage und die damit verbundenen Schreibdaten in den nichtflüchtigen Speicher, wenn eine Schreibanfrage an die Plattenvorrichtung vom Betriebssystem empfangen wird, wie in Fig. 1(a) gezeigt.
  • Wie in Fig. 2 dargestellt, weist der nicht flüchtige Speicher eine undefinierte Warteschlange 31 und eine definierte Warteschlange 32 auf. Eine nach dem letzten Prüfpunkt empfangene Schreibanfrage und die damit verbundenen Schreibdaten werden in der undefinierten Warteschlange des nichtflüchtigen Speichers gespeichert. Auf eine Durchführung des Prüfpunktes ohne einen Fehler werden die Schreibanfragen und die damit verbundenen Schreibdaten in der undefinierten Warteschlange in die definierte Warteschlange des nichtflüchtigen Speichers bewegt.
  • Wird eine Schreibanfrage in der undefinierten Warteschlange des nichtflüchtigen Speichers durch das Schreibanfragenspeichungsmittel gespeichert, gibt das Plattensteuerungssystem dem Betriebssystem (S13 in Fig. 4(a)) die Information "Schreibabschluß". Dadurch muß das Betriebssystem nicht auf die aktuelle Vervollständigung der Schreibanfrage warten, was die Performance merklich verbessert.
  • Als nächstes wird die Arbeitsweise des Plattensteuerungssystems während einer Prüfpunktdurchführung unter Bezugnahme auf die Fig. 3 erklärt.
  • Es wird angenommen, daß der Prüfpunkt dieses Computersystems in einem Status, wie in Fig. 2 gezeigt, durchgeführt wird. Ist der nichtflüchtige Speicher mit Schreibdaten gefüllt, wird ein Prüfpunkt zwangsweise durchgeführt. Das Plattensteuerungssystem prüft die Größe des freien Bereichs des nichtflüchtigen Speichers. Ist die Kapazität des nichtflüchtigen Speichers unter einem vorbestimmten Wert oder eine bestimmte Zeit zur Durchführung des Prüfpunktes des Computersystems verstrichen, wird die I/O-Verarbeitung vom Betriebssystem aus wieder neu gestartet. Die I/O-Verarbeitung aus dem Betriebssystem wird verzögert, wenn der Prüfpunkt ausgeführt wird.
  • Zunächst werden während der Prüfpunktoperation Schreibanfragen und deren in der undefinierten Warteschleife gespeicherten Schreibdaten zur definierten Warteschlange mittels des Schreibanfragenfixierungsmittels (Fig. 3 und S15 in Fig. 4(b)) bewegt. Diese Bewegung verlangt nicht zwingend die physische Bewegung der gesamten Daten, jedoch die Veränderungen von Zeigern (Pointern). Das Verfahren zur Steuerung einer Schreibanfrage und im nichtflüchtigen Speicher gespeicherten Schreibdaten wird unter Bezugnahme auf die Fig. 5 später erläutert.
  • Nach dem Prüfpunkt führt das Plattenschreibmittel die Plattenschreiboperation gemäß der in der definierten Warteschlange (Fig. 3 und S17 in Fig. 4(c)) gespeicherten Schreibanfrage durch. Es wird empfohlen, daß die Schreiboperation auf die Plattenvorrichtung durch das Plattenschreibmittel gemäß der Priorität der Schreibanfrage und der Belastung des Computersystems sauber ausgeführt wird.
  • Der nichtflüchtige Speicher beinhaltet eine undefinierte Warteschlange, eine definierte Warteschlange, Anfragestrukturen und Schreibdaten gemäß Fig. 5(a). Die undefinierte Warteschlange und die definierte Warteschlange weisen einen Steuerungsblock (nicht gezeigt) zur Verwaltung der Anfragestrukturen auf. Die undefinierte Warteschlange weist zwei Anfragestrukturen 4 und 5 wie in Fig. 5(a) gezeigt auf. Die definierte Warteschlange weist drei Anfragestrukturen 1, 2 und 3 wie in Fig. 5(a) gezeigt auf. Eine Steuerungsinformation auf einer Anfragenstruktur weist eine Schreibmarke auf, die anzeigt, daß die Daten nunmehr auf die Platteneinrichtung geschrieben werden, Zeigerinformationen auf die Schreibdaten und nächste Anfragenstruktur, eine Plattenanzahl N, eine Sektorennummer M und die Größe der Schreibdaten L, um die Schreibdaten, die in der definierten Warteschlange gehalten werden, in der Plattenvorrichtung wie in Fig. 5(c) gezeigt zu speichen. Die Größe der Schreibdaten ist ein Vielfaches von 512 Bytes. Beispielsweise weist die Anfragenstruktur 3 die Schreibdaten von 2 · 512 Bytes auf.
  • Wird eine nächste Prüfpunktoperation durchgeführt, wird die nächste Anfragenzeigerinformation der Anfragenstruktur 3 gewechselt, um eine Anfragenstruktur 4 aufzuzeigen. Die nächste Anfragenzeigerinformation einer Anfragenstruktur 5 bleibt unverändert. Der Steuerungsblock der undefinierten Warteschlange weist ebenso Mittel zur Verwaltung der Anfragenstruktur 4 auf, bis eine nächste Prüfpunktoperation durchgeführt wird. Der Steuerblock der undefinierten Warteschlange verwaltet nicht die Anfragenstruktur 4, nachdem die nächste Prüfpunktoperation durchgeführt ist.
  • Als nächstes wird eine Schreiboperation auf die Platte unter Bezugnahme auf die Fig. 3 erläutert. Das Plattenschreibmittel sucht die definierte Warteschlange zu der Anfragenstruktur, wo eine Schreibmarkierung noch nicht gesetzt worden ist (S100 in Fig. 5(b)). Das Plattenschreibmittel bekommt nach und nach die Anzahl der Anfragenstrukturen, die Größe der Schreibdaten und die Steuerungsinformation auf der Anfragenstruktur des Steuerungsblockes. Als nächstes setzt das Plattenschreibmittel die Schreibmarkierung der Anfragenstruktur 1, von der die Markierung noch nicht gesetzt worden ist, durch den Steuerungsblock der definierten Warteschlange (S100 in Fig. 5(b)). Das Plattenschreibmittel speichert die Schreibdaten auf der Platte gemäß der Anfragenstruktur 1 (S130 in Fig. 5(b)). Endet der Schreibprozeß der Platte, entfernt das Plattenschreibmittel die Anfragenstruktur 1 und die damit verbundenen Daten von der Verknüpfung durch den Steuerungsblock (S150 in Fig. 5(b)). Die Schreibmarkierungen der Anfragenstrukturen 2, 3, 4 und 5 werden nacheinander auf ähnlichem Weg gesetzt. Die Schreibdaten der Anfragenstrukturen 2, 3, 4 und 5 werden auf die Platteneinrichtung geschrieben.
  • Nunmehr wird unter Bezugnahme auf die Fig. 6 bis 8 die Arbeitsweise der Erfindung erklärt, wenn ein Fehler im Computersystem auftritt.
  • Wie in Fig. 8 gezeigt, speichert eine Plattenschreibanfrage aus dem Betriebssystem nach und nach Schreibanfragen und Schreibdaten A, B und C in die undefinierte Warteschlange des nichtflüchtigen Speichers (Punkt 1 in Fig. 8). Das Betriebssystem liest die Daten C aus der undefinierten Warteschlange in den nichtflüchtigen Speicher (Punkt 2 in Fig. 8). Während der nächsten Prüfpunktoperation, wie in Fig. 8 gezeigt, werden unter einer solchen Bedingung A, B und C, die in einer undefinierten Warteschlange des nichtflüchtigen Speichers gespeichert worden sind, zu einer definierten Warteschlange (CKP Punkt in Fig. 8) verknüpft. Ebenso werden eine Plattenschreibanfrage und Schreibdaten aus dem Betriebssystem, die nach dem letzten Prüfpunkt generiert worden sind, mit der undefinierten Warteschlange verknüpft.
  • Anschließend werden nach und nach die Schreibanfrage und die Schreibdaten D, E und F in der undefinierten Warteschlange des nichtflüchtigen Speichers verknüpft (Punkt 3 in Fig. 8). Eine Plattenleseanfrage aus dem Betriebssystem liest die Daten F aus der undefinierten Warteschlange und die Daten C aus der definierten Warteschlange in den nichtflüchtigen Speicher (Punkt 4 in Fig. 8).
  • Es wird angenommen, daß ein Fehler im Computersystem nach dem Prüfpunkt (Breakdown Punkt in Fig. 8) auftrat. Die drei Schreibanfragen von 6d-6f (D, E und F) wurden in der undefinierten Warteschlange wie in den Fig. 6 und 8 gezeigt gespeichert. Die drei Schreibanfragen von 6a-6c (A, B und C) wurden in der definierten Warteschlange wie in den Fig. 6 und 8 gezeigt gespeichert.
  • In diesem Fall stellt das erfindungsgemäße Computersystem das Computersystem zu einem Zustand des letzten Prüfpunktes (CKP Punkt in Fig. 8) wieder her. Das Computersystem beginnt nach dem erneuten Speicherungsprozeß vom Prüfpunktstatus aus erneut zu starten.
  • Wird das Computersystem erneut gestartet, verwirft das Plattensteuerungssystem all die Schreibanfragen 6d- 6f, die in der undefinierten Warteschlange des nichtflüchtigen Speichers gespeichert waren, mittels der Schreibanfragenverwerfungsmittel (S17 in Fig. 9(a)). Die Schreibanfragen 6d-6f und die damit verbundenen Daten werden wieder ausgegeben, da das System vom letzten Prüfpunktstatus, wie oben erwähnt, aus erneut startet.
  • Fig. 7 stellt den Status des nichtflüchtigen Speichers nach diesem Wiedergewinnungsverfahren dar.
  • Auf der einen Seite sind die in der definierten Warteschlange im nichtflüchtigen Speicher gespeicherten Schreibanfragen 6a-6c wirksam, selbst dann, wenn der Status des Computersystems zurückrollt. Aus diesem Grund werden die Plattenschreibanfragen 6ä-6c sauber auf der Platteneinrichtung mittels des Plattenschreibmittels (S19 in Fig. 9(b) gespeichert.
  • Als ein Ergebnis davon wird die Konsistenz der Plattenoperationen aufrechterhalten unter Steuerung des Prüfpunktverfahrens mit Hilfe dieses wiederherstellbaren Plattensteuerungssystems. Darüber hinaus kann die Verzögerung des Plattenschreibens gemäß dem Prüfpunktverfahren ausgeschlossen werden. Aus diesem Grund kann die Latenz des Plattenzugriffes verbessert werden.
  • Als nächstes wird eine Leseanfrage aus dem Betriebssystem unter Bezugnahme der Fig. 8 und 9 erläutert.
  • Zu diesem Zeitpunkt entscheidet das Plattensteuerungssystem, ob aus dem nichtflüchtigen Speicher (S21 in Fig. 9(c)) zu lesende Daten vorhanden sind. Sind solche auszulesenden Daten (Ja von S21 in Fig. 9(c)) vorhanden, werden die Daten aus dem nichtflüchtigen Speicher (Punkte 2 und 4 in den Fig. 8 und S25 in Fig. 9(c)) gelesen. Nach diesem Schritt endet die Leseverarbeitung.
  • Sind auf der anderen Seite keine aus dem nichtflüchtigen Speicher (Nein von S21 in Fig. 9(c)) auszulesende Daten vorhanden, greift das Plattensteuerungssystem auf die Platteneinrichtung zu (S23 in Fig. 9(c)) zu. An diesem Punkt wird empfohlen, daß die aus der Platteneinrichtung zu lesenden Daten, die im nichtflüchtigen Speicher gespeichert werden sollen, vorhanden sind.
  • Wie oben im Detail erläutert, kann die Erfindung eine Schreibanfrage in die definierte Warteschlange des nichtflüchtigen Speichers gespeichert haben, wenn ein Fehler im Sytem auftritt. Die Schreibanfrage, die vor der letzten Prüfpunktoperation generiert worden ist, wird durchgeführt. Darüber hinaus speichert die Erfindung eine Schreibanfrage in die undefinierte Warteschlange des nichtflüchtigen Speichers, wobei die Schreibanfrage, die nach dem letzten Prüfpunkt generiert worden ist, nach dem nächsten Prüfpunkt durchgeführt wird. Sogar wenn beispielsweise ein Netzteilfehler im Computersystem auftritt, wird die Information der Schreibanfrage aufrechterhalten, da die Information der Schreibanfrage im nichtflüchtigen Speicher gespeichert ist.
  • Das Plattensteuerungssystem der Erfindung verbietet all die Schreibanfragen und die nach dem letzten Prüfpunkt generierten Schreibdaten, die in der undefinierten Warteschlange des nichtflüchtigen Speichers gespeichert worden sind. Die Daten werden jedoch in die definierte Warteschlange auf die Platteneinrichtung geschrieben. Selbst wenn das Computersystem aufgrund eines Netzteilfehlers zusammenbricht, werden die Schreibdaten aus diesem Grund in die definierte Warteschleife auf die Platteneinrichtung auf den Reboot des Computersystems geschrieben.
  • Gleichzeitig mit der Verarbeitung der Schreibanfragen aus dem Betriebssystem werden Schreibdaten, die vor dem letzten Prüfpunkt generiert worden sind, auf der Platteneinrichtung gespeichert.
  • Darüber hinaus untersucht das Plattensteuerungssystem der Erfindung zunächst - wie für eine Leseabfrage auf die Platteneinrichtung -, ob die angefragten Daten sich im nichtflüchtigen Speicher befinden, so daß die Leseanfrage die Kohärenz, wie ein normaler Zugriff auf die Platteneinrichtung, beibehält.
  • Als ein Ergebnis davon kann das Plattensteuerungssystem der Erfindung Fehlertoleranzen des Computersystems absichern. Das Plattensteuerungssystem der Erfindung kann die Latenz des Plattenzugriffes verbessern unter Vermeidung einer aus einer Prüfpunktdurchführung resultierenden Verzögerung.
  • Verschiedene Modifikationen und Variationen der vorliegenden Erfindung sind im Lichte der obigen Lehren möglich. Daher ist dies alles dahingehend zu verstehen, daß innerhalb des Schutzbereiches der anhängigen Ansprüche die vorliegende Erfindung auf eine andere als die hier spezifisch beschriebene durchgeführt werden kann.

Claims (20)

1. Ein Computersystem, das periodisch eine Prüfpunktoperation ausführt, wobei das System von dem letzten Prüfpunkt, der vor einem Fehler darin auftritt, neu startet, wobei das System eine Platteneinrichtung (4) zum Speichern von in dem System zu verarbeitenden Daten und ein Betriebssystem (15) zum Ausgeben einer Schreibanfrage an die Platteneinrichtung aufweist, dadurch gekennzeichnet, daß
die genannte Platteneinrichtung zum Lesen und Speichern von Daten vorgesehen ist;
das genannte Betriebssystem zum Ausgeben einer Schreib- oder einer Leseanfrage an die Platteneinrichtung vorgesehen ist und das System ferner aufweist:
einen nichtflüchtigen Speicher (3);
Schreibanfragenspeichermittel (11) zum Speichern von Schreibdaten und einer zugehörigen Schreibanfrage in den nichtflüchtigen Speicher; und
Plattenschreibmittel (14) zum Speichern der in dem nichtflüchtigen Speicher gespeicherten Daten durch die Schreibanfragenspeichermittel in die Platteneinrichtung, wobei die Plattenschreibmittel ferner Mittel zum Speichern von Schreibdaten entsprechend der Schreibanfrage aufweisen, die vor dem letzten Prüfpunkt von dem nichtflüchtigen Speicher zu der Platteneinrichtung erzeugt worden ist.
2. Das Computersystem nach Anspruch 1, dadurch gekennzeichnet, daß das System ferner Mittel aufweist zum Melden einer Beendigung des Schreibens an das Betriebssystem nach dem Speichern der Schreibanfrage und der zugehörigen Schreibdaten in den nichtflüchtigen Speicher, wenn eine Schreibanfrage von dem Betriebssystem an die Platteneinrichtung ausgegeben wird.
3. Ein Computersystem nach Anspruch 1, dadurch gekennzeichnet, daß das System ferner aufweist:
Mittel zum Lesen der Schreibdaten aus dem nichtflüchtigen Speicher, falls sich die entsprechenden Daten in dem nichtflüchtigen Speicher befinden, wenn das Betriebssystem eine Leseanfrage an die Platteneinrichtung ausgibt; und
Mittel zum Lesen der Schreibdaten aus der Platteneinrichtung, falls sich die entsprechenden Daten nicht in dem nichtflüchtigen Speicher befinden.
4. Das Computersystem nach Anspruch 1, dadurch gekennzeichnet, daß das System ferner Schreibanfragenverwerfmittel (13) aufweist zum Ungültigmachen der Schreibdaten- und zugehöriger Schreibanfragen, die nach dem letzten Prüfpunkt erzeugt wurden, wenn ein Fehler in dem System aufgetreten ist.
5. Das Computersystem nach Anspruch 1, dadurch gekennzeichnet, daß das Schreibanfragenspeichermittel eine unbestimmte Warteschlange (31) zum Speichern einer Schreibanfrage, die nach dem letzten Prüfpunkt erzeugt wurde, und eine bestimmte Warteschlange (32) zum Speichern einer Schreibanfrage, die vor dem letzten Prüfpunkt erzeugt wurde, aufweist.
6. Das Computersystem nach Anspruch 5, dadurch gekennzeichnet, daß das System ferner Schreibanfragenfixiermittel (12) aufweist zum Verschieben der in der unbestimmten Warteschlange gespeicherten Schreibdaten in die bestimmte Warteschlange, während eine Prüfpunktoperation ausgeführt wird.
7. Das Computersystem nach Anspruch 5, dadurch gekennzeichnet, daß das Schreibanfragenspeichermittel Mitgel zum Speichern der Schreibanfrage und der zugehörigen Schreibdaten in der unbestimmten Warteschlange aufweist.
8. Das Computersystem nach Anspruch 5, dadurch gekennzeichnet, daß das Plattenschreibmittel Mittel zum Speichern der in der bestimmten Warteschlange gespeicherten Schreibdaten in der Platteneinrichtung aufweist.
9. Das Computersystem nach Anspruch 5, dadurch gekennzeichnet, daß das System Mittel aufweist, die alle in der bestimmten Warteschlange gespeicherten Schreibdaten in die. Platteneinrichtung schreibt en, während das Computersystem neu bootet.
10. Das Computersystem nach Anspruch 5, dadurch gekennzeichnet, daß die unbestimmte und die bestimmte Warteschlange Steuerblockmittel aufweisen zum Steuern jeweils der Schreibdaten und der zugehörigen Schreibanfrage, wobei die Schreibdaten jeweils eine Anfragestruktur zum Verbinden der Schreibdaten und der nächsten Anfragestruktur aufweisen.
11. Das Computersystem nach Anspruch 10, dadurch gekennzeichnet, daß die Anfragestruktur ein Schreibflag aufweist zum Anzeigen, daß der Schreibvorgang auf die Platteneinrichtung ausgeführt wird.
12. Das Computersystem nach Anspruch 11, dadurch gekennzeichnet, daß das Plattenschreibmittel aufweist:
Mittel zum Detektieren, ob ein Schreibflag der Anfragestruktur gesetzt ist oder nicht;
Mittel zum Setzen des Schreibflags, falls das Schreibflag nicht gesetzt ist;
Mittel zum Speichern von Schreibdaten der bestimmten Warteschlange auf der Platteneinrichtung, basierend auf einer Information der Anfragestruktur; und
Mittel zum Entfernen der Anfragestruktur und der zugehörigen Schreibdaten, wenn das Schreiben der Daten auf die Platteneinrichtung beendet ist.
13. Ein Verfahren zum Steuern eines Plattenzugriffs in einem Computersystem, das periodisch eine Prüfpunktoperation ausführt, wobei das System von dem letzten Prüfpunkt vor einem Fehler, der darin aufgetreten ist, neu startet, wobei das System eine Platteneinrichtung zum Speichern von in dem System zu verarbeitenden Daten und ein Betriebssystem zum Ausgeben einer Schreibanfrage an die Platteneinrichtung aufweist, dadurch gekennzeichnet, daß das Verfahren folgende Schritte aufweist:
Erstes Speichern (S10) von Schreibdaten und einer zugehörigen Schreibanfrage von dem genannten Betriebssystem an die genannte Platteneinrichtung in einem nichtflüchtigen Speicher (3);
zweites Speichern (S17, S130) der in dem nichtflüchtigen Speicher (3) gespeicherten Schreibdaten in die genannte Platteneinrichtung (4), wobei der zweite Speicherschritt den Schritt des Speicherns der vor dem letzten Prüfpunkt erzeugten Schreibdaten aus dem nichtflüchtigen Speicher (3) in die Platteneinrichtung (4) umfaßt.
14. Das Verfahren nach Anspruch 13, das ferner den Schritt des Meldens (S13) einer Beendigung des Schreibens an das Betriebssystem aufweist, nachdem die Schreibdaten und die zugehörige Schreibanfrage in den nichtflüchtigen Speicher geschrieben sind, wenn eine Schreibanfrage von dem Betriebssystem an die Platteneinrichtung ausgegeben wird.
15. Das Verfahren nach Anspruch 13, das ferner folgende Schritte aufweist:
Erstes Lesen (S21, S25) der Schreibdaten aus dem nichtflüchtigen Speicher, wenn erfaßte Schreibdaten unter den in dem nichtflüchtigen Speicher gespeicherten Schreibdaten sind, wenn das Betriebssystem eine Leseanfrage an die Platteneinrichtung ausgibt und
zweites Lesen (S21, S23) der Schreibdaten von der Platteneinrichtung, wenn unter den in dem nichtflüchtigen Speicher (3) gespeicherten Schreibdaten nicht erfaßte Schreibdaten sind.
16. Das Verfahren nach Anspruch 13, das ferner den Schritt des Ungültigmachens (S17) aller Schreibdaten und der korrespondierenden Schreibanfragen umfaßt, die nach dem letzten Prüfpunkt erzeugt worden sind, wenn ein Fehler aufgetreten ist.
17. Das Verfahren nach Anspruch 13, wobei der nichtflüchtige Speicher eine unbestimmte Warteschlange (31) zum Speichern von Schreibdaten und der zugehörigen Schreibanfrage, die nach dem letzten Prüfpunkt erzeugt wurden, und eine bestimmte Warteschlange (32) zum Speichern von Schreibdaten, die vor dem letzten Prüfpunkt erzeugt wurden, auf der Platteneinrichtung umfaßt, wobei das Verfahren ferner den Schritt des Verschiebens (S15) der Schreibanfrage und Schreibdaten, die in der unbestimmten Warteschlange gespeichert sind, in eine bestimmte Warteschlange aufweist, während eine Prüfpunktoperation ausgeführt wird.
18. Das Verfahren nach Anspruch 13, wobei der nichtflüchtige Speicher eine unbestimmte Warteschlange (31) zum Speichern von Schreibdaten und der zugehörigen Schreibanfrage, die nach dem letzten Prüfpunkt erzeugt wurde, und eine bestimmte Warteschlange (32) zum Speichern von Schreibdaten, die vor dem letzten Prüfpunkt erzeugt wurden, in der Platteneinrichtung aufweist, wobei der zweite Speicherschritt den Schritt des Speicherns (S17) der in der bestimmten Warteschlange gespeicherten Schreibdaten in der Platteneinrichtung umfaßt.
19. Das Verfahren nach Anspruch 13, wobei der nichtflüchtige Speicher eine unbestimmte Warteschlange (31) zum Speichern von Schreibdaten und der zugehörigen Schreibanfrage, die nach dem letzten Prüfpunkt erzeugt wurden, und eine bestimmte Warteschlange (32) zum Speichern von Schreibdaten und der zugehörigen Schreibanfrage, die vor dem letzten Prüfpunkt erzeugt wurden, in der Platteneinrichtung aufweist, wobei das Verfahren ferner den Schritt des Speicherns (S19) aller Schreibdaten, die in der bestimmten Warteschlange gespeichert sind, in die Platteneinrichtung aufweist, während sich das Computersystem wiederherstellt.
20. Das Verfahren nach Anspruch 13, wobei der nichtflüchtige Speicher eine unbestimmte Warteschlange (31) zum Speichern aller Schreibdaten und der zugehörigen Schreibanfrage, die nach dem letzten Prüfpunkt erzeugt wurden, aufweist, wobei der erste Speicherschritt den Schritt des Verwerfens (S17) der Schreibdaten und der Schreibanfragen in der unbesdtimmten Warteschlange nach dem Auftreten eines Fehlers aufweist.
DE69622647T 1995-06-19 1996-04-26 Wiederherstellbares Plattensteuersystem mit nichtflüchtigem Speicher Expired - Fee Related DE69622647T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7151737A JPH096546A (ja) 1995-06-19 1995-06-19 ディスク制御システム

Publications (2)

Publication Number Publication Date
DE69622647D1 DE69622647D1 (de) 2002-09-05
DE69622647T2 true DE69622647T2 (de) 2003-04-24

Family

ID=15525196

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69622647T Expired - Fee Related DE69622647T2 (de) 1995-06-19 1996-04-26 Wiederherstellbares Plattensteuersystem mit nichtflüchtigem Speicher

Country Status (6)

Country Link
US (1) US5752268A (de)
EP (1) EP0751462B1 (de)
JP (1) JPH096546A (de)
KR (1) KR100238925B1 (de)
CN (1) CN1130641C (de)
DE (1) DE69622647T2 (de)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09330237A (ja) * 1996-06-07 1997-12-22 Toshiba Corp プロセス切り替え装置およびプロセス切り替え方法
US6016553A (en) * 1997-09-05 2000-01-18 Wild File, Inc. Method, software and apparatus for saving, using and recovering data
US6732293B1 (en) 1998-03-16 2004-05-04 Symantec Corporation Method, software and apparatus for recovering and recycling data in conjunction with an operating system
US6094605A (en) * 1998-07-06 2000-07-25 Storage Technology Corporation Virtual automated cartridge system
US7065540B2 (en) 1998-11-24 2006-06-20 Oracle International Corporation Managing checkpoint queues in a multiple node system
US7055055B1 (en) 1999-04-23 2006-05-30 Symantec Corporation Write cache flushing method for reducing data corruption
AU6081200A (en) 1999-07-09 2001-01-30 Eric D. Schneider Optimized disk storage defragmentation with swapping capabilities
US7051055B1 (en) 1999-07-09 2006-05-23 Symantec Corporation Optimized disk storage defragmentation with swapping capabilities
US6594780B1 (en) * 1999-10-19 2003-07-15 Inasoft, Inc. Operating system and data protection
US7337360B2 (en) * 1999-10-19 2008-02-26 Idocrase Investments Llc Stored memory recovery system
MXPA02004748A (es) * 1999-11-10 2004-01-19 Thomson Licensing Sa Un metodo para la recuperacion de desastre para un medio de disco de re-escritrua.
JP4242155B2 (ja) * 2001-03-07 2009-03-18 オラクル・インターナショナル・コーポレイション 永続的記憶装置へのダーティデータ項目の書込を調整するための方法、当該方法をコンピュータに行なわせるためのプログラムを格納したコンピュータ読出可能な媒体、および、永続的記憶装置へのダーティデータ項目の書込を調整するための装置
US7058849B2 (en) * 2002-07-02 2006-06-06 Micron Technology, Inc. Use of non-volatile memory to perform rollback function
US7827362B2 (en) 2004-08-24 2010-11-02 Symantec Corporation Systems, apparatus, and methods for processing I/O requests
US7730222B2 (en) 2004-08-24 2010-06-01 Symantec Operating System Processing storage-related I/O requests using binary tree data structures
US7409587B2 (en) 2004-08-24 2008-08-05 Symantec Operating Corporation Recovering from storage transaction failures using checkpoints
US7725760B2 (en) 2003-09-23 2010-05-25 Symantec Operating Corporation Data storage system
US7991748B2 (en) 2003-09-23 2011-08-02 Symantec Corporation Virtual data store creation and use
US7296008B2 (en) 2004-08-24 2007-11-13 Symantec Operating Corporation Generation and use of a time map for accessing a prior image of a storage device
US7287133B2 (en) 2004-08-24 2007-10-23 Symantec Operating Corporation Systems and methods for providing a modification history for a location within a data store
US7577806B2 (en) 2003-09-23 2009-08-18 Symantec Operating Corporation Systems and methods for time dependent data storage and recovery
US7904428B2 (en) 2003-09-23 2011-03-08 Symantec Corporation Methods and apparatus for recording write requests directed to a data store
US7631120B2 (en) 2004-08-24 2009-12-08 Symantec Operating Corporation Methods and apparatus for optimally selecting a storage buffer for the storage of data
US7239581B2 (en) 2004-08-24 2007-07-03 Symantec Operating Corporation Systems and methods for synchronizing the internal clocks of a plurality of processor modules
US7577807B2 (en) 2003-09-23 2009-08-18 Symantec Operating Corporation Methods and devices for restoring a portion of a data store
JP4189342B2 (ja) * 2004-03-11 2008-12-03 東芝ソリューション株式会社 ストレージ装置、ストレージコントローラ及びライトバックキャッシュ制御方法
US20060051157A1 (en) * 2004-09-09 2006-03-09 International Business Machines Corporation Systems, methods, and media for backing up a computer system
US7949665B1 (en) 2004-11-19 2011-05-24 Symantec Corporation Rapidly traversing disc volumes during file content examination
CN103927238B (zh) 2005-10-14 2017-04-12 塞门铁克操作公司 一种在数据存储器中用于时间线压缩的技术
US9841920B2 (en) * 2011-12-29 2017-12-12 Intel Corporation Heterogeneous memory die stacking for energy efficient computing

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0163096B1 (de) * 1984-04-26 1988-11-17 BBC Brown Boveri AG Einrichtung zur Rettung eines Rechnerzustandes
JP2830218B2 (ja) * 1989-11-22 1998-12-02 株式会社日立製作所 キャッシュ付ディスク制御装置の障害処理方法
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
US5291600A (en) * 1991-10-23 1994-03-01 At&T Bell Laboratories Recovery of in-core disk data
JPH05189314A (ja) * 1992-01-08 1993-07-30 Hitachi Ltd ディスクキャッシュ制御方式
DE4217830C2 (de) * 1992-05-29 1996-01-18 Francotyp Postalia Gmbh Verfahren zum Betreiben einer Datenverarbeitungsanlage
JPH0628108A (ja) * 1992-07-09 1994-02-04 Hitachi Ltd データ記憶システム
US5421003A (en) * 1992-09-17 1995-05-30 International Business Machines Corporation Disk storage system with fault tolerant media maintenance
JPH06324941A (ja) * 1993-05-14 1994-11-25 Nippon Telegr & Teleph Corp <Ntt> 再開処理方法
US5535381A (en) * 1993-07-22 1996-07-09 Data General Corporation Apparatus and method for copying and restoring disk files
US5555391A (en) * 1993-12-23 1996-09-10 Unisys Corporation System and method for storing partial blocks of file data in a file cache system by merging partial updated blocks with file block to be written
US5588110A (en) * 1995-05-23 1996-12-24 Symbios Logic Inc. Method for transferring data between two devices that insures data recovery in the event of a fault

Also Published As

Publication number Publication date
US5752268A (en) 1998-05-12
EP0751462A1 (de) 1997-01-02
EP0751462B1 (de) 2002-07-31
KR970002591A (ko) 1997-01-28
CN1130641C (zh) 2003-12-10
JPH096546A (ja) 1997-01-10
CN1145488A (zh) 1997-03-19
KR100238925B1 (ko) 2000-01-15
DE69622647D1 (de) 2002-09-05

Similar Documents

Publication Publication Date Title
DE69622647T2 (de) Wiederherstellbares Plattensteuersystem mit nichtflüchtigem Speicher
DE69311952T2 (de) Verfahren und System zur inkrementalen Datensicherung
DE112010004947B4 (de) Wiederherstellung einer vollständigen Systemsicherung und inkrementeller Sicherungen unter Verwendung von mehreren gleichzeitigen Datenströmen von Einheiten
DE69937768T2 (de) Externe Speichervorrichtung und Verfahren zur Datensicherung
DE3788444T2 (de) Verfahren zum Wiederanlauf einer langlaufenden fehlertoleranten Operation in einem transaktionsorientierten Datenbasissystem.
DE69712689T2 (de) Prüfpunktrechnersystem
DE4220198C2 (de) Transaktionsverarbeitungsverfahren für einen digitalen Computer und Transaktionsverarbeitungssystem
DE19882853B3 (de) Verfahren und Steuereinrichtung zum automatischen Korrigieren von in einem Speichersubsystem erfassten Fehlern und Computersystem, das eine solche Steuereinrichtung aufweist
DE69621270T2 (de) Cache-Speichersteuervorrichtung und Methode
DE69516538T2 (de) Speicherung von rechnerdaten
DE69111635T2 (de) Gerät und Verfahren zur Background-Speicherprüfung während des Systemanlaufs.
DE602004002216T2 (de) Verfahren, system und programm für eine inkrementelle virtuelle kopie
DE69434381T2 (de) Verfahren zur Paritätsdarstellung in einem Raid-Untersystem unter Verwendung eines nichtflüchtigen Speichers
DE69703181T2 (de) Registrierdateioptimierung in einem Client/Server-Rechnersystem
DE69130279T2 (de) On-line Wiederherstellung eines fehlerhaften redundanten Gruppensystems
DE69802294T2 (de) Systemen zur datensicherung und -rückgewinnung
DE69604882T2 (de) Einzeltransaktionsverfahren für ein Dateiensystem mit Logging-Möglichkeit in einem Rechnerbetriebssytem
DE3784190T2 (de) Eintragung eines datenbasisindex in das journal zur verbesserten rueckstellung.
DE69030024T2 (de) Verfahren zur Herstellung einer Duplikation von einer Datenbank
DE68922431T2 (de) Datenbasiserholung in einem Rechnersystem nach einem Systemabsturz.
DE69631106T2 (de) On-line-Rekonfiguration einer Speicherplattenanordnung
DE69330319T2 (de) Verfahren und System für Datenspeicher-Formatumwandlung, Daten-Zugriffsverfahren und Steuergerät
DE69312781T2 (de) Verfahren und System zum Seitendatei Statusabrufen in einem Nullzeittyp Sicherungskopieprozess
DE69700512T2 (de) Ereignisbenachrichtigung in einem Rechnersystem mit einer Mehrzahl von Speichergeräten
DE68927705T2 (de) Verfahren zum Entfernen unbestätigter Änderungen an gespeicherten Daten durch ein Datenbankverwaltungssystem

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)
8339 Ceased/non-payment of the annual fee