DE69617009T2 - Reservierter zylinder für einen nachschreib-cachespeicher für scsi-gerät - Google Patents
Reservierter zylinder für einen nachschreib-cachespeicher für scsi-gerätInfo
- Publication number
- DE69617009T2 DE69617009T2 DE69617009T DE69617009T DE69617009T2 DE 69617009 T2 DE69617009 T2 DE 69617009T2 DE 69617009 T DE69617009 T DE 69617009T DE 69617009 T DE69617009 T DE 69617009T DE 69617009 T2 DE69617009 T2 DE 69617009T2
- Authority
- DE
- Germany
- Prior art keywords
- power
- microprocessor
- memory
- cache memory
- reserved
- 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 - Lifetime
Links
- 230000015654 memory Effects 0.000 claims description 66
- 238000000034 method Methods 0.000 claims description 7
- 238000001514 detection method Methods 0.000 claims description 3
- 238000004146 energy storage Methods 0.000 description 16
- 238000012546 transfer Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000007429 general method Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000010561 standard procedure Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1441—Resetting or repowering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0804—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Power Sources (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
- Die Erfindung betrifft ein Computersystem mit einem Nachschreib-Cachespeicher, bei dem ein Hostcomputer Daten in einem Cache-Speicher zwischenspeichert, bevor die Daten dauerhaft in einem Plattenlaufwerk gespeichert werden.
- Bei Nachschreib-Cachesystemen schreibt der Host als Erstes, wenn er einen Schreibvorgang zum Einspeichern von Daten in einem Plattenlaufwerk auslöst, die Daten in einen Cache- Speicher ein. In der Technik ist es gut bekannt, dass Cache- Speicher typischerweise flüchtige Speicher sind, die viel kleiner und schneller als die nichtflüchtigen Speicherbauteile sind, wie sie für den Hauptsystemspeicher verwendet werden, z. B. Plattenlaufwerke, Bandlaufwerke oder optische Laufwerke. Die Daten werden dann vom Cache in das Plattenlaufwerk geschrieben, wenn der Speichercontroller dazu frei ist, den Vorgang abzuschließen. Es ist häufig der Fall, dass der Host, um mit anschließenden Schreibvorgängen fortfahren zu können, die Bestätigung dafür empfangen muss, dass die im Cache abgespeicherten Daten an die schließliche Speicherstelle im Plattenlaufwerk geschrieben wurden. Durch dieses Erfordernis wird das Systemfunktionsvermögen begrenzt, da der Host keinen anderen Schreibvorgang auslösen kann, bevor er nicht den Hinweis über den Abschluss des aktuellen Schreibvorgangs empfangen hat.
- Ein Verfahren zum Verbessern des Systemfunktionsvermögens besteht darin, die Wahlmöglichkeit bereitzustellen, den Abschluss des Schreibvorgangs dem Host unmittelbar nach dem Einschreiben der Daten in den Cache zu bestätigen, wodurch der Host mit anschließenden Betriebsvorgängen fortfahren kann. Der tatsächliche Schritt des Einschreibens in das Plattenlaufwerk wird dann abgeschlossen, wenn der Speichercontroller frei ist. Während es dieses Verfahren erlaubt, dem Hostcomputer dadurch mit höherer Geschwindigkeit zu arbeiten, dass Schreibvorgänge häufiger ausgelöst werden, leidet die Zuverlässigkeit des Systems. Im Fall des Abschaltens eines Systems oder bei einem Spannungsausfall könnte der Inhalt des nichtflüchtigen Cache-Speichers verloren gehen, bevor der Speichercontroller Gelegenheit hat, die noch offenen Schreibvorgänge abzuschließen. Dann wird der Host dahingehend getäuscht, dass er davon ausgeht, die Daten in Zusammenhang mit jedem anhängigen Schreibvorgang wären im Plattenlaufwerk aktualisiert, wenn dies nicht der Fall ist.
- Es ist möglich, den Gesichtspunkt der Systemzuverlässigkeit dadurch zu berücksichtigen, dass ein externes, nicht unterbrechbares Spannungssystem, wie eine batteriegestützte Einheit, zum Computersystem hinzugefügt wird. Im Fall des Abschaltens der Spannung oder eines Spannungsausfalls ist das externe Spannungssystem dazu in der Lage, es dem Speichercontroller zu ermöglichen, die Schreibvorgänge für alle Daten abzuschließen, die zum Zeitpunkt der Unterbrechung der Systemspannung noch im Cache vorhanden sind. Diese Vorgehensweise wird in verhindernder Weise teuer, da, wenn die Größe typischer Cache-Speicher zunimmt, wegen der zunehmenden Anzahl von vom Speichercontroller abzuschließenden Schreibvorgängen zunehmende Zeit erforderlich ist, während der Spannung durch die externe Quelle zu liefern ist. Ferner könnte das Hinzufügen einer externen Einheit zum System zu Problemen beim körperlichen Layout des Computersystems führen, insbesondere da es möglich ist, dass der Endbenutzer des Systems dessen Merkmale ändern muss, um die externe Einheit zu berücksichtigen.
- WO-A-92/15933 veranschaulicht das obige Prinzip, jedoch mit einer integrierten Bereitschafts-Spannungsversorgung.
- Demgemäß wäre es wünschenswert, über ein Computersystem zu verfügen, bei dem die Funktionsvorteile früher Schreibbestätigung an den Host gewährleistet sind, ohne dass die zugehörigen, oben beschriebenen Probleme hinsichtlich der Zuverlässigkeit und des Layouts vorliegen.
- Durch die Erfindung wird die Systemzuverlässigkeit dadurch erhöht, dass eine Speicherstelle im Plattenlaufwerk zum Speichern des Inhalts des Cache-Speichers im Fall einer Unterbrechung der Systemspannung reserviert wird. Das Speichern des Bilds des Caches erfolgt durch eine zeitweilige Spannung, die durch eine Energiespeichereinheit geliefert wird, die dem Speichercontroller ausreichend Energie für einen begrenzten Schreibvorgang nach einer Unterbrechung der Systemspannung liefert.
- Bei einer Ausführungsform der Erfindung ist jedes Plattenlaufwerk in einem Computersystem mit einer Energiespeichereinheit versehen, die dem Laufwerkcontroller dann Energie zuführt, wenn eine Unterbrechung der Systemspannung vorliegt, wie beim Abschalten oder einem Ausfall der Spannung. Die Energiespeichereinheit kann z. B. eine Batterie sein. Wenn der Controller darüber informiert wird, dass die Systemspannung unterbrochen wurde, startet er unmittelbar eine Suche nach einer reservierten Speicherstelle im Plattenlaufwerk, und er speichert den Inhalt des Cache-Speichers an der reservierten Speicherstelle ab, die aus einem oder mehreren Zylindern auf dem Laufwerk bestehen kann. Nachdem die Spannung für das System wiederhergestellt wurde, kann der Controller den Inhalt der reservierten Zylinder wieder in den Cache-Speicher laden, und er schließt die anhängigen Schreibvorgänge dadurch ab, dass er alle Einzeldaten im Cache an die jeweils zugehörigen abschließenden Speicherstellen im Laufwerk schreibt.
- Bei einer anderen Ausführungsform der Erfindung ist die Energiespeichereinheit in einen Speichercontroller eingebaut, der ein Feld von Plattenlaufwerken steuert, statt in jedes Plattenlaufwerk selbst. Die Erfindung arbeitet immer noch gemäß dem oben skizzierten allgemeinen Verfahren. In diesem Fall startet der Controller, wenn ihm einmal mitgeteilt wurde, dass die Systemspannung unterbrochen wurde, unmittelbar eine Suche nach den reservierten Speicherstellen im Feld von Plattenlaufwerken, und er speichert den Inhalt des Cache-Speichers an den reservierten Speicherstellen ab, die aus einem oder mehreren Zylindern in einem oder mehreren der Laufwerke im Feld bestehen können. Nachdem die Spannung für das System wiederhergestellt wurde, kann der Controller den Inhalt der reservierten Zylinder in den Cache-Speicher zurückladen, und er schließt die anhängigen Schreibvorgänge dadurch ab, dass er alle Einzeldaten im Cache in ihre jeweils zugehörigen abschließenden Speicherstellen im Laufwerksfeld einschreibt.
- Die Erfindung verfügt über den Vorteil, dass sehr wenig Energie dazu erforderlich ist, den Controller über eine Unterbrechung der Systemspannung hinaus zu betreiben, da es viel weniger Energie benötigt, einen Schreibvorgang für den Inhalt des Caches in die reservierten Zylinder abzuschließen, anstatt mehrere anhängige Schreibvorgänge für alle Einzeldaten in den Cache an verschiedenen Speicherstellen im Plattenlaufwerk abzuschließen. Daher ist die Energiespeichereinheit im Laufwerk oder im Speichercontroller viel kleiner und billiger als die oben beschriebenen externen, nicht unterbrechbaren Spannungssysteme. Auch ist keine zusätzliche Hardware außerhalb des Systems dazu erforderlich, die Erfindung 2u realisieren, was für der Endbenutzer das Erfordernis beseitigt, die Systemkonfiguration zu ändern.
- Die Erfindung wird unter Bezugnahme auf die folgende detaillierte Beschreibung in Zusammenhang mit den beigefügten Zeichnungen besser zu verstehen sein.
- Fig. 1 zeigt ein Blockdiagramm einer bevorzugten Ausführungsform der Erfindung, bei der eine Energiespeichereinheit in einem Plattenlaufwerk untergebracht ist.
- Fig. 2 zeigt ein Blockdiagramm einer anderen Ausführungsform der Erfindung, bei der eine Energiespeichereinheit in einem Speichercontroller untergebracht ist, der ein Feld von Plattenlaufwerken steuert.
- Die Fig. 1 zeigt ein vereinfachtes Blockdiagramm eines Computersystems 100, bei dem jedes Plattenlaufwerk mit einer Energiespeichereinheit zum Speichern eines Bilds des Plattencaches in einem reservierten Zylinder im Laufwerk versehen ist. Ein Hostcomputer 102 ist über einen Systembus 104 mit anderen Komponenten des Systems verbunden. Der Systembus 104 ist typischerweise ein SCSI(Small Computer Systems Interface)-Bus, könnte jedoch irgendein anderer Bus sein, der so konzipiert ist, dass er einen Host mit anderen Systemkomponenten verbindet, wie z. B. ein FC(Fibre Channel)-Bus oder ein SSA(Serial SCSI Architecture)-Bus. Eine der Komponenten im System ist ein Plattenlaufwerk 106. Eine Laufwerk- Schnittstelle 108 verbindet das Laufwerk mit dem Systembus 104. Laufwerk-Operationen werden durch einen im Plattenlaufwerk 106 untergebrachten Mikroprozessor 110 gesteuert. Die Laufwerk-Schnittstelle 108 ist mit einem Plattencache-Speicher 112 verbunden, der ein nichtflüchtiger Speicher ist. Der Cache-Speicher 112 ist mit einer Kopf/Platte-Anordnung (HDA = Head/Disk Assembly) 114, dem nichtflüchtigen Speicher für das Computersystem 100, verbunden. Mit dem Prozessor 110 sind auch eine Spannungserfassungseinheit 116 und eine Energiespeichereinheit 118 verbunden.
- Im Betrieb überträgt der Host 102 im Plattenlaufwerk 106 zu speichernde Datenblöcke über den Systembus 105. Die Daten werden über die Laufwerk-Schnittstelle 108 übertragen und im Cache 112 zwischengespeichert, bis der Prozessor 110 dazu frei ist, den Zylinder in der HDA 114 zu suchen, wo die Daten dauerhaft zu speichern sind. Da die Zugriffszeiten des Hosts 102 und des Caches 112, die beide elektronische Bauteile sind, viel kürzer als die normale Such- und Rotationszeit der HDA 114, die ein elektromechanisches Bauteil ist, sind, sammeln sich im Cache 112 zahlreiche Schreibvorgänge an, die für die abschließende Speicherung im Plattenlaufwerk anhängig sind. So sendet der Cache 112, um den Host 102 dazu frei zu machen andere Funktionen auszuführen, eine frühe Schreibbestätigung unmittelbar nach dem Empfang eines Datenblocks an den Host 112 zurück, obwohl die Daten noch nicht tatsächlich auf die HDA 114 geschrieben wurden. Eine frühe Schreibbestätigung erlaubt es dem Host, mit anschließenden Operationen fortzufahren, ohne die zusätzliche Zeit warten zu müssen, bis die Daten tatsächlich im Plattenlaufwerk gespeichert sind. Wenn der Prozessor 110 frei von der Handhabung voriger Operationen ist, sucht er erneut nach dem gewünschten Zylinder auf der HDA 114 und speichert den Datenblock im Plattenlaufwerk ab.
- Im Fall einer Unterbrechung der Spannung zum System erkennt die Spannungserfassungsschaltung 116 die Unterbrechung, und sie teilt es dem Prozessor 110 mit, dass die Spannung unterbrochen ist. Die Spannung kann z. B. als Ergebnis eines unerwarteten Spannungsausfalls oder durch ein normales Abschalten des Systems unterbrochen werden. Zu diesem Zeitpunkt, nach dem Unterbrechen der Systemspannung, liefert die Energiespeichereinheit 118, die z. B. eine Batterie sein kann, ausreichende Energie an den Mikroprozessor 110 und die HDA 114 zum Sichern des Inhalts des Caches 112. Wenn der Prozessor 110 einmal eine Mitteilung über einen Spannungsausfall empfangen hat, löst er unmittelbar eine Suche für eine reservierte Speicherstelle in der HDA 114 aus. Die reservierte Speicherstelle kann aus einem oder mehreren Zylindern bestehen, solange sie ausreichend groß dafür ist, den Inhalt eines vollen Cache-Speichers 112 aufzunehmen. Nachdem die Suche nach der reservierten Speicherstelle und die Rotation zu dieser abgeschlossen sind, speichert der Prozessor 110 den gesamten Inhalt des Cache-Speichers 112 in die reservierten Zylinder in der HDA 114 ein, erneut mit der von der Energiespeichereinheit 118 gelieferten vorübergehenden Spannung. Später, nachdem die Systemspannung wiederhergestellt wurde, kann der Prozessor 110 den Inhalt der reservierten Zylinder in den Cache-Speicher 112 zurückladen und die anstehenden Schreibvorgänge dadurch abschließen, dass er alle Datenblöcke im Cache an die jeweiligen abschließenden Speicherstellen in der HDA 114 entsprechend einer Standardoperation einschreibt.
- Die in die reservierten Zylinder geschriebenen Daten vom Cache-Speicher 112 sind geeignet gekennzeichnet, so dass sie bei Wiederherstellung der Systemspannung aufgefunden werden können. Z. B. besteht ein mögliches Identifizierungsschema darin, Steuerungsinformation überall auf den reservierten Zylindern zusätzlich zu den Daten zu speichern, die beschreibt, wo die Daten schließlich auf die Platte zu schreiben sind. Ein alternatives Identifizierungsschema besteht darin, jedem Datenblock entsprechende Steuerinformation in ein vorbestimmtes Gebiet des Datenblocks zu schreiben, wenn die Daten in den reservierten Zylindern der HDA 114 gespeichert werden. Das letztere Schema bietet den Vorteil, dass gewährleistet ist, dass Steuerinformation an die entsprechenden Datenblöcke "angeheftet" bleibt.
- Da eine minimale Anzahl von Such- und Rotationsvorgängen dazu erforderlich ist, die Köpfe in der HDA 114 über den reservierten Zylindern zu positionieren, ist die Menge zusätzlicher Energie, und damit die Größe der Energiespeichereinheit 118, minimiert. Wenn dagegen der Prozessor 110 tatsächlich alle anhängigen Schreibvorgänge in über die HDA verteilte Speicherstellen mit der vorübergehenden Spannung abschließen müsste, anstatt ein Bild des Caches 112 an einer reservierten Speicherstelle zu speichern, wäre die Menge zusätzlicher Energie, die nach der Unterbrechung der Systemspannung erforderlich wäre, erheblich, und die Größe und die Kosten der Energiespeichereinheit 118 würden es unerwünscht machen, eine Energiespeichereinheit in das Plattenlaufwerk 106 einzubauen.
- Die Fig. 2 zeigt ein Blockdiagramm einer anderen Ausführungsform der Erfindung, bei der eine Energiespeichereinheit in einem Speichercontroller angebracht ist, der ein redundantes Feld unabhängiger Platten (RAID = Redundant Array of Independent Disks) steuert. Computersysteme mit einem RAID- Speichersubsystem verwenden ein oder mehrere Felder unabhängiger Magnetplatten-Laufwerke für Systemspeicherung. Unter Verwendung eines Felds kleinerer Platten anstelle einiger weniger größerer Platten wird die Datenübertragungsrate zwischen dem Host und den Plattenlaufwerken verbessert, da die Datenübertragungsvorgänge über eine Anzahl kleinerer Plattenlaufwerke verteilt werden, anstatt dass sie für ein oder nur einige weniger große Laufwerke konzentriert werden. In RAID-Systemen handhabt ein zentraler Controller die Operationen für alle Laufwerke im Feld, anstatt dass ein Controller in jeder Plattenlaufwerkseinheit untergebracht ist. Redundante RAID-Controller sind im US-Patent Nr. 5,212,785 beschrieben, das auf die Rechtsnachfolgerin betreffend die vorliegende Erfindung übertragen ist.
- In der Fig. 2 enthält das Computersystem 200 einen Host 202, der über einen Systembus 204 mit anderen Systemkomponenten verbunden ist. Wie bei der in der Fig. 1 dargestellten Ausführungsform könnte der Bus 204 irgendein Systembus sein, wie ein SCSI-, ein FC- oder ein SSA-Bus. Mit dem Systembus ist ein RAID-Controller 206 verbunden, der Übertragungsvorgänge von Daten zwischen dem Host 202 und dem Speicherfeld 208 steuert, das aus mehreren nichtflüchtigen Plattenlaufwerken 210 besteht. Der RAID-Controller 208 enthält einen Mikroprozessor 212, der mit einem Cache-Speicher 214, einem flüchtigen Speicherbauteil, verbunden ist. Mit dem Prozessor sind auch eine Spannungserfassungsschaltung 216 und eine Energiespeichereinheit 218 verbunden.
- Der Betrieb der in der Fig. 2 dargestellten Ausführungsform ist demjenigen des in der Fig. 1 dargestellten Systems sehr ähnlich. Der Host 202 überträgt im Plattenfeld 208 zu speichernde Datenblöcke über den Systembus 204. Die Daten werden über den RAID-Controller 206 übertragen und im Cache 214 zwischengespeichert, bis der Prozessor 212 dazu frei ist, nach den Zylindern in den Plattenlaufwerken 210 im Feld 208 zu suchen, in denen die Daten dauerhaft zu speichern sind. Da die Zugriffszeiten des Hosts 202 und des Caches 214, die beide elektronische Bauteile sind, viel kürzer als die normale Such- und Rotationszeit für die Plattenlaufwerke 210, die elektromechanische Bauteile sind, sammeln sich im Cache 214 zahlreiche Schreibvorgänge an, die auf die abschließende Speicherung im Plattenlaufwerk warten. So sendet der Cache 214, um den Host 202 dafür frei zu machen, andere Funktionen auszuführen, eine frühe Schreibbestätigung unmittelbar dann an den Host 202 zurück, wenn er einen Datenblock empfangen hat, obwohl die Daten noch nicht tatsächlich in das Plattenfeld 208 geschrieben sind. Eine frühe Schreibbestätigung erlaubt es dem Host, mit anschließenden Operationen fortzufahren, ohne die zusätzliche Zeit zuzuwarten, bis die Daten tatsächlich im Plattenlaufwerk abgespeichert sind. Wenn der Prozessor 202 frei von der Handhabung voriger Operationen ist, sucht er erneut nach den gewünschten Zylindern auf den ausgewählten Plattenlaufwerken 210 und speichert den Datenblock im Plattenlaufwerk ab.
- Im Fall einer Spannungsunterbrechung zum System erkennt die Spannungserfassungsschaltung 216 die Unterbrechung, und sie teilt es dem Prozessor 212 mit, dass die Spannung unterbrochen ist. Die Spannung kann als Ergebnis z. B. eines nicht erwarteten Spannungsausfalls oder durch normales Abschalten des Systems unterbrochen werden. Zu diesem Zeitpunkt, nach der Unterbrechung der Systemspannung, liefert eine Energiespeichereinheit 218, die z. B. eine Batterie sein kann, ausreichend Energie an den Mikroprozessor 212 und das Plattenfeld 208, um den Inhalt des Caches 214 zu sichern. Wenn der Prozessor 214 einmal eine Mitteilung betreffend einen Spannungsausfall empfangen hat, löst er unmittelbar eine Suche nach einer reservierten Speicherstelle im Plattenfeld 208 aus. Die reservierte Speicherstelle kann aus einem oder mehreren Zylindern bestehen, die sich in einem Laufwerk befinden oder über mehrere Laufwerke im Feld 208 verteilt sind, solange die Speicherstelle ausreichend groß dafür ist, einen vollen Cache 214 aufzunehmen. Nachdem der Such- und Rotationsvorgang für die reservierte Speicherstelle abgeschlossen ist, speichert der Prozessor 212 den gesamten Inhalt des Cachespeichers 214 erneut unter der von der Energiespeichereinheit 218 bereitgestellten vorübergehenden Spannung in die reservierten Zylinder im Plattenfeld 208 ein. Später, nachdem die Systemspannung wiederhergestellt wurde, kann der Prozessor 212 den Inhalt der reservierten Zylinder in den Cache-Speicher 214 zurückladen und die anhängigen Schreibvorgänge dadurch abschließen, dass er alle Datenblöcke im Cache in die jeweiligen endgültigen Speicherstellen im Plattenfeld 208 gemäß einem Standardbetriebsvorgang einschreibt.
- Wie bei der Ausführungsform der Fig. 1 ist, da eine minimale Anzahl von Such- und Rotationsvorgängen dazu erforderlich ist, die reservierten Zylinder zu erreichen, die erforderliche Menge zusätzlicher Energie, und demgemäß die Größe der Energiespeichereinheit 218, minimiert. Wenn dagegen der Prozessor 212 tatsächlich alle anhängigen Schreibvorgänge für über das ganze Plattenfeld 208 verteilte Speicherstellen bei der vorübergehenden Spannung einschreiben müsste, anstatt ein Bild des Caches 214 an einer reservierten Speicherstelle zu speichern, wäre die Menge der nach der Unterbrechung der Systemspannung erforderlichen zusätzlichen Energie erheblich, und die Größe und die Kosten der Energiespeichereinheit 218 würden es unerwünscht machen, diese Energiespeichereinheit in den RAID-Controller 206 einzubauen.
- Nun wurde die Erfindung unter Bezugnahme auf spezielle Ausführungsformen erläutert. Andere Ausführungsformen sind dem Fachmann unter Bezugnahme auf die vorliegende Beschreibung erkennbar. Daher soll die Erfindung nicht beschränkt sein, außer durch das, was durch die beigefügten Ansprüche angegeben ist.
Claims (14)
1. Verfahren in einem Speicher-Subsystem mit einem
Mikroprozessor, einem Cache-Speicher und einem Plattenlaufwerk,
zum Speichern von Inhalten des Cache-Speichers nach einer
Unterbrechung der Leistungsversorgung zum Computersystem,
wobei:
eine Speicherstelle ausreichender Größe zum Aufnehmen
einer Kopie der Inhalte des Cache-Speichers im
Plattenlaufwerk reserviert wird;
die Unterbrechung der Leistungsversorgung zu dem
Computersystem erfaßt wird;
dem Mikroprozessor und dem Plattenlaufwerk nach der
Unterbrechung der Leistungsversorgung zu dem Computersystem
temporäre Leistung zugeführt wird;
die reservierte Speicherstelle im Plattenlaufwerk unter
temporärer Leistungsversorgung angesteuert wird; und
die Kopie der Inhalte des Cache-Speichers an der
reservierten Speicherstelle im Plattenlaufwerk unter temporärer
Leistungsversorgung gespeichert wird.
2. Verfahren nach Anspruch 1, wobei beim Reservieren einer
Speicherstelle im Plattenlaufwerk außerdem wenigstens ein
Zylinder im Plattenlaufwerk zum Speichern der Kopie der Inhalte
des Cache-Speichers reserviert wird.
3. Verfahren nach Anspruch 1, wobei beim. Reservieren einer
Speicherstelle im Plattenlaufwerk außerdem wenigstens ein
Sektor eines Zylinders im Plattenlaufwerk zum Speichern der
Kopie der Inhalte des Cache-Speichers reserviert wird.
4. Verfahren nach Anspruch 1, wobei beim Versorgen mit
temporärer Leistung außerdem eine Batterie zum Zuführen
temporärer Leistung zu dem Mikroprozessor und dem Plattenlaufwerk
nach der Unterbrechung der Leistungsversorgung zu dem
Computersystem vorgeshen wird.
5. Speicher-Subsystem zum Anschließen an einen
Hauptcomputer, mit:
einem Mikroprozessor;
einem an den Mikroprozessor angeschlossenen
Cache-Speicher;
einer an den Mikroprozessor angeschlossenen Leistungs-
Erfassungsschaltung zum Erfassen einer Unterbrechung der
Leistungsversorgung zum Speicher-Subsystem;
einer an den Mikroprozessor angeschlossenen Leistungs-
Speichereinheit zum Zuführen temporärer Leistung nach der
Unterbrechung der Leistungsversorgung zu dem
Speicher-Subsystem; und folgendem kennzeichnenden Bestandteil:
einem an den Cache-Speicher angeschlossenen
Kopf/Plattenaufbau mit einer reservierten Speicherstelle ausreichender
Größe zum Speichern einer Kopie der Inhalte des
Cache-Speichers unter temporärer Leistungsversorgung aus der Leistungs-
Speichereinheit nach der Unterbrechung der
Leistungsversorgung zu dem Computersystem.
6. Speicher-Subsystem nach Anspruch 5, wobei die Leistungs-
Speichereinheit eine Batterie aufweist.
7. Speicher-Subsystem nach Anspruch 5, wobei die
reservierte Speicherstelle in dem Kopf/Plattenaufbau Wenigstens
einen Zylinder aufweist.
8. Speicher-Subsystem nach Anspruch 5, wobei die
reservierte Speicherstelle in dem Kopf/Plattenaufbau wenigstens
einen Sektor eines Zylinders aufweist.
9. Speicher-Subsystem nach Anspruch 5, wobei der
Mikroprozessor ferner einen Einrichtung zum Speichern der Kopie der
Inhalte des Cache-Speichers an der reservierten
Speicherstelle in dem Kopf/Plattenaufbau aufweist.
10. Speicher-Subsystem zum Anschließen an einen
Hauptcomputer, mit:
einer Speicher-Steuereinrichtung mit
einem Mikroprozessor,
einem daran angeschlossenen Cache-Speicher,
einer ebenfalls an den Mikroprozessor
angeschlossenen Leistungs-Erfassungsschaltung zum Erfassen einer
Unterbrechung der Leistungsversorgung zu dem Computersystem und
einer ebenfalls an den Mikroprozessor
angeschlossenen Leistungs-Speichereinheit zum Zuführen temporärer
Leistung zu dem Mikroprozessor nach der Unterbrechung der
Leistungsversorgung zu dem Computersystem; und folgendem
kennzeichnenden Bestandteil:
einer Mehrzahl von an die Speicher-Steuereinrichtung
angeschlossenen Plattenlaufwerken, von denen wenigstens eine
eine reservierte Speicherstelle ausreichender Größe zum
Speichern einer Kopie der Inhalte des Cache-Speichers unter
temporärer Leistungsversorgung aus der Leistungs-Speichereinheit
nach der Unterbrechung der Leistungsversorgung zu dem
Computersystem aufweist.
11. Speicher-Subsystem nach Anspruch 10, wobei die
Leistungs-Speichereinheit eine Batterie aufweist.
12. Speicher-Subsystem nach Anspruch 10, wobei die
reservierte Speicherstelle in der Mehrzahl von Plattenlaufwerken
wenigstens einen Zylinder aufweist.
13. Speicher-Subsystem nach Anspruch 10, wobei die
reservierte Speicherstelle in der Mehrzahl von Plattenlaufwerken
wenigstens einen Sektor eines Zylinders aufweist.
14. Speicher-Subsystem nach Anspruch 10, wobei der
Mikroprozessor ferner eine Einrichtung zum Speichern der Kopie der
Inhalte des Cache-Speichers an der reservierten
Speicherstelle in der Merzahl von Plattenlaufwerken aufweist.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/464,101 US5748874A (en) | 1995-06-05 | 1995-06-05 | Reserved cylinder for SCSI device write back cache |
PCT/US1996/009463 WO1996039653A1 (en) | 1995-06-05 | 1996-06-04 | Reserved cylinder for scsi device write-back cache |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69617009D1 DE69617009D1 (de) | 2001-12-20 |
DE69617009T2 true DE69617009T2 (de) | 2002-03-21 |
Family
ID=23842561
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69617009T Expired - Lifetime DE69617009T2 (de) | 1995-06-05 | 1996-06-04 | Reservierter zylinder für einen nachschreib-cachespeicher für scsi-gerät |
Country Status (5)
Country | Link |
---|---|
US (1) | US5748874A (de) |
EP (1) | EP0830651B1 (de) |
CA (1) | CA2223941C (de) |
DE (1) | DE69617009T2 (de) |
WO (1) | WO1996039653A1 (de) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5948075A (en) * | 1997-06-04 | 1999-09-07 | International Business Machines Corporation | System for identifying operating parameters in a storage enclosure having each of first connector only for specifying a physical location associated with each of backplane interfaces |
JP4083864B2 (ja) * | 1998-04-20 | 2008-04-30 | 株式会社日立製作所 | ホスト、ディスクアレイおよびups間における連動制御装置 |
US6513097B1 (en) | 1999-03-03 | 2003-01-28 | International Business Machines Corporation | Method and system for maintaining information about modified data in cache in a storage system for use during a system failure |
US6438661B1 (en) | 1999-03-03 | 2002-08-20 | International Business Machines Corporation | Method, system, and program for managing meta data in a storage system and rebuilding lost meta data in cache |
US6502174B1 (en) | 1999-03-03 | 2002-12-31 | International Business Machines Corporation | Method and system for managing meta data |
US6178516B1 (en) | 1999-06-11 | 2001-01-23 | Mattel, Inc. | Electronic apparatus having a low voltage auto-reset circuit |
US6378037B1 (en) | 1999-06-29 | 2002-04-23 | International Business Machines Corporation | Write-twice method of fail-safe write caching |
US20080320209A1 (en) * | 2000-01-06 | 2008-12-25 | Super Talent Electronics, Inc. | High Performance and Endurance Non-volatile Memory Based Storage Systems |
GB0010648D0 (en) | 2000-05-04 | 2000-06-28 | Ibm | Methods,apparatus and system for caching data |
FR2812736B1 (fr) * | 2000-08-04 | 2003-12-19 | Near Technologies | Systeme de stockage virtuel |
US6795896B1 (en) * | 2000-09-29 | 2004-09-21 | Intel Corporation | Methods and apparatuses for reducing leakage power consumption in a processor |
US6883065B1 (en) | 2001-11-15 | 2005-04-19 | Xiotech Corporation | System and method for a redundant communication channel via storage area network back-end |
EP1361516A3 (de) * | 2002-04-30 | 2011-05-18 | Hitachi, Ltd. | Verfahren und System zur Sicherstellung der Stromversorgung einer Speicherplattenanordnung |
US7051174B2 (en) | 2002-09-24 | 2006-05-23 | International Business Machines Corporation | Method, system, and program for restoring data in cache |
US20050193159A1 (en) * | 2004-03-01 | 2005-09-01 | Yiu-Keung Ng | Embedded power control circuitry for a portable disk drive carrier having a hot-plug application |
US7536593B2 (en) * | 2004-03-05 | 2009-05-19 | International Business Machines Corporation | Apparatus, system, and method for emergency backup |
US20060143245A1 (en) * | 2004-12-29 | 2006-06-29 | Ravishankar Iyer | Low overhead mechanism for offloading copy operations |
US7620773B2 (en) * | 2005-04-15 | 2009-11-17 | Microsoft Corporation | In-line non volatile memory disk read cache and write buffer |
US20070101186A1 (en) * | 2005-11-02 | 2007-05-03 | Inventec Corporation | Computer platform cache data remote backup processing method and system |
US8001307B1 (en) * | 2007-04-27 | 2011-08-16 | Network Appliance, Inc. | Apparatus and a method to eliminate deadlock in a bi-directionally mirrored data storage system |
US8055846B2 (en) | 2008-08-15 | 2011-11-08 | International Business Machines Corporation | Data vaulting in emergency shutdown |
US8347041B2 (en) * | 2009-01-02 | 2013-01-01 | Lsi Corporation | System and method to preserve and recover unwritten data present in data cache of a disk subsystem across power outages |
JP4930556B2 (ja) * | 2009-07-09 | 2012-05-16 | 富士通株式会社 | 退避処理装置、退避処理方法およびストレージシステム |
US9804960B2 (en) * | 2013-03-14 | 2017-10-31 | Western Digital Technologies, Inc. | Overprovision capacity in a data storage device |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1545169A (en) * | 1977-09-22 | 1979-05-02 | Burroughs Corp | Data processor system including data-save controller for protection against loss of volatile memory information during power failure |
JP2779813B2 (ja) * | 1988-09-06 | 1998-07-23 | セイコーエプソン株式会社 | コンピューター |
US5204963A (en) * | 1990-12-07 | 1993-04-20 | Digital Equipment Corporation | Method and apparatus for a backup power controller for volatile random access memory |
EP0574531A4 (de) * | 1991-03-05 | 1995-03-08 | Zitel Corp | Cachespeichersystem und verfahren. |
JPH07101376B2 (ja) * | 1991-06-10 | 1995-11-01 | 松下電器産業株式会社 | システム再起動装置 |
GB2256735B (en) * | 1991-06-12 | 1995-06-21 | Intel Corp | Non-volatile disk cache |
DE4309532C2 (de) * | 1992-03-25 | 1996-10-31 | Intel Corp | Verfahren zum Sichern einer Systemabbildung eines Computersystems auf einer permanenten Speichereinrichtung sowie ein Computersystem |
US5396637A (en) * | 1993-03-02 | 1995-03-07 | Hewlett-Packard Company | Data processing system with power-fail protected memory module |
JPH07175728A (ja) * | 1993-12-20 | 1995-07-14 | Hokkaido Nippon Denki Software Kk | ディスクキャッシュデータ保全方式 |
-
1995
- 1995-06-05 US US08/464,101 patent/US5748874A/en not_active Expired - Lifetime
-
1996
- 1996-06-04 CA CA002223941A patent/CA2223941C/en not_active Expired - Lifetime
- 1996-06-04 DE DE69617009T patent/DE69617009T2/de not_active Expired - Lifetime
- 1996-06-04 WO PCT/US1996/009463 patent/WO1996039653A1/en active IP Right Grant
- 1996-06-04 EP EP96919202A patent/EP0830651B1/de not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
CA2223941A1 (en) | 1996-12-12 |
EP0830651A1 (de) | 1998-03-25 |
WO1996039653A1 (en) | 1996-12-12 |
EP0830651B1 (de) | 2001-11-14 |
DE69617009D1 (de) | 2001-12-20 |
US5748874A (en) | 1998-05-05 |
EP0830651A4 (de) | 2000-06-28 |
CA2223941C (en) | 2007-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69617009T2 (de) | Reservierter zylinder für einen nachschreib-cachespeicher für scsi-gerät | |
DE69937768T2 (de) | Externe Speichervorrichtung und Verfahren zur Datensicherung | |
DE68922552T2 (de) | Informationsaufzeichnungs- und -wiedergabegerät mit optischen Speicherplatten. | |
DE69817696T2 (de) | Warmaustausch von gespiegeltem Nachschreib-Cachespeicher | |
DE69608641T2 (de) | Ausfallbeseitigung für Steuergerät für eine Ein-/Ausgabevorrichtung | |
DE69626947T2 (de) | Reservekopie-Generierung in einem RAID-Untersystem | |
DE69632219T2 (de) | Speicherplattenanordnungssystem | |
DE68925653T2 (de) | Verfahren und System zur Sicherungssteuerung in einem Datenverarbeitungssystem | |
DE60210211T2 (de) | Redundante Datensicherungsvorrichtung und -Verfahren | |
DE69034227T2 (de) | EEprom-System mit Blocklöschung | |
DE69528443T2 (de) | Betriebsverfahren einer Speicherplattenanordnung | |
DE69803087T2 (de) | Integriertes bimodales einzelchip-steuergerät | |
DE69131728T2 (de) | Speicherungssystem für binäre rechner mit hoher geschwindigkeit, hoher kapazität, fehlertoleranz und fehlerkorrektur | |
DE69631106T2 (de) | On-line-Rekonfiguration einer Speicherplattenanordnung | |
DE68920196T2 (de) | Methode zur Behandlung von Daten in einer Dataspeicherungsbibliothek. | |
DE69700637T2 (de) | Host-basierendes RAID-5 und nicht flüchtige RAM-Integration und Verfahren hierfür | |
DE69030024T2 (de) | Verfahren zur Herstellung einer Duplikation von einer Datenbank | |
DE3881786T2 (de) | Identifizierung von Datenspeicherungseinrichtungen. | |
DE69434381T2 (de) | Verfahren zur Paritätsdarstellung in einem Raid-Untersystem unter Verwendung eines nichtflüchtigen Speichers | |
DE3650333T2 (de) | Verfahren zur Zustandsverwaltung gemeinsamer Betriebsmittel für ein komplexes Rechnersystem. | |
DE69622253T2 (de) | System und verfahren für on-line- und echzeit-datenmigration | |
DE69738091T2 (de) | Speicherplattenanordnung und Verfahren zu deren Steuerung | |
DE69835484T2 (de) | Externe Speichervorrichtung und Gerät um Daten zu übertragen und zu empfangen | |
DE102020112512A1 (de) | Datenspeichergerät und Betriebsverfahren dafür | |
DE69622647T2 (de) | Wiederherstellbares Plattensteuersystem mit nichtflüchtigem Speicher |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition |