DE112007000688T5 - Fehlerverwaltungstopologien - Google Patents
Fehlerverwaltungstopologien Download PDFInfo
- Publication number
- DE112007000688T5 DE112007000688T5 DE112007000688T DE112007000688T DE112007000688T5 DE 112007000688 T5 DE112007000688 T5 DE 112007000688T5 DE 112007000688 T DE112007000688 T DE 112007000688T DE 112007000688 T DE112007000688 T DE 112007000688T DE 112007000688 T5 DE112007000688 T5 DE 112007000688T5
- Authority
- DE
- Germany
- Prior art keywords
- data
- storage device
- partition
- write
- remote system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0793—Remedial or corrective actions
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0712—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a virtual computing platform, e.g. logically partitioned systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0721—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
- G06F11/0724—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU] in a multiprocessor or a multi-core unit
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0727—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/1435—Saving, restoring, recovering or retrying at system level using file system or storage system metadata
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1883—Methods for assignment of alternate areas for defective areas
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/20—Disc-shaped record carriers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/20—Disc-shaped record carriers
- G11B2220/25—Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
- G11B2220/2508—Magnetic discs
- G11B2220/2516—Hard disks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Library & Information Science (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Storage Device Security (AREA)
Abstract
Vorrichtung
für Verwaltung von Fehlern auf einer Zielspeichervorrichtung,
aufweisend:
eine integrierte Schaltung (IC), aufweisend einen Prozessor mit einer Vielzahl von Prozessorkernen, wobei die IC eine Hauptpartition, aufweisend mindestens einen Prozessorkern, der im Stande ist, ein Betriebssystem auszuführen, und eine eingebettete Partition, aufweisend mindestens einen anderen Prozessorkern, umfasst, und die eingebettete Partition im Stande ist, die folgenden Operationen durchzuführen:
Empfangen einer Schreibanfrage zum Schreiben von Daten auf eine Zielspeichervorrichtung,
Kommunizieren mit einem entfernten System, das an die eingebettete Partition gekoppelt ist, und erneutes Abbilden von der Schreibanfrage zugehörigen Daten auf das entfernte System;
Detektieren eines Fehlers beim Versuch, Daten auf die Speichervorrichtung zu schreiben, wobei unbestätigte (uncommitted) Daten, die an die Zielspeichervorrichtung gerichtet sind, hinterlassen werden; und
Kommunizieren mit dem entfernten System, um die der Schreibanfrage zugehörigen unbestätigten Daten abzurufen, und Schreiben der unbestätigten Daten auf die Zielspeichervorrichtung;
wobei die eingebettete Partition des Weiteren im...
eine integrierte Schaltung (IC), aufweisend einen Prozessor mit einer Vielzahl von Prozessorkernen, wobei die IC eine Hauptpartition, aufweisend mindestens einen Prozessorkern, der im Stande ist, ein Betriebssystem auszuführen, und eine eingebettete Partition, aufweisend mindestens einen anderen Prozessorkern, umfasst, und die eingebettete Partition im Stande ist, die folgenden Operationen durchzuführen:
Empfangen einer Schreibanfrage zum Schreiben von Daten auf eine Zielspeichervorrichtung,
Kommunizieren mit einem entfernten System, das an die eingebettete Partition gekoppelt ist, und erneutes Abbilden von der Schreibanfrage zugehörigen Daten auf das entfernte System;
Detektieren eines Fehlers beim Versuch, Daten auf die Speichervorrichtung zu schreiben, wobei unbestätigte (uncommitted) Daten, die an die Zielspeichervorrichtung gerichtet sind, hinterlassen werden; und
Kommunizieren mit dem entfernten System, um die der Schreibanfrage zugehörigen unbestätigten Daten abzurufen, und Schreiben der unbestätigten Daten auf die Zielspeichervorrichtung;
wobei die eingebettete Partition des Weiteren im...
Description
- Bereich
- Die vorliegende Offenlegung bezieht sich auf Fehlerverwaltungstopologien.
- Hintergrund
- Ein gewöhnliches Computersystem kann einen Host-Prozessor umfassen, der ein oder mehrere Betriebssysteme und Anwendungen ausführt, und kann zu Lese- und Schreibtransaktionen zu einem Zielspeichersystem im Stande sein. In dem gewöhnlichen Computersystem kann ein Schreibvorgang zur Zielspeichervorrichtung auf einen Fehler stoßen. Das gewöhnliche System ist nicht im Stande, basierend auf Systemrichtlinieninformationen einen Schreibfehler aufzulösen. Des Weiteren kann das Host-System Systemspeicher umfassen und das Host-System kann auf einen kritischen Fehler stoßen. Das gewöhnliche System ist außer Stande, den kritischen Fehler aufzulösen, um die Inhalte des Systemspeichers abzurufen.
- Kurzbeschreibung der Zeichnungen
- Merkmale und Vorteile von Ausführungsformen des beanspruchten Gegenstands werden klar, wenn die folgende detaillierte Beschreibung fortschreitet, und durch Bezug auf die Zeichnungen, in denen gleiche Bezugszeichen gleiche Teile wiedergeben, und in denen:
-
1 ein Diagramm ist, das eine Systemausführungsform darstellt; -
2 ein Diagramm ist, das einen Plattformverwaltungscontroller entsprechend einer Ausführungsform darstellt; -
3 ein Diagramm ist, das eine weitere Systemausführungsform darstellt; -
4 ein Diagramm ist, das beispielhafte Operationen entsprechend einer Ausführungsform darstellt; -
5 ein Diagramm ist, das eine weitere Systemausführungsform darstellt; -
6 ein Diagramm ist, das beispielhafte Operationen entsprechend einer weiteren Ausführungsform darstellt; -
7 ein Diagramm ist, das eine weitere Systemausführungsform darstellt; -
8 ein Diagramm ist, das beispielhafte Operationen entsprechend einer weiteren Ausführungsform darstellt; -
9 ein Diagramm ist, das eine weitere Systemausführungsform darstellt; -
10 eine weitere Systemausführungsform des beanspruchten Gegenstands darstellt; -
11 ein Diagramm ist, das beispielhafte Operationen entsprechend einer weiteren Ausführungsform darstellt; und -
12 ein Diagramm ist, das beispielhafte Operationen entsprechend einer weiteren Ausführungsform darstellt. - Obwohl die folgende detaillierte Beschreibung im Verlauf Bezug auf darstellende Ausführungsformen nimmt, sind dem Fachmann zahlreiche Alternativen, Modifikationen und Variationen davon verständlich. Entsprechend ist beabsichtigt, dass der beanspruchte Gegenstand breitgefächert betrachtet und nur so definiert wird, wie in den begleitenden Ansprüchen dargelegt ist.
- Detaillierte Beschreibung
-
1 stellt eine Systemausführungsform100 des beanspruchten Gegenstands dar. Das System100 kann allgemein einen Host-Prozessor112 , einen ersten Bus122 , einen zweiten Bus126 , ein Benutzerschnittstellensystem116 , einen Chipsatz114 , Systemspeicher121 , Plattformverwaltungscontrollerschaltung110 und Flash-Speicher106 umfassen. Diese Ausführungsform kann ebenfalls eine Speichervorrichtung118 umfassen. Die Speichervorrichtung118 kann z. B. einen magnetischen, optischen und/oder Halbleiterdatenträger, z. B. eine Festplattenvorrichtung, umfassen. Der Host-Prozessor112 kann eine Vielzahl von im Stand der Technik bekannten Prozessoren, wie z. B. einen Intel® Pentium® IV-Prozessor, der vom Abtretungsempfänger der vorliegenden Anmeldung kommerziell verfügbar ist, umfassen. Die Busse122 ,126 können unterschiedliche Bustypen umfassen, um Daten und Anweisungen zu übertragen. So kann z. B. Bus122 die Peripheral Component Interconnect (PCI) ExpressTM Basisspezifikation, Revision 1.0, veröffentlicht am 22. Juli 2002, verfügbar von der PCI Special Interest Group, Portland, Oregan, U.S.A. (nachfolgend als ein „PCI-ExpressTM-Bus" bezeichnet), erfüllen. Der Bus126 kann eine Serial Peripheral Interface (SPI) Spezifikation (nachfolgend als ein „SPI-Bus" bezeichnet) umfassen/erfüllen. Prozessor112 , Systemspeicher121 , Chipsatz114 , Busse122 und126 , Flash-Speicher106 und Plattformverwaltungscontrol lerschaltung110 können auf einer einzigen Platine enthalten sein, wie z. B. einem Motherboard132 , und diese Komponenten können kollektiv oder einzeln ein Host-System formen. - Die Benutzerschnittstelle
116 kann eine Vielzahl von Vorrichtungen für menschliche Benutzer zur Eingabe von Anweisungen und/oder Daten und zum Überwachen des System, wie z. B. eine Tastatur, eine Zeigevorrichtung und eine Videoanzeige, umfassen. Der Chipsatz114 kann ein Host-Bridge/Hub-System (nicht gezeigt) umfassen, das den Prozessor112 , Systemspeicher121 , Benutzerschnittstellensystem116 , Speichervorrichtung118 und Plattformverwaltungscontrollerschaltung110 miteinander und an den Bus122 koppelt. Der Chipsatz114 kann ebenfalls im Stande sein, Flash-Speicher106 , Host-Prozessor112 , Systemspeicher121 und Plattformverwaltungscontrollerschaltung110 miteinander und an den Bus126 zu koppeln. Der Chipsatz114 kann integrierte Schaltungschips, wie z. B. die, die aus den integrierten Schaltungschipsätzen, die vom Abtretungsempfänger der vorliegenden Anmeldung kommerziell verfügbar sind, ausgewählt wurden (z. B. graphische Speicher- und I/O-Controller-Hub-Chipsätze), umfassen, auch wenn andere integrierte Schaltungschips ebenfalls oder alternativ genutzt werden können. - Der Systemspeicher
121 kann einen oder mehrere der folgenden Speichertypen umfassen: Halbleiter-Firmware-Speicher, programmierbaren Speicher, nicht flüchtigen Speicher, Festwertspeicher, elektrisch programmierbaren Speicher, Direktzugriffsspeicher, Flash-Speicher (der z. B. NAND- oder NOR-Typ-Speicherstrukturen umfassen kann), Magnetplattenspeicher und/oder optischen Plattenspeicher. In dieser Ausführungsform kann der Speicher106 einen Flash-Speicher umfassen. Entweder zusätzlich oder alternativ können die Speicher121 und/oder106 andere und/oder später entwickelte computerlesbare Speichertypen umfassen. Maschinenlesbare Firmware-Programminstruktionen können in Speichern121 und/oder106 gespeichert sein. Wie unten beschrieben, kann auf/können diese Instruktionen durch den Host-Prozessor112 und/oder Plattformverwaltungscontroller110 zugegriffen und ausgeführt werden. Diese Instruktionen können, wenn sie von dem Host-Prozessor112 und/oder Plattformverwaltungscontroller110 ausgeführt werden, darin resultieren, dass der Host-Prozessor112 und/oder Plattformverwaltungscontroller110 die Operationen durchführt, die hier, als würden sie durch den Host-Prozessor112 und/oder die Plattformverwaltungscontrollerschaltung110 durchgeführt, beschrieben werden. - Der Host-Prozessor
112 kann neben anderen Dingen im Stande sein, einen oder mehrere Eingabe-/Ausgabe(I/O)-Vorgänge zum Lesen und/oder Schreiben von Daten auf die oder von der Zielspeichervorrichtung118 zu generieren. Die Zielspeichervorrichtung kann z. B. eine lokale Speichervorrichtung (z. B. eine an das Host-System100 gekoppelte lokale Vorrichtung) und/oder eine entfernte Speichervorrichtung umfassen. Alternativ oder zusätzliche kann die Speichervorrichtung118 ein oder mehrere Redundant Array of Independent Disks (RAID) und/oder periphere Vorrichtungen aufweisen. Der Host-Prozessor112 kann diese I/O-Vorgänge als Antwort auf z. B. Boot-Operationen des Host-Systems, Betriebssystem(OS)-Operationen und/oder Anwendungen (z. B. Softwareanwendungen, die eine oder mehrere Instruktionen auf dem Host-Prozessor112 ausführen und/oder Firmware-Instruktionen, die auf dem Host-System laufen) generieren. Alternativ oder zusätzlich können Zusatzvorrichtungen, wie z. B. an das Host-System132 gekoppelte Zusatzkarten (nicht gezeigt) und/oder entfernte Anwendungen (nicht gezeigt), im Stande sein, einen oder mehrere Eingabe-/Ausgabe(I/O)-Vorgänge zum Lesen und/oder Schreiben von Daten auf die oder von der Speichervorrichtung118 zu generieren. - Die Plattformverwaltungscontrollerschaltung
110 kann im Stande sein, den Lese- und/oder Schreibzugriff auf die Speichervorrichtung118 über den Bus122 zu kontrollieren. Wie hier in jeder Ausführungsform verwendet, kann „Schaltung" z. B. eine selbstständig oder in jeder Kombination festverdrahtete Schaltung, programmierbare Schaltung, Zustandsautomatenschaltung und/oder Firmware, die auf programmierbarer Schaltung ausgeführte Instruktionen speichert, aufweisen. Ebenfalls kann hier in jeder Ausführungsform die Schaltung110 als eine oder mehrere integrierte Schaltungen ausgeführt sein und/oder einen Teil davon bilden. Wie hier in beliebigen Ausführungsformen verwendet, meint „integrierte Schaltung" eine Halbleitervorrichtung und/oder mikroelektronische Vorrichtung, wie z. B. einen integrierten Halbleiterschaltungschip. Wie hier detaillierter beschrieben wird, kann Schaltung110 ebenfalls im Stande sein, einen Schreibfehler auf Speichervorrichtung118 aufzufinden und erneut ein Datenschreiben auf einen anderen Bereich der Speichervorrichtung118 abzubilden. Als Antwort auf eine Leseanfrage kann Schaltung110 im Stande sein, die Datenleseanfrage auf den anderen Bereich auf der Speichervorrichtung, in dem die Daten als ein Resultat der Operation des erneuten Abbildens, die von der Schaltung110 durchgeführt wird, angesiedelt sein können, umzuleiten. - Die Plattformverwaltungscontrollerschaltung
110 kann ebenfalls im Stande sein, mit einem oder mehreren entfernten Systemen140 über ein Netzwerk124 und eine Nachrichtenverbindung125 zu kommunizieren. Das entfernte System140 kann z. B. ein entferntes Server-System oder eine entfernte Workstation (die ähnlich zum Host-System132 sein kann) aufweisen, die eine oder mehrere Speichervorrichtungen und/oder ein Speicher-Array (das z. B. ein Speicher-Array aufweisen kann, das an ein oder mehrere entfernte Systeme gekoppelt ist und von diesen kontrolliert wird) aufweisen kann. In dieser Ausführungsform kann das entfernte System140 im Stande sein, Daten, die auf der Speichervorrichtung118 gespeichert sind, zumindest teilweise zu speichern. Wie später detaillierter beschrieben wird, kann die Plattformverwaltungsschaltung110 im Stande sein, den Lese- und/oder Schreibzugriff auf ein oder mehrere entfernte Systeme140 zumindest teilweise basierend auf einem Lese- und/oder Schreibzugriff auf die Speichervorrichtung118 zu kontrollieren. In dieser Ausführungsform kann Schaltung110 z. B. im Stande sein, einen Schreibfehler auf Speichervorrichtung118 aufzufinden. Die Schaltung110 kann ebenfalls im Stande sein, festzustellen, ob sich die dem Schreibfehler zugeordneten Daten auf einem oder mehreren entfernten Systemen140 befinden, und, falls dem so ist, eine Abbildung auf die Daten auf dem entfernten System140 zu erzeugen. Als Antwort auf eine Leseanfrage kann Schaltung110 im Stande sein, die Daten von dem entfernten System140 abzurufen. - Die Plattformverwaltungscontrollerschaltung
110 kann im Stande sein, den Lese- und/oder Schreibzugriff auf den Systemspeicher121 über den Bus122 und den Chipsatz114 zu kontrollieren. Die Schaltung110 kann ebenfalls im Stande sein, mindestens einen kritischen Fehler auf dem Host-System zu detektieren und die Inhalte des Systemspeichers121 zu lesen. Ein „kritischer Fehler", wie hier in jeder Ausführungsform verwendet wird, kann eine Bedingung aufweisen, die den Host-Prozessor112 und/oder ein auf dem Host-Prozessor laufendes OS oder Anwendung und/oder Boot-Instruktionen (die im Flash-Speicher106 gespeichert sein können) dazu veranlassen, die beabsichtigte Durchführung zu stoppen (und die das Host-System132 inoperabel machen kann). Die Schaltung110 kann ebenfalls im Stande sein, die Inhalte des Systemspeichers121 auf die Speichervorrichtung118 und/oder auf ein oder mehrere entfernte Systeme140 zu schreiben. - Die Plattformverwaltungscontrollerschaltung
110 kann ebenfalls im Stande sein, Out-of-Band(OOB)-Lese- und/oder Schreiboperationen auf106 und/oder Speichervorrichtung118 zu generieren. OOB-Lese- und/oder Schreiboperationen können z. B. eine oder mehrere Lese- und/oder Schreiboperationen aufweisen, die unabhängig von einem OS, das durch den Host-Prozessor im Host-System132 ausgeführt wird, durchgeführt werden. -
2 ist ein Diagramm, das detaillierter die Plattformverwaltungscontrollerschaltung110 darstellt. In2 wurden bestimmte Teile des in1 dargestellten System100 um der Klarheit willen ausgelassen (z. B. Platine132 ), es ist aber verständlich, dass gleiche Teile aus2 in einer Weise, die mit einer in1 dargestellten Ausführungsform konsistent ist, oder alternativ in anderen Systemimplementierungen implementiert werden können, ohne von dieser Ausführungsform abzuweichen. Die Schaltung110 kann eine Prozessorschaltung204 umfassen, die im Stande sein kann, Operationen durchzuführen, die hier als zugehörig zur Plattformschaltung110 beschrieben werden. Die Prozessorschaltung204 kann eine entsprechende Schaltung aufweisen, die mit der Intel® XScaleTM Core-Mikroarchitektur, die in „Intel® XScaleTM Core Developers Manual", veröffentlicht Dezember 2000 durch den Abtretungsempfänger der vorliegenden Anmeldung, beschrieben wurde, kompatibel ist oder diese erfüllt. Natürlich kann die Prozessorschaltung204 andere Prozessorkernschaltungstypen aufweisen, ohne von dieser Ausführungsform abzuweichen. Die Schaltung110 kann ebenfalls Speicher210 umfassen. Der Speicher210 kann z. B. computerlesbaren Programminstruktionsspeicher aufweisen, der entsprechende Sätze von Micro-Code-Programminstruktionen enthalten kann, die von der Prozessorschaltung204 ausgeführt werden können. Die Ausführung dieser entsprechenden Sätze von Programminstruktionen durch die Prozessorschaltung204 kann im Abwickeln von Operationen resultieren, die hier als durch die Prozessorschaltung204 ausgeführt beschrieben werden. - Der Speicher
210 kann eine oder mehrere Plattformrichtlinieninstruktionen aufweisen, die eine Regel oder einen Satz von Regeln definieren können, die z. B. die Verwaltung der Speichervorrichtung118 und Richtlinienregeln für den Lese- und/oder Schreibzugriff auf den Flash-Speicher106 vorschreiben können. Beispielhafte Plattformrichtlinieninstruktionen können die Größe des reservierten Abschnitts204 , Aktivieren oder Deaktivieren des Verbergens des reservierten Abschnitts204 , Aktivieren und/oder Deaktivieren des Lese- und/oder Schreibzugriffs auf den Flash-Speicher106 , Datenschreib- und/oder Lesevorgängen auf den Flash-Speicher106 zugeordneten Prioritätsregeln und/oder andere Plattformrichtlinieninstruktionen umfassen. Die Prozessorschaltung204 kann Plattformrichtlinieninstruktionen während des Betriebs der Plattformverwaltungscontrollerschaltung110 ausführen. Natürlich sind dies nur beispielhafte Instruktionen und andere Plattformrichtlinieninstruktionen sind hier ebenso vorgesehen. - In dieser Ausführungsform kann die Schaltung
110 ebenfalls eine PCI-Express(PCIe)-Schnittstellenschaltung202 umfassen, die der Prozessorschaltung204 erlauben kann, Anweisungen und Daten mit dem Chipsatz114 und/oder der Speichervorrichtung118 über den PCIe-Bus122 auszutauschen. Die Schaltung110 kann ebenfalls eine SPI-Schnittstellenschaltung208 umfassen, die der Prozessorschaltung204 erlauben kann, Anweisungen und Daten mit dem Flash-Speicher106 über den SPI-Bus126 auszutauschen. Allerdings sind eine andere Bustechnologie und eine einem Bus entsprechende Busschnittstellenschaltung ebenso in dieser Ausführungsform vorgesehen. Die Schaltung110 kann des Weiteren eine Netzwerkschnittstellenschaltung206 umfassen, die der Prozessorschaltung204 erlauben kann, Anweisungen und Daten mit einem oder mehreren entfernten Systemen über das Netzwerk124 und die Nachrichtenverbindung125 auszutauschen. - Das Netzwerk
124 kann das Ethernet-Kommunikationsprotokoll erfüllen oder mit diesem kompatibel sein, das im Stande ist, Kommunikation mittels eines Transmission Control Protocol/Internet Protocol (TCP/IP) zu erlauben. Das Ethernet-Protokoll kann den Ethernet-Standard, der von dem Institute of Electrical and Electronics Engineers (IEEE) veröffentlicht wurde, betitelt „IEEE 802.3 Standard", veröffentlicht März 2002, und/oder spätere Versionen dieses Standards erfüllen oder mit diesen kompatibel sein. Alternativ oder zusätzlich kann das Netzwerk124 im Stande sein, mittels eines X.25-Kommunikationsprotokolls zu kommunizieren. Das X-25-Kommunikationsprotokoll kann einen von der International Telecommunication Union-Telecommunication Standardization Sector (ITU-T) veröffentlichten Standard erfüllen oder mit diesem kompatibel sein. Alternativ oder zusätzlich kann das Netzwerk124 im Stande sein, mittels eines Frame-Relay-Kommunikationsprotokolls zu kommunizieren. Das Frame-Relay-Kommunikationsprotokoll kann mit einem von dem Consultative Committee for International Telegraph and Telephone (CCITT) und/oder dem American National Standards Instituts (ANSI) veröffentlichten Standard erfüllen oder mit diesem kompatibel sein. Alternativ oder zusätzlich kann das Netzwerk124 im Stande sein, mittels eines Asynchronous Transfer Mode(ATM)-Kommunikationsprotokolls zu kommunizieren. Das ATM-Kommunikationsprotokoll kann einen ATM-Standard, der von dem ATM-Forum veröffentlicht wurde, betitelt „ATM-MPLS Network Interworking 1.0", veröffentlicht August 2001, und/oder spätere Versionen dieses Standards erfüllen oder mit diesen kompatibel sein. Natür lich sind verschiedene und/oder nachentwickelte Kommunikationsprotokolle ebenso hier vorgesehen. -
3 ist ein Diagramm, das eine weitere Systemausführungsform300 darstellt. In3 wurden bestimmte Teile des in1 dargestellten Systems100 und der in2 dargestellten Plattformverwaltungscontrollerschaltung110 um der Klarheit willen ausgelassen (z. B. Platine132 , Netzwerk124 und entferntes System140 ), es ist aber verständlich, dass gleiche Teile aus3 in einer Weise, die mit einer in1 und/oder2 dargestellten Ausführungsform konsistent ist, oder alternativ in anderen Systemimplementierungen implementiert werden können, ohne von dieser Ausführungsform abzuweichen. - In dieser Ausführungsform kann die Speichervorrichtung
118 einen Datenbereich302 und einen reservierten Bereich304 umfassen. Der Datenbereich302 kann eine Vielzahl von Sektoren 1 ... n aufweisen, auf die der Host-Prozessor112 , die Schaltung110 und/oder der Chipsatz114 zugreifen können, um darauf Daten zu lesen und/oder zu schreiben. In dieser Ausführungsform kann die Plattformverwaltungscontrollerschaltung110 im Stande sein, die Speichervorrichtung118 zu kontrollieren, um den reservierten Bereich304 zu reservieren. „Reservierter Bereich", wie hier mit Verweis auf die Speichervorrichtung118 verwendet wird, kann einen Abschnitt der Speichervorrichtung118 umfassen, der allgemein für die Controllerschaltung110 zugänglich und für ein auf dem Host-System132 ausgeführtes OS unzugänglich sein kann. Abhängig von dem Datenträgertyp der Speichervorrichtung118 kann die Größe des reservierten Bereichs304 durch z. B. einen ausgewählten LBA-Adressenbereich und/oder eine ausgewählte Anzahl von Sektoren (z. B. Sektoren 1 ... m) definiert werden. Die Plattformverwaltungscontrollerschaltung110 kann ebenfalls im Stande sein, den reservierten Bereich304 vor einem Zugriff durch eine andere Schaltung zu verbergen, wie z. B. Verbergen des reservierten Abschnitts304 vor dem Host-Prozessor112 und/oder einem OS oder einer Anwendung, das/die auf dem Host-System132 und/oder dem Chipsatz114 und/oder einem oder mehreren entfernten Systemen (nicht gezeigt) ausgeführt wird, um den Host-Prozessor112 und/oder ein OS oder eine Anwendung, das/die auf dem Host-System132 und/oder dem Chipsatz114 und/oder einem oder mehreren entfernten Systemen ausgeführt wird, daran zu hindern, auf den reservierten Bereich304 der Speichervorrichtung118 zuzugreifen. In dieser Ausführungsform kann die Schaltung110 im Stande sein, eine Anfrage zum Schreiben von Daten in den Datenbereich302 der Speichervorrichtung118 zu empfangen. Die Schreibanfrage kann z. B. durch den Host-Prozessor112 und/oder den Chipsatz114 generiert werden. - Falls ein Fehler während eines Datenschreibversuchs angetroffen wird, kann die Speichervorrichtung
118 im Stande sein, zu signalisieren, dass ein Fehler aufgetreten ist. Als Antwort auf ein Signal von der Speichervorrichtung118 , dass ein Schreibfehler aufgetreten ist, kann die Schaltung110 ebenfalls im Stande sein, einen Schreibfehler in der Speichervorrichtung118 zu detektieren, der während einer Datenschreiboperation entstehen kann. Der Fehler kann z. B. einen fehlgeschlagenen Datenschreibversuch auf einen oder mehrere Sektoren der Speichervorrichtung118 , die in3 als ein „X" bezeichnet werden, umfassen. - Als Antwort auf den Schreibfehler kann Schaltung
110 im Stande sein, die Daten erneut auf den reservierten Bereich304 der Speichervorrichtung118 abzubilden. „Erneutes Abbilden" oder „erneut abbilden", wie hier verwendet, kann als ein Wechseln der physikalischen Speicherstelle der Daten von einem Sektor zu einem anderen Sektor definiert werden. „Erneutes Abbilden" kann ebenfalls ein Aktualisieren und/oder Ändern einer Allocation-Table umfassen, die definieren kann, wo die Daten auf der Speichervorrichtung118 angesiedelt sind. Somit kann z. B., wie in3 dargestellt, ein Sektor „X" ein fehlerhafter Sektor und die Schaltung110 im Stande sein, Datenschreibversuche auf einen Sektor „Y" des reservierten Bereichs304 erneut abzubilden. Die Schaltung110 kann ebenfalls im Stande sein, eine Abbildung zu erzeugen, die die Speicherstelle der „Y"-Daten im reservierten Bereich304 auf den „X"-Sektor des Datenbereichs302 verweist. Die Schaltung110 kann ebenfalls im Stande sein, eine Leseanfrage zu empfangen und die Leseanfrage mit der Abbildung zu vergleichen und, falls die Leseanfrage Daten betrifft, die sich im Sektor „X" im Datenbereich302 befunden haben könnten, kann die Schaltung110 im Stande sein, die Leseanfrage auf die erneut abgebildeten Daten im Sektor „Y" des reservierten Bereichs304 umzuleiten. - Die Plattformverwaltungscontrollerschaltung
110 kann ebenfalls im Stande sein, bei dem Schreib- und/oder Lesezugriff auf die Speichervorrichtung118 zu vermitteln, um den reservierten Bereich304 vor einem Zugriff zu schützen. Somit kann z. B., falls der Host-Prozessor112 einen I/O-Vorgang zum Lesen oder Schreiben von Daten auf die Speichervorrichtung118 generiert, die Plattformverwaltungscontrollerschaltung110 diese Anfrage (über den Bus120 ) empfangen und die Lese- und/oder Schreibanfrage verweigern, falls die Daten in dem reservierten Bereich304 der Speichervorrichtung118 gespeichert sind (oder in diesen geschrieben werden sollen), und/oder die Lese- und/oder Schreibanfrage gestatten, falls die Daten in dem Datenbereich302 der Speichervorrichtung118 gespeichert sind (oder in diesen geschrieben werden sollen). -
4 ist ein Flussdiagramm400 , das beispielhafte Operationen darstellt, die gemäß einer Ausführungsform durchgeführt werden können. Die Operationen können ein Reservieren eines reservierten Bereichs in einer Speichervorrichtung umfassen402 . Die Operationen können ebenfalls ein Empfangen einer Schreibanfrage zum Schreiben von Daten in die Speichervorrichtung umfassen404 . Die Operationen können ebenfalls ein Detektieren eines Schreibfehlers in der Speichervorrichtung umfassen406 . Die Operationen können weiterhin ein erneutes Abbilden der Daten auf den reservierten Bereich in der Speichervorrichtung umfassen408 . Die Operationen können ebenfalls ein Empfangen einer Leseanfrage für Daten in der Speichervorrichtung umfassen410 . Falls die der Leseanfrage zugeordneten Daten erneut auf den reservierten Bereich der Speichervorrichtung abgebildet wurden, können die Operationen weiterhin ein Umleiten der Leseanfrage auf die erneut abgebildeten Daten in dem reservierten Bereich der Speichervorrichtung umfassen412 . -
5 ist ein Diagramm, das eine weitere Systemausführungsform500 darstellt. In5 wurden bestimmte Teile des in1 dargestellten Systems100 und der in2 dargestellten Plattformverwaltungscontrollerschaltung110 um der Klarheit willen ausgelassen (z. B. Platine132 ), es ist aber verständlich, dass gleiche Teile aus5 in einer Weise, die mit einer in1 und/oder2 dargestellten Ausführungsform konsistent ist, oder alternativ in anderen Systemimplementierungen implementiert werden können, ohne von dieser Ausführungsform abzuweichen. - In dieser Ausführungsform kann die Speichervorrichtung
118 einen Datenbereich302 umfassen. Der Datenbereich302 kann eine Vielzahl von Sektoren 1 ... n aufweisen, auf die der Host-Prozessor112 , der Chipsatz114 , das entfernte System140 und/oder die Schaltung110 zugreifen können, um darauf Daten zu lesen und/oder zu schreiben. Die Schaltung110 kann im Stande sein, mit einem oder mehreren entfernten Systemen140 über ein Netzwerk142 zu kommunizieren. Wie angegeben, kann ein oder mehrere entfernte Systeme140 im Stande sein, die Daten als Ganzes oder in Teilen auf der Speichervorrichtung118 redundant zu speichern. In dieser Ausführungsform kann die Schaltung110 im Stande sein, eine Anfrage zum Schreiben von Daten in den Datenbereich302 der Speichervorrichtung118 zu empfangen. Die Schreibanfrage kann z. B. durch den Host-Prozessor112 und/oder den Chipsatz114 generiert werden. In dieser Ausführungsform kann die Schaltung110 im Stande sein, einen Datenlese- und/oder Schreibzugriff, der auf die Speichervorrichtung118 gerichtet ist, durchzufüh ren, als Antwort auf eine Datenlese- und/oder Schreibanfrage von z. B. Host-Prozessor112 und/oder Chipsatz114 (die eine OS-Lese- und/oder Schreibanfrage umfassen kann). Falls ein Fehler während eines Datenschreibversuchs angetroffen wird, kann die Speichervorrichtung118 im Stande sein, zu signalisieren, dass ein Fehler aufgetreten ist. Als Antwort auf ein Signal von der Speichervorrichtung118 , dass ein Schreibfehler aufgetreten ist, kann Schaltung110 ebenfalls im Stande sein, einen Schreibfehler in der Speichervorrichtung118 zu detektieren, der während einer Datenschreiboperation entstehen kann. Der Fehler kann z. B. einen Datenschreibversuch auf einen oder mehrere fehlerhafte Sektoren der Speichervorrichtung118 , die in5 als eine Vielzahl von „X"s bezeichnet werden, umfassen. - Als Antwort auf den Schreibfehler kann Schaltung
110 im Stande sein, mit einem oder mehreren entfernten Systemen140 (über das Netzwerk124 ) zu kommunizieren, um festzustellen, ob die der Schreibanfrage zugeordneten Daten auf einem oder mehreren entfernten Systemen140 existieren. Dies wird in5 als die Vielzahl von „Y"s dargestellt, die die auf dem entfernten System140 verfügbaren Daten repräsentieren. Falls die Daten entfernt existieren, kann die Schaltung110 im Stande sein, eine Abbildung zu erzeugen, die die Speicherstelle der „Y"-Daten auf dem entfernten System auf den entsprechenden „X"-Sektor im Datenbereich302 der Speichervorrichtung119 verweist. Die Schaltung110 kann ebenfalls im Stande sein, eine Leseanfrage zu empfangen und die Leseanfrage mit der Abbildung zu vergleichen und, falls die Leseanfrage Daten betrifft, die sich auf einem oder mehreren „X"-Sektoren im Datenbereich302 befunden haben könnten, kann die Schaltung110 im Stande sein, die Leseanfrage auf die erneut abgebildeten Daten in den entsprechenden „Y"-Sektoren des entfernten Systems140 umzuleiten und die Daten von dem entfernten System140 abzurufen. - Falls das entfernte System nicht verfügbar ist oder die „Y"-Daten (die den für die „X"-Sektoren der Speichervorrichtung
118 bestimmten Daten entsprechen) nicht enthält, kann die Schaltung110 alternativ oder zusätzlich erneut die Daten auf den reservierten Bereich304 der Speichervorrichtung118 in einer oben mit Bezug auf die Ausführungsform aus3 beschriebenen Weise abbilden. Die Schaltung110 kann ebenfalls im Stande sein, eine Abbildung zu erzeugen, die die Speicherstelle der „Y"-Daten im reservierten Bereich304 auf den „X"-Sektor im Datenbereich302 verweist, und in einer oben mit Bezug auf3 beschriebenen Weise Leseanfragen für diese Daten erneut auf den reservierten Bereich304 abzubilden. Falls das entfernte System140 keine „Y"-Daten (die den für die „X"-Sektoren der Speichervorrichtung118 bestimmten Daten entsprechen) enthält, kann die Schaltung110 alterna tiv oder zusätzlich im Stande sein, die Daten auf das entfernte System140 erneut abzubilden und somit die Daten entfernt zu speichern. -
6 ist ein Flussdiagramm, das beispielhafte Operationen600 darstellt, die gemäß einer weiteren Ausführungsform durchgeführt werden können. Die Operationen können ein Kommunizieren mit einem entfernten System umfassen602 . Die Operationen können weiterhin ein Empfangen einer Schreibanfrage zum Schreiben von Daten auf eine Zielspeichervorrichtung umfassen604 . Die Operationen können ebenfalls ein Detektieren eines Schreibfehlers in der Zielspeichervorrichtung umfassen606 . Die Operationen können ebenfalls ein Auffinden der der Schreibanfrage zugeordneten Daten auf dem entfernten System umfassen608 . Falls sich die Daten entfernt befinden, können die Operationen ebenfalls ein Erzeugen einer Abbildung auf die Daten auf dem entfernten System umfassen610 . Die Operationen können ebenfalls ein Empfangen einer Leseanfrage für Daten auf der Zielspeichervorrichtung umfassen612 . Falls die der Leseanfrage zugeordneten Daten auf das entfernte System erneut abgebildet wurden, können die Operationen weiterhin ein Abrufen der Daten von dem entfernten System umfassen612 . -
7 ist ein Diagramm, das eine weitere Systemausführungsform700 darstellt. In7 wurden bestimmte Teile des in1 dargestellten Systems100 und der in2 dargestellten Plattformverwaltungscontrollerschaltung110 um der Klarheit willen ausgelassen (z. B. Platine132 ), es ist aber verständlich, dass gleiche Teile aus7 in einer Weise, die mit einer in1 und/oder2 dargestellten Ausführungsform konsistent ist, oder alternativ in anderen Systemimplementierungen implementiert werden können, ohne von dieser Ausführungsform abzuweichen. - In dieser Ausführungsform kann die Plattformverwaltungscontrollerschaltung
110 im Stande sein, die Speicherinhalte702 des Systemspeichers121 zu lesen. Die Schaltung110 kann ebenfalls im Stande sein, die Speicherinhalte720 des Systemspeichers721 auf die Speichervorrichtung118 zu schreiben (und diese Operation kann in einer Weise durchgeführt werden, die der mit Bezug auf3 oben beschriebenen Ausführungsform ähnlich ist). Alternativ oder zusätzlich kann die Schaltung110 ebenfalls im Stande sein, die Speicherinhalte720 des Systemspeichers121 auf einen oder mehrere entfernte Systeme140 über das Netzwerk124 zu schreiben (und diese Operation kann in einer Weise durchgeführt werden, die der mit Bezug auf5 oben beschriebenen Ausführungsform ähnlich ist). So kann z. B. ein kritischer Fehler auftreten, der ein auf einem Host-System ausgeführtes OS und/oder eine Applikation daran hindern kann, auf den Speicher zuzugreifen. Falls ein kritischer Fehler auftritt, kann der Speicherprozessor112 und/oder der Chipsatz114 im Stande sein, zu signalisieren, dass ein Fehler aufgetreten ist. Als Antwort auf ein Signal von dem Prozessor112 und/oder dem Chipsatz114 , dass ein kritischer Fehler aufgetreten ist, kann die Schaltung110 im Stande sein, einen kritischen Fehler zu detektieren und die Speicherinhalte121 auf die Speichervorrichtung118 oder das entfernte System140 (oder auf beiden) zu speichern. Dies kann z. B. eine Prüfung der Daten im Systemspeicher121 zum Zeitpunkt des kritischen Fehlers ermöglichen. -
8 ist ein Flussdiagramm, das beispielhafte Operationen800 darstellt, die gemäß einer weiteren Ausführungsform durchgeführt werden können. Die Operationen können ein Detektieren eines kritischen Fehlers umfassen802 . Die Operationen können weiterhin ein Lesen der Speicherinhalte des Systemspeichers umfassen804 . Die Operationen können ebenfalls ein Schreiben der Speicherinhalte auf eine Zielspeichervorrichtung umfassen806 . Alternativ oder zusätzlich können die Operationen ein Kommunizieren mit einem entfernten System808 und Schreiben der Speicherinhalte auf das entfernte System umfassen810 . -
9 stellt eine weitere Systemausführungsform900 des beanspruchten Gegenstands dar. In dieser Ausführungsform kann die Plattformverwaltungscontrollerschaltung110' in einer Schaltungskarte120 enthalten sein, die an den Bus122 gekoppelt sein kann. Wie bei der Ausführungsform aus1 kann die Plattformverwaltungscontrollerschaltung110' in einem oder mehreren integrierten Schaltungschips enthalten sein oder einen Teil von diesen formen. Diese Ausführungsform kann einen Schaltungskarteneinschub130 umfassen. Die Schaltungskarte120 kann so konstruiert sein, dass es möglich ist, sie in den Einschub130 einzustecken. Wenn die Schaltungskarte120 ordnungsgemäß im Einschub130 eingesteckt ist, können Verbinder134 und137 elektrisch und mechanisch miteinander gekoppelt sein. Wenn die Verbinder134 und137 so miteinander gekoppelt sind, kann die Karte120 elektrisch an den Bus122 gekoppelt werden und kann Daten und/oder Anweisungen mit dem Systemspeicher121 , dem Host-Prozessor112 , dem Benutzerschnittstellensystem116 und/oder dem Flash-Speicher106 über den Bus122 und/oder den Bus126 und den Chipsatz114 austauschen. Alternativ oder zusätzlich kann die Plattformverwaltungscontrollerschaltung110' Anweisungen und Daten mit dem Host-System132' und einem oder mehreren an das Netzwerk124' gekoppelten entfernten Systemen über die Nachrichtenverbindung125' austauschen. Der Betrieb der Plattformverwaltungscontrollerschaltung110 in dieser Ausführungsform kann mit dem mit Bezug auf1 –8 oben beschriebenen Betrieb identisch sein, außer dass die SPI-Busschnittstellenschaltung308 weggelassen werden kann und stattdessen Anweisungen und Daten zwischen der Schaltungskarte120 und dem Flash-Speicher106 über den Chipsatz114 ausgetauscht werden können. -
10 stellt eine weitere Systemausführungsform1000 des beanspruchten Gegenstands dar. Das System1000 kann generell einen Mehrfachkern(Multi-Core)-Host-Prozessor112' , einen Chipsatz114 , Systemspeicher121' , In-Band-Netzwerkschnittstellenschaltung1006 , Speichervorrichtung118 und Out-of-Band(OOB)-Netzwerkschnittstellenschaltung1008 umfassen, die im Stande ist, mit einem oder mehreren entfernten Systemen140 über das Netzwerk124 über die Nachrichtenverbindung125 zu kommunizieren. Der Multi-Core-Host-Prozessor112' kann jede Auswahl von im Stand der Technik bekannten Prozessoren mit einer Vielzahl von Kernen, wie z. B. einen Intel® Pentium® D Dual Core-Prozessor, der von dem Abtretungsempfänger des Gegenstands der Ameldung kommerziell verfügbar ist, umfassen. - In dieser Ausführungsform kann der Multi-Core-Prozessor
112' eine Vielzahl von Kern-CPUs umfassen, wie z. B. CPU1, CPU2, CPU3 und CPU4. Natürlich können zusätzliche oder weniger Kerne in dieser Ausführungsform benutzt werden. Der Multi-Core-Prozessor112' kann logisch und/oder physikalisch in eine Vielzahl von Partitionen unterteilt werden. So kann z. B. in dieser Ausführungsform der Prozessor112' in eine Hauptpartition1004 , die CPU1 und CPU2 umfasst, und eine eingebettete Partition1002 , die CPU3 und CPU4 umfasst, aufgeteilt werden. Die Hauptpartition1004 kann im Stande sein, ein Betriebssystem (wie z. B. Windows, Linux, usw.) auszuführen. Die eingebettete Partition1002 kann im Stande sein, I/O-Vorgänge mit der Speichervorrichtung118 und/oder der OOB-Netzwerkschnittstelle1008 auszuführen, wie detaillierter nachfolgend beschrieben wird. - In dieser Ausführungsform kann der Speicher
121' logisch und/oder physikalisch in Systemspeicher1 , der im Stande ist, Anweisungen, Instruktionen und/oder Daten für Operationen auf der Hauptpartition1004 zu speichern, und Systemspeicher2 , der im Stande ist, Anweisungen, Instruktionen und/oder Daten für Operationen auf der eingebetteten Partition1002 zu speichern, partitioniert werden. Die OOB-Netzwerkschnittstelle1008 und/oder die In-Band-Netzwerkschnittstelle1006 können eine Netzwerkschnittstellenschaltung auf einer Karte umfassen, die im Stande ist, an einen Bus gekoppelt zu werden (ähnlich zur Karte120 aus9 ). In dieser Ausführungsform kann die OOB-Netzwerkschnittstelle1008 im Stande sein, mit dem entfernten System140 als Antwort auf OOB-Anweisungen aus der eingebetteten Partition1002 zum Lesen und/oder Schreiben von Daten von dem/auf das entfernte System140 zu kommunizieren. Die In-Band-Netzwerkschnittstelle1006 kann im Stande sein, mit einem entfernten System (nicht gezeigt) als Antwort auf Anweisungen aus der Hauptpartition1004 zu kommunizieren. - Die Betriebsmerkmale dieser Ausführungsform können denen, die mit Bezug auf
1 –9 oben beschrieben wurden, ähnlich sein. Allerdings kann in dieser Ausführungsform die eingebettete Partition1002 im Stande sein, die dem Plattformverwaltungscontroller110 (wie oben detailliert beschrieben) zugeschriebenen Operationen durchzuführen. Während die Hauptpartition1004 im Stande sein kann, ein OS sowie I/O-Vorgänge auf der Zielspeichervorrichtung118 auszuführen, kann die eingebettete Partition1002 im Stande sein, Out-of-Band in Bezug auf die Hauptpartition zu betreiben, was bedeutet, dass die einbebettete Partition im Stande sein kann, unabhängig von dem OS, das auf der Hauptpartition1004 ausgeführt wird, zu arbeiten. Im Hinblick darauf kann die eingebettete Partition1002 als ein Zielvorrichtungs-Proxy-Agent arbeiten, um I/O-Vorgänge auf der Zielvorrichtung118 für die Hauptpartition1004 und unabhängig von dem OS, das auf der Hauptpartition ausgeführt wird, zu behandeln. - In dieser Ausführungsform kann die eingebettete Partition
1002 im Stande sein, Schreibanweisungen zum Schreiben von Daten auf die Zielspeichervorrichtung118 zu empfangen. Die Schreibanweisungen können z. B. von der Hauptpartition1004 erzeugt werden. Als Antwort auf eine anhängige Schreibanfrage, die an die Zielvorrichtung118 gerichtet ist, kann die eingebettete Partition1002 die Schreibanfrage aufteilen, um die Daten auf die Speichervorrichtung118 und/oder das entfernte System140 zu schreiben. Falls dort eine anhängige Schreibanfrage vorhanden ist und ein Fehler auftritt (z. B. ein Schreibfehler, ein kritischer Systemfehler, der verursacht, dass die Hauptpartition abstürzt und zurückgesetzt wird, ein Watchdog-Timeout-Fehler, usw.), können dort unbestätigte (uncommitted) Daten (und/oder partiell bestätigte (partially committed) Daten) vorhanden sein, die nicht auf die Zielvorrichtung118 geschrieben werden. In diesem Fall kann die eingebettete Partition1002 im Stande sein, den Fehler in der Verarbeitung zu detektieren, so dass ein Vervollständigen einer anhängigen Schreibanfrage an die Zielvorrichtung118 nicht stattfindet, und die der anhängigen Schreibanfrage entsprechenden unbestätigten Daten auf das entfernte System140 zu schreiben. Nach einem Zurücksetzen der Hauptpartition1004 kann die eingebettete Partition1002 im Stande sein, eine Anfrage an das entfernte System140 (über die OOB-Netzwerkschnittstelle1008 ) zu senden, um die unbestätigten Daten abzurufen und die unbestätigten Daten auf die Zielvorrichtung118 zu schreiben. - Zu diesem Zweck und bei der Initialisierung nach einem Zurücksetzen des Prozessors
112' kann die eingebettete Partition1002 eine "Mailbox" im Systemspeicher2 erzeugen. Die Mailbox kann zum Beispiel eine Speicherallozierung für eine oder mehrere vorgegebene Vorrichtungen im System1000 aufweisen. Somit kann zum Beispiel die eingebettete Partition1002 eine Mailbox für die OOB-Netzwerkschnittstelle1008 erzeugen. Die eingebettete Partition1002 kann in die Mailbox für die OOB-Netzwerkschnittstelle1008 zum Beispiel Instruktionen einfügen, auf die die OOB-Netzwerkschnittstelle1008 zugreifen kann, um mit dem entfernten System140 zu kommunizieren, um die unbestätigten Daten abzurufen. Die Mailbox kann ebenfalls LBA (z. B. Sektoren, Cluster, usw.) und/oder der Speicherstelle der unbestätigten Daten auf dem entfernten System140 zugeordnete Zeigerinformationen umfassen. -
11 ist ein Flussdiagramm, das beispielhafte Operationen1100 darstellt, die gemäß einer weiteren Ausführungsform durchgeführt werden können. Die Operationen können ein Erzeugen einer Hauptpartition, aufweisend mindestens einen Kern, und einer eingebetteten Partition, aufweisend mindestens einen anderen Kern, in einem Multi-Core-Prozessor umfassen1102 . Die Operationen können weiterhin ein Ausführen eines Betriebssystems mittels der Hauptpartition umfassen1104 . Die Operationen können zusätzlich ein Leiten von Zielvorrichtungs-I/O-Verkehr durch die eingebettete Partition umfassen1106 . Die Operationen können weiterhin Schreib- und Lesefehleroperationen, die oben mit Bezug auf4 beschrieben wurden, entfernte Datenwiederherstellungs-, die oben mit Bezug auf6 beschrieben wurden, Systemfehlerwiederherstellungsoperationen, die oben mit Bezug auf8 beschrieben wurden, und/oder Operationen, die nachfolgend mit Bezug auf12 beschrieben werden, umfassen. -
12 ist ein Flussdiagramm, das beispielhafte Operationen1200 darstellt, die gemäß einer weiteren Ausführungsform durchgeführt werden können. Die Operationen können ein Empfangen einer Anfrage zum Schreiben von Daten auf eine Zielvorrichtung umfassen1202 . Die Operationen können weiterhin ein Kommunizieren mit einem entfernten System und ein erneutes Abbilden der der Schreibanfrage zugehörigen Daten auf das entfernte System umfassen1204 . Die Operationen können ebenfalls ein Detektieren eines Fehlers beim Schreiben auf die Zielvorrichtung, wie z. B. dass dort unbestätigte Daten existieren können, umfassen1206 . Die Operationen können zusätzlich ein Kommunizieren mit dem entfernten System, um die unbestätigten Daten abzurufen und die unbestätigten Daten auf die Zielvorrichtung zu schreiben, umfassen1208 . - Zusammenfassend kann hier somit mindestens eine Ausführungsform eine integrierte Schaltung (IC) umfassen, aufweisend einen Prozessor mit einer Vielzahl von Prozessorkernen. Die IC kann eine Hauptpartition, aufweisend mindestens einen Prozessorkern, der im Stande ist, ein Betriebssystem auszuführen, und eine eingebettete Partition, aufweisend mindestens einen anderen Prozessorkern, umfassen. Die eingebettete Partition kann zu den folgenden Operationen im Stande sein: Empfangen einer Schreibanfrage zum Schreiben von Daten auf eine Zielspeichervorrichtung, Kommunizieren mit einem entfernten System, das an die eingebettete Partition gekoppelt ist, und erneutes Abbilden von der Schreibanfrage zugehörigen Daten auf das entfernte System; Detektieren eines Fehlers beim Versuch, die Daten auf die Speichervorrichtung zu schreiben, wobei unbestätigte Daten, die an die Zielspeichervorrichtung gerichtet sind, hinterlassen werden; und Kommunizieren mit dem entfernten System, um die der Schreibanfrage zugehörigen unbestätigten Daten abzurufen, und Schreiben der unbestätigten Daten auf die Zielspeichervorrichtung. Die eingebettete Partition kann ebenfalls im Stande sein, diese Operationen zumindest teilweise unabhängig von dem auf der Hauptpartition ausgeführten Betriebssystem durchzuführen.
- Die integrierte Schaltung dieser Ausführungsform kann vorteilhaft ein Speichern von Event-Logs und Daten in dem reservierten Abschnitt der Speichervorrichtung ermöglichen, die für Systemüberprüfungen genutzt werden können. Des Weiteren kann die integrierte Schaltung dieser Ausführungsform vorteilhaft in der Lage sein, Daten in einem sicheren (verborgenen) reservierten Abschnitt der Speichervorrichtung zu speichern, der unzugänglich für Lese-/Schreiboperationen des Betriebssystems sein kann. Die integrierte Schaltung dieser Ausführungsform kann ebenfalls im Stande sein, Host-System-Speicherinhalte in dem reservierten Abschnitt der Speichervorrichtung und/oder auf ein entferntes System zu speichern, um zum eine Beispiel Prüfung und Wiederherstellung von Speicherinhalten zu ermöglichen, wenn ein kritischer Fehler des Host-Systems auftritt. Die integrierte Schaltung dieser Ausführungsform kann ebenfalls im Stande sein, eine oder mehrere Operationen unabhängig von einem Betriebssystem durchzuführen. In einer alternativen Ausführungsform kann ein Softwareplattformtreiber verwendet werden, der der Zielspeichervorrichtung zugeordnete Schreib- und/oder Lesefehler empfängt und solche Fehler an die eingebettete Partition kommuniziert. Ein solcher Treiber kann zum Beispiel eine oder mehrere Fehlerwiederherstellungsstrategien, die hier vorgelegt werden, ermöglichen, falls der Fehler in der auf der Hauptpartition laufenden Software auftritt (d. h., bevor eine Lese- oder Schreibinstruktion an die eingebettete Partition weitergeleitet wird).
- Die Begriffe und Ausdrücke, die hier verwendet wurden, werden als beschreibende und nicht als limitierende Begriffe verwendet und es besteht keinerlei Intention bei der Verwendung solcher Begriffe und Ausdrücke, dass irgendwelche Entsprechungen der gezeigten und beschriebenen Merkmale (oder ihrer Teile) ausgeschlossen wären, und es wird erkannt, dass unterschiedliche Modifikationen im Rahmen der Ansprüche möglich sind. Andere Modifikationen, Variationen und Alternativen sind ebenfalls möglich. Dementsprechend ist beabsichtigt, dass die Ansprüche alle solche Entsprechungen abdecken.
- Zusammenfassung
- Verfahren gemäß einer Ausführungsform kann ein Partitionieren einer Vielzahl von Prozessorkernen in eine Hauptpartition, aufweisend mindestens einen Prozessorkern, der im Stande ist, ein Betriebssystem auszuführen, und eine eingebettete Partition, aufweisend mindestens einen anderen Prozessorkern, umfassen. Die eingebettete Partition dieser Ausführungsform kann im Stande sein: eine Schreibanfrage zum Schreiben von Daten auf eine Zielspeichervorrichtung zu empfangen; mit einem entfernten System, das an die eingebettete Partition gekoppelt ist, zu kommunizieren und der Schreibanfrage zugehörige Daten auf das entfernte System erneut abzubilden; einen Fehler beim Versuch, Daten auf die Speichervorrichtung zu schreiben, zu detektieren, wobei auf die Zielspeichervorrichtung gerichtete unbestätigte Daten hinterlassen werden; und mit dem entfernten System zu kommunizieren, um die der Schreibanfrage zugehörigen unbestätigten Daten abzurufen und die unbestätigten Daten auf die Zielspeichervorrichtung zu schreiben. Die eingebettete Partition dieser Ausführungsform kann ebenfalls im Stande sein, diese Operationen zumindest teilweise unabhängig von dem Betriebssystem durchzuführen, das auf der Hauptpartition ausgeführt wird.
- ZITATE ENTHALTEN IN DER BESCHREIBUNG
- Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
- Zitierte Nicht-Patentliteratur
-
- - „Intel® XScaleTM Core Developers Manual", veröffentlicht Dezember 2000 [0025]
- - „IEEE 802.3 Standard", veröffentlicht März 2002 [0028]
- - „ATM-MPLS Network Interworking 1.0", veröffentlicht August 2001 [0028]
Claims (21)
- Vorrichtung für Verwaltung von Fehlern auf einer Zielspeichervorrichtung, aufweisend: eine integrierte Schaltung (IC), aufweisend einen Prozessor mit einer Vielzahl von Prozessorkernen, wobei die IC eine Hauptpartition, aufweisend mindestens einen Prozessorkern, der im Stande ist, ein Betriebssystem auszuführen, und eine eingebettete Partition, aufweisend mindestens einen anderen Prozessorkern, umfasst, und die eingebettete Partition im Stande ist, die folgenden Operationen durchzuführen: Empfangen einer Schreibanfrage zum Schreiben von Daten auf eine Zielspeichervorrichtung, Kommunizieren mit einem entfernten System, das an die eingebettete Partition gekoppelt ist, und erneutes Abbilden von der Schreibanfrage zugehörigen Daten auf das entfernte System; Detektieren eines Fehlers beim Versuch, Daten auf die Speichervorrichtung zu schreiben, wobei unbestätigte (uncommitted) Daten, die an die Zielspeichervorrichtung gerichtet sind, hinterlassen werden; und Kommunizieren mit dem entfernten System, um die der Schreibanfrage zugehörigen unbestätigten Daten abzurufen, und Schreiben der unbestätigten Daten auf die Zielspeichervorrichtung; wobei die eingebettete Partition des Weiteren im Stande ist, die Operationen zumindest teilweise unabhängig von dem auf der Hauptpartition ausgeführten Betriebssystem durchzuführen.
- Vorrichtung nach Anspruch 1, wobei: die eingebettete Partition des Weiteren im Stande ist, der Schreibanfrage zugehörige Daten auf einen reservierten Bereich der Zielspeichervorrichtung erneut abzubilden, wobei die eingebettete Partition des Weiteren im Stande ist, mindestens eine Datenleseanfrage zu empfangen, um die dem Fehler zugehörigen Daten zu lesen, und die Datenleseanfrage auf den reservierten Bereich der Zielspeichervorrichtung umzuleiten.
- Vorrichtung nach Anspruch 1, wobei: die eingebettete Partition des Weiteren im Stande ist, mindestens eine Datenleseanfrage für Daten auf der Zielvorrichtung zu empfangen und die Leseanfrage auf das entfernte System umzuleiten, um die Daten abzurufen.
- Vorrichtung nach Anspruch 1, wobei: die eingebettete Partition des Weiteren im Stande ist, einen kritischen Fehler eines Host-Systems zu detektieren und Speicherinhalte eines Host-System-Speichers zu lesen, wobei die eingebettete Partition des Weiteren im Stande ist, mit dem entfernten System, das an die eingebettete Partition gekoppelt ist, zu kommunizieren und die Speicherinhalte auf das entfernte System zu schreiben.
- Vorrichtung nach Anspruch 1, wobei: der Fehler einen kritischen Fehler umfasst, der die Hauptpartition einbezieht und im Stande ist, ein Zurücksetzen der Hauptpartition zu verursachen, wobei die eingebettete Partition des Weiteren im Stande ist, die unbestätigten Daten auf das entfernte System zu schreiben, und die eingebettete Partition nach einer Initialisierung von dem Zurücksetzen des Weiteren im Stande ist, die unbestätigten Daten von dem entfernten System abzurufen und die unbestätigten Daten auf der Zielspeichervorrichtung zu speichern.
- System zum Verwalten von Fehlern auf einer Zielspeichervorrichtung, aufweisend: eine integrierte Schaltung (IC), aufweisend eine Vielzahl von Core-Prozessoren, wobei die IC eine Hauptpartition, aufweisend mindestens einen Core-Prozessor, der im Stande ist, ein Betriebssystem auszuführen, und eine eingebettete Partition, aufweisend mindestens einen anderen Core-Prozessor, und eine Out-of-Band(OOB)-Netzwerkschnittstellenkarte, die im Stande ist, an einen Bus gekoppelt zu werden, umfasst, wobei die eingebettete Partition im Stande ist: eine Schreibanfrage zum Schreiben von Daten auf eine Zielspeichervorrichtung zu empfangen, über die OOB-Netzwerkschnittstellenkarte mit einem entfernten System, das an die eingebettete Partition gekoppelt ist, zu kommunizieren und der Schreibanfrage zugehörige Daten auf das entfernte System erneut abzubilden; einen Fehler beim Versuch, Daten auf die Speichervorrichtung zu schreiben, zu detektieren, wobei unbestätigte Daten, die an die Zielspeichervorrichtung gerichtet sind, hinterlassen werden; und über die OOB-Netzwerkschnittstellenkarte mit dem entfernten System zu kommunizieren, um die der Schreibanfrage zugehörigen unbestätigten Daten abzurufen, und die unbestätigten Daten auf die Zielspeichervorrichtung zu schreiben; wobei die eingebettete Partition des Weiteren im Stande ist, die Operationen zumindest teilweise unabhängig von dem auf der Hauptpartition ausgeführten Betriebssystem durchzuführen.
- System nach Anspruch 6, wobei: die eingebettete Partition des Weiteren im Stande ist, der Schreibanfrage zugehörige Daten auf einen reservierten Bereich der Zielspeichervorrichtung erneut abzubilden, wobei die eingebettete Partition des Weiteren im Stande ist, mindestens eine Datenleseanfrage zu empfangen, um die dem Fehler zugehörigen Daten zu lesen, und die Datenleseanfrage auf den reservierten Bereich der Zielspeichervorrichtung umzuleiten.
- System nach Anspruch 6, wobei: die eingebettete Partition des Weiteren im Stande ist, mindestens eine Datenleseanfrage für Daten auf der Zielvorrichtung zu empfangen und die Leseanfrage auf das entfernte System umzuleiten, um die Daten abzurufen.
- System nach Anspruch 6, wobei: die eingebettete Partition des Weiteren im Stande ist, einen kritischen Fehler eines Host-Systems zu detektieren und Speicherinhalte eines Host-System-Speichers zu lesen, wobei die eingebettete Partition des Weiteren im Stande ist, mit dem entfernten System, das an die eingebettete Partition gekoppelt ist, zu kommunizieren und die Speicherinhalte auf das entfernte System zu schreiben.
- System nach Anspruch 6, wobei: der Fehler einen kritischen Fehler umfasst, der die Hauptpartition einbezieht und im Stande ist, ein Zurücksetzen der Hauptpartition zu verursachen, wobei die eingebettete Partition des Weiteren im Stande ist, die unbestätigten Daten auf das entfernte System zu schreiben, und die eingebettete Partition nach einer Initialisierung von dem Zurück setzen des Weiteren im Stande ist, die unbestätigten Daten von dem entfernten System abzurufen und die unbestätigten Daten auf der Zielspeichervorrichtung zu speichern.
- Computerlesbarer Speicherdatenträger, der Instruktionen speichert, die, wenn von einer Maschine ausgeführt, in den folgenden Operationen resultieren: Partitionieren einer Vielzahl von Core-Prozessoren in eine Hauptpartition, aufweisend mindestens einen Prozessorkern, der im Stande ist, ein Betriebssystem auszuführen, und eine eingebettete Partition, aufweisend mindestens einen anderen Prozessorkern, wobei die eingebettete Partition im Stande ist, die folgenden Operationen durchzuführen: Empfangen einer Schreibanfrage zum Schreiben von Daten auf eine Zielspeichervorrichtung, Kommunizieren mit einem entfernten System, das an die eingebettete Partition gekoppelt ist, und erneutes Abbilden von der Schreibanfrage zugehörigen Daten auf das entfernte System; Detektieren eines Fehlers beim Versuch, Daten auf die Speichervorrichtung zu schreiben, wobei unbestätigte Daten, die an die Zielspeichervorrichtung gerichtet sind, hinterlassen werden; und Kommunizieren mit dem entfernten System, um die der Schreibanfrage zugehörigen unbestätigten Daten abzurufen, und Schreiben der unbestätigten Daten auf die Zielspeichervorrichtung; wobei die eingebettete Partition des Weiteren im Stande ist, die Operationen zumindest teilweise unabhängig von dem auf der Hauptpartition ausgeführten Betriebssystem durchzuführen.
- Computerlesbarer Speicherdatenträger nach Anspruch 11, wobei die Instruktionen, wenn sie von der Maschine ausgeführt werden, in den folgenden zusätzlichen Operationen resultieren: erneutes Abbilden von der Schreibanfrage zugehörigen Daten auf einen reservierten Bereich der Zielspeichervorrichtung; Empfangen mindestens einer Datenleseanfrage zum Lesen der dem Fehler zugehörigen Daten; und Umleiten der Datenleseanfrage auf den reservierten Bereich der Zielspeichervorrichtung.
- Computerlesbarer Speicherdatenträger nach Anspruch 11, wobei die Instruktionen, wenn sie von der Maschine ausgeführt werden, in den folgenden zusätzlichen Operationen resultieren: Empfangen mindestens einer Datenleseanfrage für Daten auf der Zielvorrichtung und Umleiten der Leseanfrage auf das entfernte System, um die Daten abzurufen.
- Computerlesbarer Speicherdatenträger nach Anspruch 11, wobei die Instruktionen, wenn sie von der Maschine ausgeführt werden, in den folgenden zusätzlichen Operationen resultieren: Detektieren eines kritischen Fehlers eines Host-Systems und Lesen von Speicherinhalten eines Host-System-Speichers; Kommunizieren mit dem entfernten System, das an die eingebettete Partition gekoppelt ist, und Schreiben der Speicherinhalte auf das entfernte System.
- Computerlesbarer Speicherdatenträger nach Anspruch 11, wobei die Instruktionen, wenn sie von der Maschine ausgeführt werden, in den folgenden zusätzlichen Operationen resultieren: Schreiben als Antwort auf einen kritischen Fehler, der die Hauptpartition einbezieht und im Stande ist, ein Zurücksetzen der Hauptpartition zu verursachen, der unbestätigten Daten auf das entfernte System und nach einer Initialisierung von dem Zurücksetzen Abrufen von dem entfernten System der unbestätigten Daten und Speichern der unbestätigten Daten auf der Zielspeichervorrichtung.
- Verfahren zur Verwaltung von Fehlern auf einer Zielspeichervorrichtung, aufweisend: Partitionieren einer Vielzahl von Core-Prozessoren in eine Hauptpartition, aufweisend mindestens einen Prozessorkern, der im Stande ist, ein Betriebssystem auszuführen, und eine eingebettete Partition, aufweisend mindestens einen anderen Prozessorkern, wobei die eingebettete Partition im Stande ist, die folgenden Operationen durchzuführen: Empfangen einer Schreibanfrage zum Schreiben von Daten auf eine Zielspeichervorrichtung, Kommunizieren mit einem entfernten System, das an die eingebettete Partition gekoppelt ist, und erneutes Abbilden von der Schreibanfrage zugehörigen Daten auf das entfernte System; Detektieren eines Fehlers beim Versuch, Daten auf die Speichervorrichtung zu schreiben, wobei unbestätigte Daten, die an die Zielspeichervorrichtung gerichtet sind, hinterlassen werden; und Kommunizieren mit dem entfernten System, um die der Schreibanfrage zugehörigen unbestätigten Daten abzurufen, und Schreiben der unbestätigten Daten auf die Zielspeichervorrichtung; wobei die eingebettete Partition des Weiteren im Stande ist, die Operationen zumindest teilweise unabhängig von dem auf der Hauptpartition ausgeführten Betriebssystem durchzuführen.
- Verfahren nach Anspruch 16, des Weiteren aufweisend: erneutes Abbilden von der Schreibanfrage zugehörigen Daten auf einen reservierten Bereich der Zielspeichervorrichtung; Empfangen mindestens einer Datenleseanfrage zum Lesen der dem Fehler zugehörigen Daten; und Umleiten der Datenleseanfrage auf den reservierten Bereich der Zielspeichervorrichtung.
- Verfahren nach Anspruch 16, des Weiteren aufweisend: Empfangen mindestens einer Datenleseanfrage für Daten auf der Zielvorrichtung und Umleiten der Leseanfrage auf das entfernte System, um die Daten abzurufen.
- Verfahren nach Anspruch 16, des Weiteren aufweisend: Detektieren eines kritischen Fehlers eines Host-Systems und Lesen von Speicherinhalten eines Host-System-Speichers; Kommunizieren mit dem entfernten System, das an die eingebettete Partition gekoppelt ist, und Schreiben der Speicherinhalte auf das entfernte System.
- Verfahren nach Anspruch 16, des Weiteren aufweisend: Schreiben als Antwort auf einen kritischen Fehler, der die Hauptpartition einbezieht und im Stande ist, ein Zurücksetzen der Hauptpartition zu verursachen, der unbestätigten Daten auf das entfernte System und nach einer Initialisierung von dem Zurücksetzen Abrufen von dem entfernten System der unbestätigten Daten und Speichern der unbestätigten Daten auf der Zielspeichervorrichtung.
- Verfahren nach Anspruch 19, des Weiteren aufweisend: Schreiben als Antwort auf einen kritischen Fehler, der die Hauptpartition einbezieht und im Stande ist, ein Zurücksetzen der Hauptpartition zu verursachen, der unbestätigten Daten auf das entfernte System und nach einer Initialisierung von dem Zurücksetzen Abrufen von dem entfernten System der unbestätigten Daten und Speichern der unbestätigten Daten auf der Zielspeichervorrichtung.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US11/385,305 | 2006-03-21 | ||
| US11/385,305 US7543179B2 (en) | 2005-03-21 | 2006-03-21 | Error management topologies |
| PCT/US2007/063980 WO2007109476A1 (en) | 2006-03-21 | 2007-03-14 | Error management topologies |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE112007000688T5 true DE112007000688T5 (de) | 2009-02-12 |
| DE112007000688B4 DE112007000688B4 (de) | 2016-08-18 |
Family
ID=38522768
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE112007000688.9T Expired - Fee Related DE112007000688B4 (de) | 2006-03-21 | 2007-03-14 | Fehlerverwaltungstopologien |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US7543179B2 (de) |
| CN (1) | CN101405700B (de) |
| DE (1) | DE112007000688B4 (de) |
| TW (1) | TWI333144B (de) |
| WO (1) | WO2007109476A1 (de) |
Families Citing this family (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7412619B2 (en) | 2005-03-21 | 2008-08-12 | Intel Corporation | Integrated circuit capable of error management |
| US7543179B2 (en) | 2005-03-21 | 2009-06-02 | Intel Corporation | Error management topologies |
| US8327228B2 (en) * | 2009-09-30 | 2012-12-04 | Intel Corporation | Home agent data and memory management |
| US8799586B2 (en) * | 2009-09-30 | 2014-08-05 | Intel Corporation | Memory mirroring and migration at home agent |
| US9262270B2 (en) | 2012-12-28 | 2016-02-16 | Intel Corporation | Live error recovery |
| US9208817B1 (en) | 2015-03-10 | 2015-12-08 | Alibaba Group Holding Limited | System and method for determination and reallocation of pending sectors caused by media fatigue |
| US10375038B2 (en) | 2016-11-30 | 2019-08-06 | International Business Machines Corporation | Symmetric multiprocessing management |
| US10582636B2 (en) * | 2017-08-07 | 2020-03-03 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Server having a dual-mode serial bus port enabling selective access to a baseboard management controller |
| US11645155B2 (en) * | 2021-02-22 | 2023-05-09 | Nxp B.V. | Safe-stating a system interconnect within a data processing system |
Family Cites Families (32)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4471427A (en) * | 1981-12-01 | 1984-09-11 | Burroughs Corporation | Direct memory access logic system for a data transfer network |
| US5778418A (en) * | 1991-09-27 | 1998-07-07 | Sandisk Corporation | Mass computer storage system having both solid state and rotating disk types of memory |
| TW261687B (de) * | 1991-11-26 | 1995-11-01 | Hitachi Seisakusyo Kk | |
| EP0630499A4 (de) * | 1992-03-09 | 1996-07-24 | Auspex Systems Inc | Beschleunigungssystem mit nichtflüchtigem, geschütztem, schreibbarem ram-cachespeicher. |
| US5524212A (en) * | 1992-04-27 | 1996-06-04 | University Of Washington | Multiprocessor system with write generate method for updating cache |
| GB9613088D0 (en) | 1996-06-21 | 1996-08-28 | Memory Corp Plc | Memory device |
| US5862314A (en) * | 1996-11-01 | 1999-01-19 | Micron Electronics, Inc. | System and method for remapping defective memory locations |
| US5933852A (en) * | 1996-11-07 | 1999-08-03 | Micron Electronics, Inc. | System and method for accelerated remapping of defective memory locations |
| JPH10154101A (ja) * | 1996-11-26 | 1998-06-09 | Toshiba Corp | データ記憶システム及び同システムに適用するキャッシュ制御方法 |
| US6073209A (en) * | 1997-03-31 | 2000-06-06 | Ark Research Corporation | Data storage controller providing multiple hosts with access to multiple storage subsystems |
| US6578120B1 (en) * | 1997-06-24 | 2003-06-10 | International Business Machines Corporation | Synchronization and resynchronization of loosely-coupled copy operations between a primary and a remote secondary DASD volume under concurrent updating |
| US7055055B1 (en) * | 1999-04-23 | 2006-05-30 | Symantec Corporation | Write cache flushing method for reducing data corruption |
| US6446175B1 (en) * | 1999-07-28 | 2002-09-03 | Storage Technology Corporation | Storing and retrieving data on tape backup system located at remote storage system site |
| US6467048B1 (en) * | 1999-10-07 | 2002-10-15 | Compaq Information Technologies Group, L.P. | Apparatus, method and system for using cache memory as fail-over memory |
| US6629192B1 (en) * | 1999-12-30 | 2003-09-30 | Intel Corporation | Method and apparatus for use of a non-volatile storage management system for PC/AT compatible system firmware |
| US6973517B1 (en) * | 2000-08-31 | 2005-12-06 | Hewlett-Packard Development Company, L.P. | Partition formation using microprocessors in a multiprocessor computer system |
| US6785767B2 (en) * | 2000-12-26 | 2004-08-31 | Intel Corporation | Hybrid mass storage system and method with two different types of storage medium |
| US20060195667A1 (en) * | 2001-05-10 | 2006-08-31 | Hitachi, Ltd. | Remote copy for a storage controller with consistent write order |
| AU2002315365A1 (en) * | 2001-06-21 | 2003-01-08 | Dan Bress | Systems and methods for removing data stored on long-term memory devices |
| US6836438B2 (en) * | 2002-01-11 | 2004-12-28 | Macronix International Co., Ltd. | Method and apparatus for dynamically hiding a defect in an embedded memory |
| US6782453B2 (en) * | 2002-02-12 | 2004-08-24 | Hewlett-Packard Development Company, L.P. | Storing data in memory |
| US6845470B2 (en) * | 2002-02-27 | 2005-01-18 | International Business Machines Corporation | Method and system to identify a memory corruption source within a multiprocessor system |
| US6907505B2 (en) * | 2002-07-31 | 2005-06-14 | Hewlett-Packard Development Company, L.P. | Immediately available, statically allocated, full-logical-unit copy with a transient, snapshot-copy-like intermediate stage |
| US7526625B2 (en) * | 2003-01-31 | 2009-04-28 | Panasonic Corporation | Semiconductor memory card, and program for controlling the same |
| US7275179B1 (en) * | 2003-04-24 | 2007-09-25 | Network Appliance, Inc. | System and method for reducing unrecoverable media errors in a disk subsystem |
| US6925533B2 (en) * | 2003-05-07 | 2005-08-02 | International Business Machines Corporation | Virtual disk image system with local cache disk for iSCSI communications |
| US7047361B2 (en) * | 2003-08-04 | 2006-05-16 | Phison Electronics Corp. | Data storage device using SDRAM |
| KR100558551B1 (ko) * | 2003-12-22 | 2006-03-10 | 삼성전자주식회사 | 불휘발성 메모리 소자에서의 전원 검출장치 및 그에 따른검출방법 |
| US8055745B2 (en) * | 2004-06-01 | 2011-11-08 | Inmage Systems, Inc. | Methods and apparatus for accessing data from a primary data storage system for secondary storage |
| US20060184717A1 (en) * | 2005-02-17 | 2006-08-17 | Intel Corporation | Integrated circuit capable of flash memory storage management |
| US7543179B2 (en) | 2005-03-21 | 2009-06-02 | Intel Corporation | Error management topologies |
| US7412619B2 (en) * | 2005-03-21 | 2008-08-12 | Intel Corporation | Integrated circuit capable of error management |
-
2006
- 2006-03-21 US US11/385,305 patent/US7543179B2/en not_active Expired - Fee Related
-
2007
- 2007-03-14 WO PCT/US2007/063980 patent/WO2007109476A1/en not_active Ceased
- 2007-03-14 DE DE112007000688.9T patent/DE112007000688B4/de not_active Expired - Fee Related
- 2007-03-14 CN CN200780009846.XA patent/CN101405700B/zh not_active Expired - Fee Related
- 2007-03-15 TW TW096108907A patent/TWI333144B/zh active
Non-Patent Citations (3)
| Title |
|---|
| "ATM-MPLS Network Interworking 1.0", veröffentlicht August 2001 |
| "IEEE 802.3 Standard", veröffentlicht März 2002 |
| "Intel® XScaleTM Core Developers Manual", veröffentlicht Dezember 2000 |
Also Published As
| Publication number | Publication date |
|---|---|
| TWI333144B (en) | 2010-11-11 |
| DE112007000688B4 (de) | 2016-08-18 |
| WO2007109476A1 (en) | 2007-09-27 |
| US7543179B2 (en) | 2009-06-02 |
| TW200813707A (en) | 2008-03-16 |
| CN101405700B (zh) | 2011-03-09 |
| US20060212762A1 (en) | 2006-09-21 |
| CN101405700A (zh) | 2009-04-08 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE112007000688B4 (de) | Fehlerverwaltungstopologien | |
| DE112018002951B4 (de) | Verwenden eines spurformatcodes in einem cache-steuerblock für eine spur in einem cache, um lese- und schreibanforderungen in bezug auf die spur im cache zu verarbeiten | |
| DE112005001512B4 (de) | Vorrichtung und Verfahren für den Hochleistungs- Zugriff auf einen flüchtigen Plattenlaufwerkspeicher unter Einsatz einer integrierten Direkt-Speicherzugriffs-Einrichtung | |
| DE602004007927T2 (de) | Integrierter schaltkreis, der mithilfe verschiedener kommunikationsprotokolle kommunizieren kann | |
| DE60319125T2 (de) | Integrierte schaltung mit mehreren betriebsarten | |
| DE69033476T2 (de) | Schutz von Datenredundanz und -rückgewinnung | |
| DE102004053801B4 (de) | Dynamische Rekonfiguration von PCI-Expresslinks | |
| DE69032614T2 (de) | Verfahren zur Datenverteilung in einer Speicherplattenanordnung | |
| DE102009061252B3 (de) | Vorrichtung, Verfahren und System zur Verarbeitung einer Transaktion auf einem PCI-Bus mittels eines Root-Komplexes | |
| DE102005006176A1 (de) | Transaktionsverarbeitungs-Systeme und -Verfahren, die einen Nicht-Platten-Dauerspeicher verwenden | |
| DE60000285T2 (de) | Vorrichtung und verfahren zur unterbrechungsverarbeitung von peripheriegeräten | |
| DE69230211T2 (de) | Integrierter Speicher, Verwaltungsverfahren und resultierendes Informationssystem | |
| DE112007001135T5 (de) | Gemeinschaftliche Nutzung von Daten durch Partitionen in einem partitionierbaren System | |
| DE102019102643A1 (de) | Neuartige SSD-Architektur für eine FPGA-basierte Beschleunigung | |
| WO2013110736A1 (de) | Speichercontroller zur bereitstellung mehrerer definierter bereiche eines massenspeichermediums als unabhängige massenspeicher an einen master-betriebssystem - kern zur exklusiven bereitstellung an virutelle maschinen | |
| DE69621309T2 (de) | Verfahren und Gerät zur Optimierung von gemeinsamen PCI-Unterbrechungen und entsprechender Latenz in den PCI-Bussen mit Erweiterung oder Brücke | |
| DE102007009300A1 (de) | Rechnersystem und Verfahren zum Betreiben eines Rechnersystems | |
| DE102013209643A1 (de) | Mechanismus für optimierte Nachrichtenaustauschdatenübertragung zwischen Nodelets innerhalb eines Plättchens | |
| DE102022204514A1 (de) | Multi-socket-netzwerkschnittstellen-controller mit konsistenter transaktionsreihenfolge | |
| DE102006062802B4 (de) | Informationsverarbeitungssystem und Verfahren zum Steuern von mehreren Hot Plug Vorgängen | |
| DE112007003722T5 (de) | Modifizieren von Systemroutinginformationen in linkbasierenden Systemen | |
| DE102013202627B4 (de) | Verfahren, Vorrichtung und Computerprogrammprodukt zum Verwalten einer Speichereinheit unter Verwendung einer hybriden Steuereinheit | |
| DE60314145T2 (de) | Methode und vorrichtung welche einen externen zugriff zu internen konfigurationsregistern erlauben | |
| DE10392810T5 (de) | System und Verfahren zum Filtern von Prozessoren nach Integrität während früher Firmware für eine Architektur mit aufgeteilter Wiederherstellung | |
| DE102019119828A1 (de) | Multi-Host-Controller und Halbleitervorrichtung mit demselben |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| OP8 | Request for examination as to paragraph 44 patent law | ||
| R082 | Change of representative |
Representative=s name: BOEHMERT & BOEHMERT ANWALTSPARTNERSCHAFT MBB -, DE Representative=s name: BOEHMERT & BOEHMERT, DE Representative=s name: BOEHMERT & BOEHMERT, 28209 BREMEN, DE |
|
| R016 | Response to examination communication | ||
| R016 | Response to examination communication | ||
| R018 | Grant decision by examination section/examining division | ||
| R020 | Patent grant now final | ||
| R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |