DE102005024673A1 - Einrichtung, Verfahren und Computerprodukt für Plattenverwaltung - Google Patents

Einrichtung, Verfahren und Computerprodukt für Plattenverwaltung Download PDF

Info

Publication number
DE102005024673A1
DE102005024673A1 DE102005024673A DE102005024673A DE102005024673A1 DE 102005024673 A1 DE102005024673 A1 DE 102005024673A1 DE 102005024673 A DE102005024673 A DE 102005024673A DE 102005024673 A DE102005024673 A DE 102005024673A DE 102005024673 A1 DE102005024673 A1 DE 102005024673A1
Authority
DE
Germany
Prior art keywords
data
disk
writing
application
buffer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE102005024673A
Other languages
English (en)
Inventor
Toshihide Kawasaki Yanagawa
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of DE102005024673A1 publication Critical patent/DE102005024673A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Debugging And Monitoring (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

Eine Plattenverwaltungseinrichtung (100) verwaltet das Schreiben von Daten auf mehrere Platten (210, 220). Die Plattenverwaltungseinrichtung weist eine Anwendung (110) und einen Puffer (120) auf. In mehreren Speichereinheiten werden vorübergehend die gleichen Daten, welche im Puffer vorhanden sind, gespeichert, und eine Schreibeinheit schreibt die Daten, welche in Speichereinheiten vorhanden sind, auf entsprechende Platten. Wenn Daten erfolgreich auf eine der Platten geschrieben wurden oder wenn vorher festgelegte Zeit vorübergeht, teilt eine Mitteilungseinheit (150e) der Anwendung mit, ob die Daten erfolgreich auf die Platten geschrieben wurden.

Description

  • Die vorliegende Erfindung bezieht sich auf ein Verfahren zum Verwalten des Schreibens von Daten auf eine Platte.
  • Anwendungen in Computern führen Spiegelung durch, um einen Datenverlust, wenn Daten geschrieben werden, zu vermeiden. Die Spiegelung kann durch Speichern der gleichen Daten in mehreren Platteneinrichtungen durchgeführt werden, so dass, wenn Daten von einer Platteneinrichtung verloren werden, diese von einer anderen Platteneinrichtung wiedergewonnen werden können.
  • Das Problem mit Spiegelung ist jedoch, dass die Anwendung nicht sich zur nächsten Verarbeitung bewegen kann, wenn das Datenschreiben in alle Platteneinrichtungen nicht beendet ist.
  • Beispielsweise können Daten nicht geschrieben werden, wenn es einen Fehler in einer Platteneinrichtungen gibt, oder das Datenschreiben wird verzögert, wenn es einen Fehler in der Verdrahtung gibt, die die Platteneinrichtung und den Computer verbindet. In diesem Fällen wartet die Anwendung, bis das Datenschreiben beendet ist oder ein Schreibfehler mitgeteilt wird. Daher nimmt es beträchtlich viel Zeit für die Verarbeitung in Anspruch, um zu beenden.
  • Die japanische offengelegte Patentanmeldung Nr. H11-53 120 offenbart ein Verfahren, um dieses Problem zu überwinden. Wenn insbesondere Daten auf eine Platteneinrichtung geschrieben werden und es keine Mitteilung innerhalb einer vorher festgelegten Zeitdauer von der Platteneinrichtung gibt, dass die Schreibverarbeitung beendet wurde, wird Information, dass ein Fehler aufgetreten ist, der Anwendung mitgeteilt.
  • Wenn jedoch die Schreibverarbeitung sogar etwas während der überwachten Zeitdauer weiterläuft, wird ein Schreibfehler nicht mitgeteilt. Anders ausgedrückt kann die Anwendung nicht Fehler erkennen, die bewirken, dass die Verarbeitung langsamer wird. Dieses herkömmliche Verfahren ist eine Best-Versuch-Verzögerungsüberwachungsanordnung, und stellt nicht die Beendigung der Schreibverarbeitung innerhalb der vorher festgelegten Zeitdauer sicher.
  • Um eine Verzögerung zu vermeiden, wenn die Schreibverarbeitung langsamer wird, ist es unumgänglich, sicherzustellen, dass eine Antwort (d.h., Information in Bezug darauf, ob die Daten erfolgreich geschrieben wurden) der Anwendung innerhalb einer vorher festgelegten Zeitdauer mitgeteilt wird.
  • Es ist eine Aufgabe der vorliegenden Erfindung, zumindest die Probleme bei dem herkömmlichen Verfahren zu lösen.
  • Gemäß einem Merkmal der vorliegenden Erfindung weist eine Plattenverwaltungseinrichtung, welche Schreiben von Daten auf eine Platte verwaltet, eine Anwendung auf, welche Aufgaben ausführt, um das Schreiben der Daten auf die Platte zu verwalten, und einen Puffer, der vorübergehend die Daten speichert, wobei die Plattenverwaltungseinrichtung aufweist:
    eine Speichereinheit, in welcher vorübergehend die gleichen Daten gespeichert werden, die im Puffer vorhanden sind;
    eine Schreibeinheit, welche die Daten, die in der Speichereinheit vorhanden sind, auf die Platte schreibt; und
    eine Mitteilungseinheit, welche innerhalb vorher festgelegter Zeitdauer der Anwendung mitteilt, ob die Daten erfolgreich durch die Schreibeinheit auf die Platte geschrieben sind.
  • Gemäß einem anderen Merkmal der vorliegenden Erfindung weist ein Verfahren zum Verwalten von Schreiben von Daten auf eine Platte in einer Plattenverwaltungseinrichtung auf:
    eine Anwendung, die Aufgaben ausführt, um das Schreiben der Daten auf die Platte zu verwalten; und
    einen Puffer, der vorübergehend die Daten speichert, vorübergehendes Speichern der Daten, die im Puffer vorhanden sind, in einer Speichereinheit;
    Schreiben der gleichen Daten, welche in der Speichereinheit vorhanden sind, auf die Platte; und
    Mitteilen an die Anwendung innerhalb vorher festgelegter Zeitdauer, ob die Daten erfolgreich beim Schreiben auf die Platte geschrieben wurden.
  • Gemäß einen noch weiteren Merkmal der vorliegenden Erfindung wird in einem computer-lesbaren Aufzeichnungsträger ein Programm gespeichert, welches veranlasst, dass ein Computer das obige Verfahren durchführt.
  • Die anderen Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung sind insbesondere in der folgenden ausführlichen Beschreibung der Erfindung herausgestellt oder werden daraus ersichtlich, wenn diese in Verbindung mit den beiliegenden Zeichnungen gelesen wird.
  • 1 ist ein Funktionsblockdiagramm einer Plattenverwaltungseinrichtung nach einer Ausführungsform der vorliegenden Erfindung;
  • 2 ist ein Funktionsblockdiagramm einer Ansteuerung, welche in 1 gezeigt ist;
  • 3 ist ein Flussdiagramm einer Verarbeitungsprozedur, welche durch die Plattenverwaltungseinrichtung, die in 1 gezeigt ist, durchgeführt wird; und
  • 4 ist ein Funktionsblockdiagramm eines Computers, der ein Plattenverwaltungsprogramm nach der vorliegenden Erfindung ausführt.
  • Ausführungsbeispiele der vorliegenden Erfindung werden anschließend mit Hilfe der beiliegenden Zeichnungen beschrieben. Die vorliegende Erfindung ist nicht auf diese Ausführungen beschränkt.
  • Eine Plattenverwaltungseinrichtung nach der vorliegenden Erfindung führt Spiegelung durch, indem Daten in Platteneinrichtungen, wie anschließend beschrieben wird, geschrieben werden. Daten, die einem Puffer vorhanden sind, werden auf andere Speicherabschnitte in der Einrichtung kopiert, und die Daten, die auf die Speicherabschnitte kopiert sind, werden dann in die Platteneinrichtungen geschrieben. Wenn das Datenschreiben auf eine der Platteneinrichtungen beendet ist, informiert die Plattenverwaltungseinrichtung eine Anwendung, dass das Datenschreiben beendet ist.
  • Wenn die Plattenverwaltungseinrichtung keine Information innerhalb einer vorher festgelegten Zeitdauer erlangen kann, dass das Datenschreiben beendet ist oder dass ein Fehler aufgetreten ist, informiert die Plattenverwaltungseinrichtung bedingungslos die Anwendung, dass ein Fehler aufgetreten ist.
  • 1 ist ein Funktionsblockdiagramm einer Plattenverwaltungseinrichtung 100 nach einer Ausführungsform der vorliegenden Erfindung. Die Plattenverwaltungseinrichtung 100 besitzt einen Anwendungsverarbeitungsabschnitt 110, einen Datenpuffer 120, einen ersten Eingangs-/Ausgang-Puffer (I/O) 130, einen zweiten I/O-Puffer 140 und eine Ansteuerung 150.
  • Der Anwendungsverarbeitungsabschnitt 110 führt vorher festgelegte Aufgaben durch. Der Datenpuffer 120 speichert vorübergehend Daten, die auf eine Platteneinrichtung 200 zu schreiben sind oder davon zu lesen sind. Die Platteneinrichtung 200 speichert die Daten, welche von der Plattenverwaltungseinrichtung 100 empfangen werden, und besitzt eine erste Platte 210 und eine zweite Platte 220, die beide zum Speichern von Daten dienen.
  • Die Daten, welche im Datenpuffer 120 gespeichert sind, werden vorübergehend im ersten I/O-Puffer 130 und im zweiten I/O-Puffer 140 gespeichert, bevor sie in der Platteneinrichtung 200 gespeichert werden. Daher können die Daten schnell vom Datenpuffer 120 gelöst werden, ohne auf eine Information zu warten, dass das Datenschreiben auf der Platteneinrichtung 200 beendet ist.
  • 2 ist ein Funktionsblockdiagramm der Ansteuerung 150. Die Ansteuerung 150 besitzt einen Steuerabschnitt 150a, einen Schnittstellenabschnitt 150b, einen Schreib-/Lese-Verarbeitungsabschnitt 150c, einen Pufferverwaltungsabschnitt 150d und einen Anwortverarbeitungsabschnitt 150e.
  • Der Steuerabschnitt 150a steuert alle Abschnitte der Ansteuerung 150, der Schnittstellenabschnitt 150b kommuniziert mit dem Anwendungsverarbeitungsabschnitt 110, mit dem Datenpuffer 120, dem ersten I/O-Puffer 130, dem zweiten I/O-Puffer 140 und der Platteneinrichtung 200.
  • Wenn eine Mitteilung, Daten zu schreiben, vom Anwendungsverarbeitungsabschnitt 110 empfangen wird, schreibt der Schreib-/Lese-Verarbeitungsabschnitt 150c Daten, die im ersten I/O-Puffer 130 vorhanden sind, auf die erste Platte 210, und schreibt Daten, welche im zweiten I/O-Puffer 140 vorhanden sind, auf die zweite Platte 220.
  • Wenn eine Mitteilung, Daten von der Platteneinrichtung 200 zu lesen, vom Anwendungsverarbeitungsabschnitt 110 empfangen wird, liest der Schreib-/Lese-Verarbeitungsabschnitt 150c die entsprechenden Daten von der ersten Platte 210 oder der zweiten Platte 220. Die Daten, die von der ersten Platte 210 gelesen werden, werden im ersten I/O-Puffer 130 gespeichert, und die Daten, welche von der zweiten Platte 220 gelesen werden, werden im zweiten I/O-Puffer 140 gespeichert.
  • Der Pufferverwaltungsabschnitt 150d verwaltet den Datenpuffer 120, den ersten I/O-Puffer 130 und den zweiten I/O-Puffer 140. Wenn insbesondere eine Mitteilung, Daten zu schreiben, vom Anwendungsverarbeitungsabschnitt 110 empfangen wird, kopiert der Pufferverwaltungsabschnitt 150d die Daten, welche im Datenpuffer 120 vorhanden sind, auf den ersten I/O-Puffer 130 und den zweiten I/O-Puffer 140.
  • Wenn eine Mitteilung, Daten zu lesen, vom Anwendungsverarbeitungsabschnitt 110 empfangen wird, kopiert der Pufferverwaltungsabschnitt 150d die Daten, die entweder im ersten I/O-Puffer 130 oder im zweiten I/O-Puffer 140 vorhanden sind (die erfolgreich geschriebenen Daten) in den Datenpuffer 120.
  • Wenn der Anwortverarbeitungsabschnitt 150e von der Platteneinrichtung 200 Information erlangt, ob Daten erfolgreich geschrieben wurden (hier anschließend als "Schreibinformation" bezeichnet), teilt der Anwortverarbeitungsabschnitt 150e die Schreibinformation dem Anwendungsverarbeitungsabschnitt 110 mit. Der Antwortverarbeitungsabschnitt 150e beginnt mit den Zählen, wenn die Information, Daten zu schreiben, vom Anwendungsverarbeitungsabschnitt 110 empfangen wird. Wenn Schreibinformation nicht von der Platteneinrichtung 200 innerhalb vorher festgelegter Zeitdauer erlangt wird, teilt der Antwortverarbeitungsabschnitt 150e bedingungslos einen Fehler dem Anwendungsverarbeitungsabschnitt 10 mit.
  • Wenn eine Mitteilung, dass Daten erfolgreich auf eine Platte geschrieben wurden, empfangen wird, wird eine weitere Mitteilung, dass die gleichen Daten erfolgreich auf eine andere Platte geschrieben wurden, nachfolgend innerhalb einer vorher festgelegten Zeitdauer empfangen wird, informiert der Antwortverarbeitungsabschnitt 150e den Anwendungsverarbeitungsabschnitt 110 nicht von der ersten Schreibinformation.
  • Beispielsweise sei angenommen, dass eine Mitteilung, dass Daten erfolgreich auf die erste Platte 210 geschrieben wurden, empfangen wird, und eine weitere Mitteilung, dass die gleichen Daten erfolgreich auf die zweite Platte 220 geschrieben wurden, nachfolgend empfangen wird. In diesem Fall teilt der Antwortverarbeitungsabschnitt 150e die Schreibinformation in Bezug auf die erste Platte 210 nicht dem Anwendungsverarbeitungsabschnitt 110 mit, sondern teilt die Schreibinformation in Bezug auf die zweite Platte 220 dem Anwendungsverarbeitungsabschnitt 110 mit.
  • Wenn außerdem zwei Sätze an Schreibinformation für die gleichen Daten nacheinander empfangen werden, und die letztere Information in Bezug auf nichterfolgreiches Schreiben ist, teilt der Antwortverarbeitungsabschnitt 150e lediglich die Information über erfolgreiches Schreiben dem Anwendungsverarbeitungsabschnitt 110 mit.
  • Wenn beispielsweise das Datenschreiben auf die erste Platte 210 erfolgreich ist und das Datenschreiben auf die zweite Platte 220 nicht erfolgreich ist, teilt der Antwortverarbeitungsabschnitt 150e dem Anwendungsverarbeitungsabschnitt 110 mit, dass das Datenschreiben erfolgreich beendet ist.
  • 3 ist ein Flussdiagramm einer Verarbeitungsprozedur, welche durch die Plattenverwaltungseinrichtung 100 durchgeführt wird. Der Anwendungsverarbeitungsabschnitt 110 speichert Daten im Datenpuffer 120 (Schritt S101), und die Systemsteuerung verschiebt diese zur Ansteuerung 150 (Schritt S102).
  • Die Ansteuerung 150 schreibt die Daten, die im Datenpuffer 120 vorhanden sind, in sowohl den ersten I/O-Puffer 130 als auch in den zweiten I/O-Puffer 140 (Schritt S103), und schreibt die Daten, welche im ersten I/O-Puffer 130 vorhanden sind, auf die erste Platte 210 (Schritt S104). Die erste Platte 210 und die zweite Platte 220 senden Schreibinformation zur Ansteuerung 150, wenn die Daten erfolgreich auf die jeweiligen Platten geschrieben sind.
  • Anschließend bestimmt die Ansteuerung 150, ob die Daten erfolgreich auf die erste Platte 210 geschrieben sind, auf der Basis, ob die Schreibinformation von der ersten Platte 210 empfangen wurde (Schritt S105). Wenn die Ansteuerung 150 bestimmt, dass das Datenschreiben nicht erfolgreich war (NEIN im Schritt S106), wird ein Fehler im Steuerabschnitt 150a der Ansteuerung 150 gespeichert (Schritt S107).
  • Wenn dagegen die Ansteuerung 150 bestimmt, dass das Datenschreiben erfolgreich war (JA im Schritt S106), läuft die Systemsteuerung weiter zum Schritt S108.
  • Im Schritt S108 schreibt die Ansteuerung 150 die Daten, die in dem zweiten I/O-Puffer 140 vorhanden sind, auf die zweite Platte 220, und bestimmt, ob die Daten erfolgreich auf die zweite Platte 220 geschrieben wurden, auf der Basis, ob Schreibinformation von der zweiten Platte 220 empfangen wurde (Schritt S109). Wenn die Ansteuerung 1500 bestimmt, dass das Datenschreiben erfolgreich war (JA im Schritt S110), endet die Verarbeitung. Wenn die Ansteuerung 150 bestimmt, dass das Datenschreiben nicht erfolgreich war (NEIN im Schritt S110), bestimmt die Ansteuerung 150, ob das Datenschreiben auf die erste Platte 210 erfolgreich war (bezieht sich auf die Information im Schritt S107, um zu bestimmen, ob ein Fehler gespeichert wurde) (Schritt S111), und, wenn das Datenschreiben auf die erste Platte 210 erfolgreich war (JA im Schritt S112), endet die Verarbeitung. Wenn das Datenschreiben auf die erste Platte 210 nicht erfolgreich war (NEIN im Schritt S112), teilt die Ansteuerung 150 einen Fehler der Anwendung mit (Schritt S113).
  • Wenn die Ansteuerung 150 keine Schreibinformation innerhalb der vorher festgelegten Zeitdauer erlangt, nachdem Datenschreiben beginnt, wird die entsprechende Schreibverarbeitung als Fehler im Steuerabschnitt 150a gespeichert. Dieser Fehler wird gespeichert, sogar, wenn die Verarbeitungsprozeduren im Flussdiagramm von 3 nicht beendet sind.
  • Das Schreiben auf die zweite Platte 220 (Schritt S108) kann ausgeführt werden, bevor bestimmt wird, dass die Daten auf die erste Platte 210 erfolgreich geschrieben wurden (Schritt S105).
  • In der Plattenverwaltungseinrichtung 100 kopiert die Ansteuerung 150 die Daten, welche im Datenpuffer 120 vorhanden sind, sowohl in den ersten I/O-Puffer 130 als auch in den zweiten I/O-Puffer 140, schreibt die Daten, welche im ersten I/O-Puffer 130 vorhanden sind, auf die erste Platte 210, und schreibt die Daten, welche im zweiten I/O-Puffer 140 vorhanden sind, auf die zweite Platte 220. Sobald bestimmt wird, dass das Datenschreiben auf jede der Platten erfolgreich war, teilt die Ansteuerung 150 die Schreibinformation dem Anwendungsverarbeitungsabschnitt 110 mit. Damit wird eine Verzögerung in der Verarbeitung vermieden.
  • Wenn außerdem Schreibinformation nicht von der Platteneinrichtung 200 innerhalb vorher festgelegter Zeitdauer erlangt werden kann, teilt die Ansteuerung 150 einen Fehler dem Anwendungsverarbeitungsabschnitt 110 mit. Daher ist es möglich, sicherzustellen, dass eine Antwort (d.h., Information, ob die Daten erfolgreich geschrieben wurden) der Anwendung innerhalb vorher festgelegter Zeitdauer mitgeteilt wird.
  • Das Verfahren gemäß der Ausführungsform kann auf einem Computer ausgeführt werden, indem in Computerprogramm auf dem Computer ausgeführt wird. Das Computerprogramm kann auf einem computer-lesbaren Aufzeichnungsträger gespeichert sein oder von einem Server verteilt heruntergeladen werden. 4 ist ein Funktionsblockdiagramm eines Computers 30, der das Computerprogramm ausführt.
  • Der Computer 30 besitzt eine erste I/O-Puffereinrichtung 31, eine zweite I/O-Puffereinrichtung 32, eine Puffereinrichtung 33, einen Nur-Lese-Speicher (ROM) 34, eine Zentralverarbeitungseinheit (CPU) 35, und einen Bus 36, der diese Komponenten miteinander verbindet. Die erste I/O-Puffereinrichtung 31, die zweite I/O-Puffereinrichtung 32 und die Puffereinrichtung 33 entsprechen dem ersten I/O-Puffer 130, dem zweiten I/O-Puffer 140 und dem Datenpuffer 120, die in 1 entsprechend gezeigt sind.
  • Der ROM 34 speichert ein Anwendungsverarbeitungsprogramm 34a und ein Antwortverarbeitungsprogramm 34b.
  • Die CPU 35 liest die Programme 34a und 34b vom ROM 34 und führt die Programme 34a und 34b aus. Folglich arbeiten die Programme 34a und 34b wie ein Anwendungsverarbeitungsprozess 35a bzw. ein Antwortverarbeitungsprozess 35b. Der Anwendungsverarbeitungsprozess 35a entspricht dem Anwendungsverarbeitungsabschnitt 110, der in 1 gezeigt ist, und der Antwortverarbeitungsprozess 35b entspricht der Ansteuerung 150, die in 1 gezeigt ist. Die CPU 35 kopiert Daten 33a, die in der Puffereinrichtung 33 gespeichert sind, auf die erste I/O-Puffereinrichtung 31 und die zweite I/O-Puffereinrichtung 32. Die Daten, welche in der ersten I/O-Puffereinrichtung 31 und der zweiten I/O-Puffereinrichtung 32 vorhanden sind, werden in den jeweiligen Platten gespeichert.
  • Die Programme 34a und 34b müssen nicht notwendigerweise vorher im ROM 34 gespeichert sein. Alternativ können die Programme 34a und 34b auf tragbaren körperlichen Trägern, festen körperlichen Trägern oder in anderen Computern (oder Servern) gespeichert sein, so dass der Computer 30 die Programme von den Trägern liest, um die Programme auszuführen. Beispiele von tragbaren körperlichen Trägern sind flexible Platten (FDs), Compact-Disc-Nur-Lese-Speicher (CD-ROMs), magneto-optische Platten (MO), digital-vielseitig-verwendbare Platten (DVDs) und integrierte Schaltungsplatten (DC), die in Computer eingeführt werden. Das Beispiel der festen körperlichen Träger ist ein Festplattenlaufwerk (HDD), welches innerhalb oder außerhalb des Computers 30 vorgesehen ist. Die anderen Computer (oder Server) sind über öffentliche Leitungen mit dem Computer 30, dem Internet, einem lokalen Bereichsnetzwerk (LAN) oder einem Breitbandbereichs-Netzwerk (WAN) verbunden.
  • Gemäß der vorliegenden Erfindung kann sich die Anwendung auf die nächste Verarbeitung bewegen, ohne auf Beendigung der Spiegelung zu warten, so dass die Gesamteffektivität gesteigert werden kann.
  • Obwohl die Erfindung in Bezug auf eine spezielle Ausführungsform für eine vollständige und klare Offenbarung beschrieben wurde, sind die beigefügten Patentansprüche nicht dazu da, darauf beschränkt zu sein, sondern sind zu deuten, dass sie alle Modifikationen und alternativen Konstruktionen umfassen, die dem Fachmann erscheinen können, die klar innerhalb der Grundsatzlehre wie anschließend dargestellt fallen.

Claims (15)

  1. Plattenverwaltungseinrichtung (100), welche Schreiben von Daten auf eine Platte (200) verwaltet, die eine Anwendung aufweist, welche Aufgaben ausführt, um das Schreiben der Daten auf die Platte zu verwalten, und einen Puffer (120), der vorübergehend die Daten speichert, wobei die Plattenverwaltungseinrichtung aufweist: eine Speichereinheit (130, 140), in welcher vorübergehend die gleichen Daten gespeichert werden, die im Puffer vorhanden sind; eine Schreibeinheit (150c), welche die Daten, die in der Speichereinheit vorhanden sind, auf die Platte schreibt; und eine Mitteilungseinheit (150e), welche innerhalb vorher festgelegter Zeitdauer der Anwendung mitteilt, ob die Daten erfolgreich durch die Schreibeinheit auf die Platte geschrieben sind.
  2. Plattenverwaltungseinrichtung nach Anspruch 1, wobei es mehrere Speichereinheiten (130, 140) und eine gleiche Anzahl der Platten (210, 220) gibt, und die Schreibeinheit Daten, welche in einer Speichereinheit vorhanden sind, auf eine entsprechende Platte schreibt.
  3. Plattenverwaltungseinrichtung nach Anspruch 2, wobei die Mitteilungseinheit (150e) der Anwendung mitteilt, dass die Daten erfolgreich auf die Platten geschrieben wurden, wenn die Mitteilungseinheit bestimmt, dass Daten, welche auf einer der Speichereinheiten vorhanden sind, erfolgreich auf die jeweilige Platte geschrieben wurden.
  4. Plattenverwaltungseinrichtung nach Anspruch 1, wobei die Mitteilungseinheit einen Fehler an die Anwendung mitteilt, wenn die Mitteilungseinheit nicht innerhalb der vorher festgelegten Zeitdauer bestimmen kann, dass die Daten, die in der Speichereinheit vorhanden sind, erfolgreich auf die Platte geschrieben wurden.
  5. Plattenverwaltungseinrichtung nach Anspruch 2, wobei die Mitteilungseinheit einen Fehler an die Anwendung mitteilt, wenn die Mitteilungseinheit nicht innerhalb der vorher festgelegten Zeitdauer bestimmen kann, dass die Daten, welche in den Speichereinheiten vorhanden sind, erfolgreich auf die Platten geschrieben wurden.
  6. Computer-lesbarer Aufzeichnungsträger, auf dem ein Computerprogramm gespeichert ist, welches veranlasst, dass ein Computer das Schreiben von Daten auf eine Platte in der Plattenverwaltungseinrichtung verwaltet, wobei die Plattenverwaltungseinrichtung aufweist: eine Anwendung (110), welche Aufgaben ausführt, um das Schreiben der Daten auf die Platte zu verwalten; und einen Puffer, der vorübergehend die Daten speichert, wobei das Programm veranlasst, dass der Computer ausführt: vorübergehendes Speichern der gleichen Daten, die im Puffer vorhanden sind, in einer Speichereinheit; Schreiben der Daten, welche in der Speichereinheit vorhanden sind, auf die Platte; und Mitteilen der Anwendung innerhalb vorher festgelegter Zeitdauer, ob die Daten beim Schreiben auf die Platte erfolgreich geschrieben wurden.
  7. Computer-lesbarer Aufzeichnungsträger nach Anspruch 6, wobei die Plattenverwaltungseinrichtung mehrere Speichereinheiten und eine gleiche Anzahl von Platten aufweist, und das Schreiben von Schreibdaten, welche in einer Speichereinheit vorhanden sind, auf eine entsprechende Platte umfasst.
  8. Computer-lesbarer Aufzeichnungsträger nach Anspruch 7, wobei die Mitteilung das Mitteilen der Anwendung aufweist, dass die Daten erfolgreich auf die Platten geschrieben wurden, wenn bei der Mitteilung bestimmt wird, dass die Daten, welche in einer der Speichereinheiten vorhanden sind, erfolgreich auf eine entsprechende Platte geschrieben wurden.
  9. Computer-lesbarer Aufzeichnungsträger nach Anspruch 6, wobei das Mitteilen das Mitteilen eines Fehlers an die Anwendung umfasst, wenn innerhalb der vorher festgelegten Zeitdauer beim Mitteilen nicht bestimmt werden kann, dass die Daten, welche in der Speichereinheit vorhanden sind, erfolgreich auf die Platte geschrieben wurden.
  10. Computer-lesbarer Aufzeichnungsträger nach Anspruch 7, wobei das Mitteilen an die Anwendung das Mitteilen eines Fehlers umfasst, wenn innerhalb der vorher festgelegten Zeitdauer beim Mitteilen nicht bestimmt werden kann, dass die Daten, welche in den Speichereinheiten vorhanden sind, erfolgreich auf die Platten geschrieben wurden.
  11. Verfahren zum Verwalten von Schreiben von Daten auf eine Platte in einer Plattenverwaltungseinrichtung, wobei die Plattenverwaltungseinrichtung aufweist: eine Anwendung (110), die Aufgaben ausführt, um das Schreiben der Daten auf die Platte zu verwalten; und einen Puffer, der vorübergehend die Daten speichert, wobei das Verfahren aufweist: vorübergehendes Speichern der Daten, die im Puffer vorhanden sind, in einer Speichereinheit; Schreiben der gleichen Daten, welche in der Speichereinheit vorhanden sind, auf die Platte; und Mitteilen an die Anwendung innerhalb vorher festgelegter Zeitdauer, ob die Daten erfolgreich beim Schreiben auf die Platte geschrieben wurden.
  12. Verfahren nach Anspruch 11, wobei die Plattenverwaltungseinrichtung (110) mehrere Speichereinheiten (130, 140) und eine gleiche Anzahl von Platten (210, 220) aufweist, und das Schreiben von Schreibdaten, welche in einer Speichereinheit vorhanden sind, auf eine entsprechende Platte umfasst.
  13. Verfahren nach Anspruch 12, wobei das Mitteilen das Mitteilen an die Anwendung umfasst, dass die Daten erfolgreich auf die Platten geschrieben wurden, wenn beim Mitteilen bestimmt wird, dass Daten, welche in einer der Speichereinheiten vorhanden sind, erfolgreich auf eine entsprechende Platte geschrieben wurden.
  14. Verfahren nach Anspruch 11, wobei das Mitteilen das Mitteilen eines Fehlers an die Anwendung umfasst, wenn innerhalb der vorher festgelegten Zeitdauer beim Mitteilen nicht bestimmt werden kann, dass die Daten, welche in der Speichereinheit vorhanden sind, erfolgreich auf die Platte geschrieben wurden.
  15. Verfahren nach Anspruch 12, wobei das Mitteilen das Mitteilen eines Fehlers an die Anwendung umfasst, wenn innerhalb der vorher festgelegten Zeitdauer beim Mitteilen nicht bestimmt werden kann, dass die Daten, welche in den Speichereinheiten vorhanden sind, erfolgreich auf die Platten geschrieben wurden.
DE102005024673A 2005-02-17 2005-05-30 Einrichtung, Verfahren und Computerprodukt für Plattenverwaltung Withdrawn DE102005024673A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005041031A JP2006227923A (ja) 2005-02-17 2005-02-17 ディスク管理装置およびディスク管理プログラム
JP2005-041031 2005-02-17

Publications (1)

Publication Number Publication Date
DE102005024673A1 true DE102005024673A1 (de) 2006-08-24

Family

ID=36776313

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102005024673A Withdrawn DE102005024673A1 (de) 2005-02-17 2005-05-30 Einrichtung, Verfahren und Computerprodukt für Plattenverwaltung

Country Status (4)

Country Link
US (1) US20060184729A1 (de)
JP (1) JP2006227923A (de)
KR (1) KR100713769B1 (de)
DE (1) DE102005024673A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102007008275A1 (de) 2007-02-20 2008-08-21 Bayerische Motoren Werke Aktiengesellschaft Verfahren und Vorrichtung zur Signalisierung eines duchzuführenden Gangwechselvorgangs an einen Fahrer eines Kraftfahrzeug

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9152515B2 (en) 2007-11-27 2015-10-06 International Business Machines Corporation Apparatus and method for managing storage copy services systems
JP5524279B2 (ja) 2011-09-13 2014-06-18 株式会社東芝 情報処理装置および情報処理方法
CN113377434A (zh) * 2021-06-08 2021-09-10 北京金山云网络技术有限公司 命令响应时长的确定方法、装置和存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030084252A1 (en) * 2001-11-01 2003-05-01 Talagala Nisha D. Disk drive employing adaptive flushing of a write cache

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6364678A (ja) * 1986-09-05 1988-03-23 Mitsubishi Electric Corp デイスクのライトエラ−リカバリ方式
JPH1153120A (ja) 1997-08-08 1999-02-26 Fujitsu Ltd ディスク制御装置およびディスク制御プログラムを記録した媒体
JP2001043624A (ja) 1999-07-29 2001-02-16 Toshiba Corp ディスク記憶装置及びスプリットデータライト方法
KR20020064357A (ko) * 1999-12-22 2002-08-07 시게이트 테크놀로지 엘엘씨 디스크 드라이브내 버퍼 내부 및 외부 데이터 전송 관리용버퍼 관리 시스템
JP3964629B2 (ja) 2001-04-27 2007-08-22 株式会社東芝 ディスクアレイ装置のパトロールによるデータパス異常検出方法及びディスクアレイ装置を備えたコンピュータシステム
US20030023807A1 (en) * 2001-06-13 2003-01-30 Youichi Yamamoto Disk drive device and control device thereof
JP4090400B2 (ja) * 2003-07-24 2008-05-28 株式会社日立製作所 ストレージシステム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030084252A1 (en) * 2001-11-01 2003-05-01 Talagala Nisha D. Disk drive employing adaptive flushing of a write cache

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102007008275A1 (de) 2007-02-20 2008-08-21 Bayerische Motoren Werke Aktiengesellschaft Verfahren und Vorrichtung zur Signalisierung eines duchzuführenden Gangwechselvorgangs an einen Fahrer eines Kraftfahrzeug

Also Published As

Publication number Publication date
JP2006227923A (ja) 2006-08-31
KR100713769B1 (ko) 2007-05-04
US20060184729A1 (en) 2006-08-17
KR20060092032A (ko) 2006-08-22

Similar Documents

Publication Publication Date Title
DE69730449T2 (de) Erzeugung einer spiegeldatenkopie (bild) unter verwendung von referenzetiketten
DE19607515B4 (de) Computer mit Prozessverwalter
DE69724846T2 (de) Mehrweg-Ein/Ausgabespeichersysteme mit Mehrweg-Ein/Ausgabeanforderungsmechanismus
DE69629444T2 (de) Datenverarbeitungsgerät und Verfahren zur Ersetzung von ausgefallenen Speichereinheiten
DE69913984T2 (de) Verteiltes transaktionales verarbeitungssystem und verfahren
DE10315490B4 (de) Verfahren und System zum Wechsel zwischen zwei oder mehreren Firmwareabbildungen auf einer Hostvorrichtung
DE2629459C2 (de)
DE102019109672A1 (de) Rückgängigmachung nach einem teilausfall in mehreren elektronischen steuergeräten mittels over-the-air-updates
CH654943A5 (de) Pruefeinrichtung fuer mikroprogramme.
DE2243956A1 (de) Speicherprogrammierte datenverarbeitungsanlage
DE112012001660T5 (de) Speicher-Checkpointing in einem System gespiegelter virtueller Maschinen
EP1711892B1 (de) Verfahren zum bestimmen eines übernahmeszenarios der softwareeinheiten bei einem rechnerausfall in einer serverfarm
DE19535546B4 (de) Verfahren zum Betreiben eines durch ein Realzeit-Betriebssystem gesteuerten Realzeit-Computersystems
DE112014000340T5 (de) Vorablesezugriff auf Daten für einen Chip mit einem übergeordneten Kern und einem Scout-Kern
DE2747633A1 (de) Dv-system mit einer unterbrechungseinrichtung
DE102012224362B4 (de) Anpassung einer Testhäufigkeit für die Ressourcenauslastung
DE102005024673A1 (de) Einrichtung, Verfahren und Computerprodukt für Plattenverwaltung
DE102004003102A1 (de) System und Verfahren zum Bestimmen einer Transaktionszeitüberschreitung
DE60217729T2 (de) Verfahren zum erkennen eines elektronischen geräts in einem mehrfachsteuersystem
DE102019135079A1 (de) Installation von firmware-bundles abbrechen
DE112019007853T5 (de) Steuereinrichtung
DE60022139T2 (de) Verfahren und System zur Meldung der Benützung der Festplatten eines Festplattensystems
DE112018001444T5 (de) Verbesserte E/A-Fehlerdiagnose
EP3705993B1 (de) System und verfahren zum auffinden und identifizieren von rechenknoten in einem netzwerk
DE102021128520A1 (de) Warten von datenspeichereinheiten in einem datenspeicher-array

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8139 Disposal/non-payment of the annual fee