DE112007000688B4 - Fehlerverwaltungstopologien - Google Patents

Fehlerverwaltungstopologien Download PDF

Info

Publication number
DE112007000688B4
DE112007000688B4 DE112007000688.9T DE112007000688T DE112007000688B4 DE 112007000688 B4 DE112007000688 B4 DE 112007000688B4 DE 112007000688 T DE112007000688 T DE 112007000688T DE 112007000688 B4 DE112007000688 B4 DE 112007000688B4
Authority
DE
Germany
Prior art keywords
data
storage device
partition
embedded
write
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE112007000688.9T
Other languages
English (en)
Other versions
DE112007000688T5 (de
Inventor
Vincent Zimmer
Michael Rothman
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE112007000688T5 publication Critical patent/DE112007000688T5/de
Application granted granted Critical
Publication of DE112007000688B4 publication Critical patent/DE112007000688B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error 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/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error 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/0706Error 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/0712Error 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error 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/0706Error 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/0721Error 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/0724Error 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error 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/0706Error 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/0727Error 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1435Saving, restoring, recovering or retrying at system level using file system or storage system metadata
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1883Methods for assignment of alternate areas for defective areas
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2508Magnetic discs
    • G11B2220/2516Hard 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)
  • Mathematical Physics (AREA)
  • Library & Information Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Storage Device Security (AREA)

Abstract

Vorrichtung zur Verwaltung von kritischen Fehlern eines Hostsystems, welche während einer Ausführung einer Schreibanfrage zum Schreiben von Daten auf eine Zielspeichervorrichtung (118) auftreten, aufweisend: eine integrierte Schaltung (IC) (110), aufweisend einen Mehrkernprozessor (112; 112') und zumindest einen Speicher (210; 121; 121'), wobei der Mehrkernprozessor (112; 112') eine Hauptpartition (1004), aufweisend mindestens einen Prozessorkern (1002), der im Stande ist, ein Betriebssystem auszuführen, und eine eingebettete Partition, aufweisend mindestens einen anderen Prozessorkern, umfasst, und wobei der zumindest eine Speicher (210; 121; 121') Instruktionen aufweist, die, wenn sie von der eingebetteten Partition ausgeführt werden, bewirken, dass die eingebettete Partition die folgenden Operationen ausführt: Empfangen der Schreibanfrage zum Schreiben von Daten auf die Zielspeichervorrichtung (118), Kommunizieren mit einem entfernten System (140), das an die eingebettete Partition gekoppelt ist, und erneutes Abbilden von der Schreibanfrage zugehörigen Daten auf das entfernte System (140); wobei die Instruktionen weiter bewirken, dass die eingebettete Partition die folgenden Operationen ausführt, wenn ein kritischer Fehler des Hostsystems, der die Hauptpartition einbezieht, während einer Ausführung der Schreibanfrage geschieht und der kritische Fehler des Hostsystems unbestätigte (uncommitted) Daten, die an die Zielspeichervorrichtung gerichtet sind, hinterlässt und imstande ist, ein Zurücksetzen der Hauptpartition zu verursachen: Detektieren des Auftretens des kritischen Fehlers des Hostsystems in Reaktion auf ein Signal von der Zielspeichervorrichtung (118); Schreiben der unbestätigten Daten auf das entfernte System (140); und Abrufen und Schreiben der unbestätigten Daten von ...

Description

  • Die vorliegende Offenlegung bezieht sich auf Fehlerverwaltungstopologien.
  • 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.
  • Der Wikipedia-Artikel „Backup” mit Stand vom 17.03.2006, im Internet auffindbar unter http://en.wikipedia.org/w/index.php?title=Backup&oldid=44266486 offenbart Verfahren zur Sicherung von Daten. Unter anderem wird beschrieben, dass im Rahmen eines Backups auf einem entfernten Medium eine Kopie von Originaldaten angelegt wird. Im Falle eines Verlusts der Originaldaten können die Daten sodann wiedergewonnen werden.
  • Es ist die Aufgabe der vorliegenden Erfindung, eine Verwaltung von derartigen kritischen Fehlern bereitzustellen und es einem System zu ermöglichen, den kritischen Fehler aufzulösen.
  • Diese Aufgabe wird durch eine Vorrichtung gemäß Anspruch 1, ein System gemäß Anspruch 3, einen Speicherdatenträger gemäß Anspruch 6 sowie ein Verfahren gemäß Anspruch 9 gelöst. Vorteilhafte Ausgestaltungen sind Gegenstand der Unteransprüche.
  • 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.
  • 1 stellt eine Systemausführungsform 100 des beanspruchten Gegenstands dar. Das System 100 kann allgemein einen Host-Prozessor 112, einen ersten Bus 122, einen zweiten Bus 126, ein Benutzerschnittstellensystem 116, einen Chipsatz 114, Systemspeicher 121, Plattformverwaltungscontrollerschaltung 110 und Flash-Speicher 106 umfassen. Diese Ausführungsform kann ebenfalls eine Speichervorrichtung 118 umfassen. Die Speichervorrichtung 118 kann z. B. einen magnetischen, optischen und/oder Halbleiterdatenträger, z. B. eine Festplattenvorrichtung, umfassen. Der Host-Prozessor 112 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 Busse 122, 126 können unterschiedliche Bustypen umfassen, um Daten und Anweisungen zu übertragen. So kann z. B. Bus 122 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 Bus 126 kann eine Serial Peripheral Interface (SPI) Spezifikation (nachfolgend als ein „SPI-Bus” bezeichnet) umfassen/erfüllen. Prozessor 112, Systemspeicher 121, Chipsatz 114, Busse 122 und 126, Flash-Speicher 106 und Plattformverwaltungscontrollerschaltung 110 können auf einer einzigen Platine enthalten sein, wie z. B. einem Motherboard 132, 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 Chipsatz 114 kann ein Host-Bridge/Hub-System (nicht gezeigt) umfassen, das den Prozessor 112. Systemspeicher 121, Benutzerschnittstellensystem 116, Speichervorrichtung 118 und Plattformverwaltungscontrollerschaltung 110 miteinander und an den Bus 122 koppelt. Der Chipsatz 114 kann ebenfalls im Stande sein, Flash-Speicher 106, Host-Prozessor 112, Systemspeicher 121 und Plattformverwaltungscontrollerschaltung 110 miteinander und an den Bus 126 zu koppeln. Der Chipsatz 114 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 tü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 Speicher 106 einen Flash-Speicher umfassen. Entweder zusätzlich oder alternativ können die Speicher 121 und/oder 106 andere und/oder später entwickelte computerlesbare Speichertypen umfassen. Maschinenlesbare Firmware-Programminstruktionen können in Speichern 121 und/oder 106 gespeichert sein. Wie unten beschrieben, kann auf/können diese Instruktionen durch den Host-Prozessor 112 und/oder Plattformverwaltungscontroller 110 zugegriffen und ausgeführt werden. Diese Instruktionen können, wenn sie von dem Host-Prozessor 112 und/oder Plattformverwaltungscontroller 110 ausgeführt werden, darin resultieren, dass der Host-Prozessor 112 und/oder Plattformverwaltungscontroller 110 die Operationen durchführt, die hier, als würden sie durch den Host-Prozessor 112 und/oder die Plattformverwaltungscontrollerschaltung 110 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 der von der Zielspeichervorrichtung 118 zu generieren. Die Zielspeichervorrichtung kann z. B. eine lokale Speichervorrichtung (z. B. eine an das Host-System 100 gekoppelte lokale Vorrichtung) und/oder eine entfernte Speichervorrichtung umfassen. Alternativ oder zusätzliche kann die Speichervorrichtung 118 ein oder mehrere Redundant Array of Independent Disks (RAID) und/oder periphere Vorrichtungen aufweisen. Der Host-Prozessor 112 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-Prozessor 112 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-System 132 gekoppelte Zusatzkarten (nicht gezeigt) und/oder entfernte Anwendungen (nicht gezeigt), im Stande sein, einen oder mehrere Eingabe-/Ausgabc(I/O)-Vorgänge zum Lesen und/oder Schreiben von Daten auf die oder von der Speichervorrichtung 118 zu generieren.
  • Die Plattformverwaltungscontrollerschaltung 110 kann im Stande sein, den Lese- und/oder Schreibzugriff auf die Speichervorrichtung 118 über den Bus 122 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 Schaltung 110 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 Schaltung 110 ebenfalls im Stande sein, einen Schreibfehler auf Speichervorrichtung 118 aufzufinden und erneut ein Datenschreiben auf einen anderen Bereich der Speichervorrichtung 118 abzubilden. Als Antwort auf eine Leseanfrage kann Schaltung 110 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 Schaltung 110 durchgeführt wird, angesiedelt sein können, umzuleiten.
  • Die Plattformverwaltungscontrollerschaltung 110 kann ebenfalls im Stande sein, mit einem oder mehreren entfernten Systemen 140 über ein Netzwerk 124 und eine Nachrichtenverbindung 125 zu kommunizieren. Das entfernte System 140 kann z. B. ein entferntes Server-System oder eine entfernte Workstation (die ähnlich zum Host-System 132 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 System 140 im Stande sein, Daten, die auf der Speichervorrichtung 118 gespeichert sind, zumindest teilweise zu speichern. Wie später detaillierter beschrieben wird, kann die Plattformverwaltungsschaltung 110 im Stande sein, den Lese- und/oder Schreibzugriff auf ein oder mehrere entfernte Systeme 140 zumindest teilweise basierend auf einem Lese- und/oder Schreibzugriff auf die Speichervorrichtung 118 zu kontrollieren. In dieser Ausführungsform kann Schaltung 110 z. B. im Stande sein, einen Schreibfehler auf Speichervorrichtung 118 aufzufinden. Die Schaltung 110 kann ebenfalls im Stande sein, festzustellen, oh sich die dem Schreibfehler zugeordneten Daten auf einem oder mehreren entfernten Systemen 140 befinden, und, falls dem so ist, eine Abbildung auf die Daten auf dem entfernten System 140 zu erzeugen. Als Antwort auf eine Leseanfrage kann Schaltung 110 im Stande sein, die Daten von dem entfernten System 140 abzurufen.
  • Die Plattformverwaltungscontrollerschaltung 110 kann im Stande sein, den Lese- und/oder Schreibzugriff auf den Systemspeicher 121 über den Bus 122 und den Chipsatz 114 zu kontrollieren. Die Schaltung 110 kann ebenfalls im Stande sein, mindestens einen kritischen Fehler auf dem Host-System zu detektieren und die Inhalte des Systemspeichers 121 zu lesen. Ein „kritischer Fehler”, wie hier in jeder Ausführungsform verwendet wird, kann eine Bedingung aufweisen, die den Host-Prozessor 112 und/oder ein auf dem Host-Prozessor laufendes OS oder Anwendung und/oder Boot-Instruktionen (die im Flash-Speicher 106 gespeichert sein können) dazu veranlassen, die beabsichtigte Durchführung zu stoppen (und die das Host-System 132 inoperabel machen kann). Die Schaltung 110 kann ebenfalls im Stande sein, die Inhalte des Systemspeichers 121 auf die Speichervorrichtung 118 und/oder auf ein oder mehrere entfernte Systeme 140 zu schreiben.
  • Die Plattformverwaltungscontrollerschaltung 110 kann ebenfalls im Stande sein, Out-of-Band (OOB)-Lese- und/oder Schreiboperationen auf 106 und/oder Speichervorrichtung 118 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-System 132 ausgeführt wird, durchgeführt werden.
  • 2 ist ein Diagramm, das detaillierter die Plattformverwaltungscontrollerschaltung 110 darstellt. In 2 wurden bestimmte Teile des in 1 dargestellten System 100 um der Klarheit willen ausgelassen (z. B. Platine 132), es ist aber verständlich, dass gleiche Teile aus 2 in einer Weise, die mit einer in 1 dargestellten Ausführungsform konsistent ist, oder alternativ in anderen Systemimplementierungen implementiert werden können, ohne von dieser Ausführungsform abzuweichen. Die Schaltung 110 kann eine Prozessorschaltung 204 umfassen, die im Stande sein kann, Operationen durchzuführen, die hier als zugehörig zur Plattformschaltung 110 beschrieben werden. Die Prozessorschaltung 204 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 Prozessorschaltung 204 andere Prozessorkernschaltungstypen aufweisen, ohne von dieser Ausführungsform abzuweichen. Die Schaltung 110 kann ebenfalls Speicher 210 umfassen. Der Speicher 210 kann z. B. computerlesharen Programminstruktionsspeicher aufweisen, der entsprechende Sätze von Micro-Code-Programminstruktionen enthalten kann, die von der Prozessorschaltung 204 ausgeführt werden können. Die Ausführung dieser entsprechenden Sätze von Programminstruktionen durch die Prozessorschaltung 204 kann im Abwickeln von Operationen resultieren, die hier als durch die Prozessorschaltung 204 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 Speichervorrichtung 118 und Richtlinienregeln für den Lese- und/oder Schreibzugriff auf den Flash-Speicher 106 vorschreiben können. Beispielhafte Plattformrichtlinieninstruktionen können die Größe des reservierten Abschnitts 204. Aktivieren oder Deaktivieren des Verbergens des reservierten Abschnitts 204, Aktivieren und/oder Deaktivieren des Lese- und/oder Schreibzugriffs auf den Flash-Speicher 106, Datenschreib- und/oder Lesevorgängen auf den Flash-Speicher 106 zugeordneten Prioritätsregeln und/oder andere Plattformrichtlinieninstruktionen umfassen. Die Prozessorschaltung 204 kann Plattformrichtlinieninstruktionen während des Betriebs der Plattformverwaltungscontrollerschaltung 110 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)-Schnittstellenschaltung 202 umfassen, die der Prozessorschaltung 204 erlauben kann, Anweisungen und Daten mit dem Chipsatz 114 und/oder der Speichervorrichtung 118 über den PCIe-Bus 122 auszutauschen. Die Schaltung 110 kann ebenfalls eine SPI-Schnittstellenschaltung 208 umfassen, die der Prozessorschaltung 204 erlauben kann. Anweisungen und Daten mit dem Flash-Speicher 106 über den SPI-Bus 126 auszutauschen. Allerdings sind eine andere Bustechnologie und eine einem Bus entsprechende Busschnittstellenschaltung ebenso in dieser Ausführungsform vorgesehen. Die Schaltung 110 kann des Weiteren eine Netzwerkschnittstellenschaltung 206 umfassen, die der Prozessorschaltung 204 erlauben kann, Anweisungen und Daten mit einem oder mehreren entfernten Systemen über das Netzwerk 124 und die Nachrichtenverbindung 125 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 Netzwerk 124 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 Netzwerk 124 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 Netzwerk 124 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ürlich sind verschiedene und/oder nachentwickelte Kommunikationsprotokolle ebenso hier vorgesehen.
  • 3 ist ein Diagramm, das eine weitere Systemausführungsform 300 darstellt. In 3 wurden bestimmte Teile des in 1 dargestellten Systems 100 und der in 2 dargestellten Plattformverwaltungscontrollerschaltung 110 um der Klarheit willen ausgelassen (z. B. Platine 132, Netzwerk 124 und entferntes System 140), es ist aber verständlich, dass gleiche Teile aus 3 in einer Weise, die mit einer in 1 und/oder 2 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 Datenbereich 302 und einen reservierten Bereich 304 umfassen. Der Datenbereich 302 kann eine Vielzahl von Sektoren 1 ... n aufweisen, auf die der Host-Prozessor 112, die Schaltung 110 und/oder der Chipsatz 114 zugreifen können, um darauf Daten zu lesen und/oder zu schreiben. In dieser Ausführungsform kann die Plattformverwaltungscontrollerschaltung 110 im Stande sein, die Speichervorrichtung 118 zu kontrollieren, um den reservierten Bereich 304 zu reservieren. Reservierter Bereich”, wie hier mit Verweis auf die Speichervorrichtung 118 verwendet wird, kann einen Abschnitt der Speichervorrichtung 118 umfassen, der allgemein für die Controllerschaltung 110 zugänglich und für ein auf dem Host-System 132 ausgeführtes OS unzugänglich sein kann. Abhängig von dem Datenträgertyp der Speichervorrichtung 118 kann die Größe des reservierten Bereichs 304 durch z. B. einen ausgewählten LBA-Adressenbereich und/oder eine ausgewählte Anzahl von Sektoren (z. B. Sektoren 1 ... m) definiert werden. Die Plattformverwaltungscontrollerschaltung 110 kann ebenfalls im Stande sein, den reservierten Bereich 304 vor einem Zugriff durch eine andere Schaltung zu verbergen, wie z. B. Verbergen des reservierten Abschnitts 304 vor dem Host-Prozessor 112 und/oder einem OS oder einer Anwendung, das/die auf dem Host-System 132 und/oder dem Chipsatz 114 und/oder einem oder mehreren entfernten Systemen (nicht gezeigt) ausgeführt wird, um den Host-Prozessor 112 und/oder ein OS oder eine Anwendung, das/die auf dem Host-System 132 und/oder dem Chipsatz 114 und/oder einem oder mehreren entfernten Systemen ausgeführt wird, daran zu hindern, auf den reservierten Bereich 304 der Speichervorrichtung 118 zuzugreifen. In dieser Ausführungsform kann die Schaltung 110 im Stande sein, eine Anfrage zum Schreiben von Daten in den Datenbereich 302 der Speichervorrichtung 118 zu empfangen. Die Schreibanfrage kann z. B. durch den Host-Prozessor 112 und/oder den Chipsatz 114 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 Speichervorrichtung 118, dass ein Schreibfehler aufgetreten ist, kann die Schaltung 110 ebenfalls im Stande sein, einen Schreibfehler in der Speichervorrichtung 118 zu detektieren, der während einer Datenschreiboperation entstehen kann. Der Fehler kann z. B. einen fehlgeschlagenen Datenschreibversuch auf einen oder mehrere Sektoren der Speichervorrichtung 118, die in 3 als ein „X” bezeichnet werden, umfassen.
  • Als Antwort auf den Schreibfehler kann Schaltung 110 im Stande sein, die Daten erneut auf den reservierten Bereich 304 der Speichervorrichtung 118 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 Speichervorrichtung 118 angesiedelt sind. Somit kann z. B., wie in 3 dargestellt, ein Sektor „X” ein fehlerhafter Sektor und die Schaltung 110 im Stande sein, Datenschreibversuche auf einen Sektor „Y” des reservierten Bereichs 304 erneut abzubilden. Die Schaltung 110 kann ebenfalls im Stande sein, eine Abbildung zu erzeugen, die die Speicherstelle der „Y”-Daten im reservierten Bereich 304 auf den „X”-Sektor des Datenbereichs 302 verweist. Die Schaltung 110 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 Datenbereich 302 befunden haben könnten, kann die Schaltung 110 im Stande sein, die Leseanfrage auf die erneut abgebildeten Daten im Sektor „Y” des reservierten Bereichs 304 umzuleiten.
  • Die Plattformverwaltungscontrollerschaltung 110 kann ebenfalls im Stande sein, bei dem Schreib- und/oder Lesezugriff auf die Speichervorrichtung 118 zu vermitteln, um den reservierten Bereich 304 vor einem Zugriff zu schützen. Somit kann z. B., falls der Host-Prozessor 112 einen I/O-Vorgang zum Lesen oder Schreiben von Daten auf die Speichervorrichtung 118 generiert, die Plattformverwaltungscontrollerschaltung 110 diese Anfrage (über den Bus 120) empfangen und die Lese- und/oder Schreibanfrage verweigern, falls die Daten in dem reservierten Bereich 304 der Speichervorrichtung 118 gespeichert sind (oder in diesen geschrieben werden sollen), und/oder die Lese- und/oder Schreibanfrage gestatten, falls die Daten in dem Datenbereich 302 der Speichervorrichtung 118 gespeichert sind (oder in diesen geschrieben werden sollen).
  • 4 ist ein Flussdiagramm 400, 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 umfassen 402. Die Operationen können ebenfalls ein Empfangen einer Schreibanfrage zum Schreiben von Daten in die Speichervorrichtung umfassen 404. Die Operationen können ebenfalls ein Detektieren eines Schreibfehlers in der Speichervorrichtung umfassen 406. Die Operationen können weiterhin ein erneutes Abbilden der Daten auf den reservierten Bereich in der Speichervorrichtung umfassen 408. Die Operationen können ebenfalls ein Empfangen einer Leseanfrage für Daten in der Speichervorrichtung umfassen 410. 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 umfassen 412.
  • 5 ist ein Diagramm, das eine weitere Systemausführungsform 500 darstellt. In 5 wurden bestimmte Teile des in 1 dargestellten Systems 100 und der in 2 dargestellten Plattformverwaltungscontrollerschaltung 110 um der Klarheit willen ausgelassen (z. B. Platine 132), es ist aber verständlich, dass gleiche Teile aus 5 in einer Weise, die mit einer in 1 und/oder 2 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 Datenbereich 302 umfassen. Der Datenbereich 302 kann eine Vielzahl von Sektoren 1 ... n aufweisen, auf die der Host-Prozessor 112, der Chipsatz 114, das entfernte System 140 und/oder die Schaltung 110 zugreifen können, um darauf Daten zu lesen und/oder zu schreiben. Die Schaltung 110 kann im Stande sein, mit einem oder mehreren entfernen Systemen 140 über ein Netzwerk 142 zu kommunizieren. Wie angegeben, kann ein oder mehrere entfernte Systeme 140 im Stande sein, die Daten als Ganzes oder in Teilen auf der Speichervorrichtung 118 redundant zu speichern. In dieser Ausführungsform kann die Schaltung 110 im Stande sein, eine Anfrage zum Schreiben von Daten in den Datenbereich 302 der Speichervorrichtung 118 zu empfangen. Die Schreibanfrage kann z. B. durch den Host-Prozessor 112 und/oder den Chipsatz 114 generiert werden. In dieser Ausführungsform kann die Schaltung 110 im Stande sein, einen Datenlese- und/oder Schreibzugriff, der auf die Speichervorrichtung 118 gerichtet ist, durchzuführen, als Antwort auf eine Datenlese- und/oder Schreibanfrage von z. B. Host-Prozessor 112 und/oder Chipsatz 114 (die eine US-Lese- und/oder Schreibanfrage umfassen kann). 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 Speichervorrichtung 118, dass ein Schreibfehler aufgetreten ist, kann Schaltung 110 ebenfalls im Stande sein, einen Schreibfehler in der Speichervorrichtung 118 zu detektieren, der während einer Datenschreiboperation entstehen kann. Der Fehler kann z. B. einen Datenschreibversuch auf einen oder mehrere fehlerhafte Sektoren der Speichervorrichtung 118, die in 5 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 Systemen 140 (über das Netzwerk 124) zu kommunizieren, um festzustellen, ob die der Schreibanfrage zugeordneten Daten auf einem oder mehreren entfernten Systemen 140 existieren. Dies wird in 5 als die Vielzahl von „Y”s dargestellt, die die auf dem entfernten System 140 verfügbaren Daten repräsentieren. Falls die Daten entfernt existieren, kann die Schaltung 110 im Stande sein, eine Abbildung zu erzeugen, die die Speicherstelle der „Y”-Daten auf dem entfernten System auf den entsprechenden „X”-Sektor im Datenbereich 302 der Speichervorrichtung 119 verweist. Die Schaltung 110 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 Datenbereich 302 befunden haben könnten, kann die Schaltung 110 im Stande sein, die Leseanfrage auf die erneut abgebildeten Daten in den entsprechenden „Y”-Sektoren des entfernten Systems 140 umzuleiten und die Daten von dem entfernten System 140 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 Schaltung 110 alternativ oder zusätzlich erneut die Daten auf den reservierten Bereich 304 der Speichervorrichtung 118 in einer oben mit Bezug auf die Ausführungsform aus 3 beschriebenen Weise abbilden. Die Schaltung 110 kann ebenfalls im Stande sein, eine Abbildung zu erzeugen, die die Speicherstelle der „Y”-Daten im reservierten Bereich 304 auf den „X”-Sektor im Datenbereich 302 verweist, und in einer oben mit Bezug auf 3 beschriebenen Weise Leseanfragen für diese Daten erneut auf den reservierten Bereich 304 abzubilden. Falls das entfernte System 140 keine „Y”-Daten (die den für die „X”-Sektoren der Speichervorrichtung 118 bestimmten Daten entsprechen) enthält, kann die Schaltung 110 alternativ oder zusätzlich im Stande sein, die Daten auf das entfernte System 140 erneut abzubilden und somit die Daten entfernt zu speichern.
  • 6 ist ein Flussdiagramm, das beispielhafte Operationen 600 darstellt, die gemäß einer weiteren Ausführungsform durchgeführt werden können. Die Operationen können ein Kommunizieren mit einem entfernten System umfassen 602. Die Operationen können weiterhin ein Empfangen einer Schreibanfrage zum Schreiben von Daten auf eine Zielspeichervorrichtung umfassen 604. Die Operationen können ebenfalls ein Detektieren eines Schreibfehlers in der Zielspeichervorrichtung umfassen 606. Die Operationen können ebenfalls ein Auffinden der der Schreibanfrage zugeordneten Daten auf dem entfernten System umfassen 608. Falls sich die Daten entfernt befinden, können die Operationen ebenfalls ein Erzeugen einer Abbildung auf die Daten auf dem entfernten System umfassen 610. Die Operationen können ebenfalls ein Empfangen einer Leseanfrage für Daten auf der Zielspeichervorrichtung umfassen 612. 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 umfassen 612.
  • 7 ist ein Diagramm, das eine weitere Systemausführungsform 700 darstellt. In 7 wurden bestimmte Teile des in 1 dargestellten Systems 100 und der in 2 dargestellten Plattformverwaltungscontrollerschaltung 110 um der Klarheit willen ausgelassen (z. B. Platine 132), es ist aber verständlich, dass gleiche Teile aus 7 in einer Weise, die mit einer in 1 und/oder 2 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 Speicherinhalte 702 des Systemspeichers 121 zu lesen. Die Schaltung 110 kann ebenfalls im Stande sein, die Speicherinhalte 720 des Systemspeichers 721 auf die Speichervorrichtung 118 zu schreiben (und diese Operation kann in einer Weise durchgeführt werden, die der mit Bezug auf 3 oben beschriebenen Ausführungsform ähnlich ist). Alternativ oder zusätzlich kann die Schaltung 110 ebenfalls im Stande sein, die Speicherinhalte 720 des Systemspeichers 121 auf einen oder mehrere entfernte Systeme 140 über das Netzwerk 124 zu schreiben (und diese Operation kann in einer Weise durchgeführt werden, die der mit Bezug auf 5 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 Speicherprozessor 112 und/oder der Chipsatz 114 im Stande sein, zu signalisieren, dass ein Fehler aufgetreten ist. Als Antwort auf ein Signal von dem Prozessor 112 und/oder dem Chipsatz 114, dass ein kritischer Fehler aufgetreten ist, kann die Schaltung 110 im Stande sein, einen kritischen Fehler zu detektieren und die Speicherinhalte 121 auf die Speichervorrichtung 118 oder das entfernte System 140 (oder auf beiden) zu speichern. Dies kann z. B. eine Prüfung der Daten im Systemspeicher 121 zum Zeitpunkt des kritischen Fehlers ermöglichen.
  • 8 ist ein Flussdiagramm, das beispielhafte Operationen 800 darstellt, die gemäß einer weiteren Ausführungsform durchgeführt werden können. Die Operationen können ein Detektieren eines kritischen Fehlers umfassen 802. Die Operationen können weiterhin ein Lesen der Speicherinhalte des Systemspeichers umfassen 804. Die Operationen können ebenfalls ein Schreiben der Speicherinhalte auf eine Zielspeichervorrichtung umfassen 806. Alternativ oder zusätzlich können die Operationen ein Kommunizieren mit einem entfernten System 808 und Schreiben der Speicherinhalte auf das entfernte System umfassen 810.
  • 9 stellt eine weitere Systemausführungsform 900 des beanspruchten Gegenstands dar. In dieser Ausführungsform kann die Plattformverwaltungscontrollerschaltung 110' in einer Schaltungskarte 120 enthalten sein, die an den Bus 122 gekoppelt sein kann. Wie bei der Ausführungsform aus 1 kann die Plattformverwaltungscontrollerschaltung 110' in einem oder mehreren integrierten Schaltungschips enthalten sein oder einen Teil von diesen formen. Diese Ausführungsform kann einen Schaltungskarteneinschub 130 umfassen. Die Schaltungskarte 120 kann so konstruiert sein, dass es möglich ist, sie in den Einschub 130 einzustecken. Wenn die Schaltungskarte 120 ordnungsgemäß im Einschub 130 eingesteckt ist, können Verbinder 134 und 137 elektrisch und mechanisch miteinander gekuppelt sein. Wenn die Verbinder 134 und 137 so miteinander gekoppelt sind, kann die Karte 120 elektrisch an den Bus 122 gekoppelt werden und kann Daten und/oder Anweisungen mit dem Systemspeicher 121, dem Host-Prozessor 112, dem Benutzerschnittstellensystem 116 und/oder dem Flash-Speicher 106 über den Bus 122 und/oder den Bus 126 und den Chipsatz 114 austauschen. Alternativ oder zusätzlich kann die Plattformverwaltungscontrollerschaltung 110' Anweisungen und Daten mit dem Host-System 132' und einem oder mehreren an das Netzwerk 124' gekoppelten entfernten Systemen über die Nachrichtenverbindung 125' austauschen. Der Betrieb der Plattformverwaltungscontrollerschaltung 110 in dieser Ausführungsform kann mit dem mit Bezug auf 18 oben beschriebenen Betrieb identisch sein, außer dass die SPI-Busschnittstellenschaltung 308 weggelassen werden kann und stattdessen Anweisungen und Daten zwischen der Schaltungskarte 120 und dem Flash-Speicher 106 über den Chipsatz 114 ausgetauscht werden können.
  • 10 stellt eine weitere Systemausführungsform 1000 des beanspruchten Gegenstands dar. Das System 1000 kann generell einen Mehrfachkern(Multi-Core)-Host-Prozessor 112', einen Chipsatz 114, Systemspeicher 121', In-Band-Netzwerkschnittstellenschaltung 1006, Speichervorrichtung 118 und Out-of-Band (OOB)-Netzwerkschnittstellenschaltung 1008 umfassen, die im Stande ist, mit einem oder mehreren entfernten Systemen 140 über das Netzwerk 124 über die Nachrichtenverbindung 125 zu kommunizieren. Der Multi-Core-Host-Prozessor 112' 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-Prozessor 112' kann logisch und/oder physikalisch in eine Vielzahl von Partitionen unterteilt werden. So kann z. B. in dieser Ausführungsform der Prozessor 112' in eine Hauptpartition 1004, die CPU1 und CPU2 umfasst, und eine eingebettete Partition 1002, die CPU3 und CPU4 umfasst, aufgeteilt werden. Die Hauptpartition 1004 kann im Stande sein, ein Betriebssystem (wie z. B. Windows, Linux, usw.) auszuführen. Die eingebettete Partition 1002 kann im Stande sein, I/O-Vorgänge mit der Speichervorrichtung 118 und/oder der OOB-Netzwerkschnittstelle 1008 auszuführen, wie detaillierter nachfolgend beschrieben wird.
  • In dieser Ausführungsform kann der Speicher 121' logisch und/oder physikalisch in Systemspeicher 1, der im Stande ist, Anweisungen, Instruktionen und/oder Daten für Operationen auf der Hauptpartition 1004 zu speichern, und Systemspeicher 2, der im Stande ist, Anweisungen, Instruktionen und/oder Daten für Operationen auf der eingebetteten Partition 1002 zu speichern, partitioniert werden. Die OOB-Netzwerkschnittstelle 1008 und/oder die In-Band-Netzwerkschnittstelle 1006 können eine Netzwerkschnittstellenschaltung auf einer Karte umfassen, die im Stande ist, an einen Bus gekoppelt zu werden (ähnlich zur Karte 120 aus 9). In dieser Ausführungsform kann die OOB-Netzwerkschnittstelle 1008 im Stande sein, mit dem entfernten System 140 als Antwort auf OOB-Anweisungen aus der eingebetteten Partition 1002 zum Lesen und/oder Schreiben von Daten von dem/auf das entfernte System 140 zu kommunizieren. Die In-Band-Netzwerkschnittstelle 1006 kann im Stande sein, mit einem entfernten System (nicht gezeigt) als Antwort auf Anweisungen aus der Hauptpartition 1004 zu kommunizieren.
  • Die Betriebsmerkmale dieser Ausführungsform können denen, die mit Bezug auf 19 oben beschrieben wurden, ähnlich sein. Allerdings kann in dieser Ausführungsform die eingebettete Partition 1002 im Stande sein, die dem Plattformverwaltungscontroller 110 (wie oben detailliert beschrieben) zugeschriebenen Operationen durchzuführen. Während die Hauptpartition 1004 im Stande sein kann, ein OS sowie I/O-Vorgänge auf der Zielspeichervorrichtung 118 auszuführen, kann die eingebettete Partition 1002 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 Hauptpartition 1004 ausgeführt wird, zu arbeiten. Im Hinblick darauf kann die eingebettete Partition 1002 als ein Zielvorrichtungs-Proxy-Agent arbeiten, um I/O-Vorgänge auf der Zielvorrichtung 118 für die Hauptpartition 1004 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 Zielspeichervorrichtung 118 zu empfangen. Die Schreibanweisungen können z. B. von der Hauptpartition 1004 erzeugt werden. Als Antwort auf eine anhängige Schreibanfrage, die an die Zielvorrichtung 118 gerichtet ist, kann die eingebettete Partition 1002 die Schreibanfrage aufteilen, um die Daten auf die Speichervorrichtung 118 und/oder das entfernte System 140 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 Zielvorrichtung 118 geschrieben werden. In diesem Fall kann die eingebettete Partition 1002 im Stande sein, den Fehler in der Verarbeitung zu detektieren, so dass ein Vervollständigen einer anhängigen Schreibanfrage an die Zielvorrichtung 118 nicht stattfindet, und die der anhängigen Schreibanfrage entsprechenden unbestätigten Daten auf das entfernte System 140 zu schreiben. Nach einem Zurücksetzen der Hauptpartition 1004 kann die eingebettete Partition 1002 im Stande sein, eine Anfrage an das entfernte System 140 (über die OOB-Netzwerkschnittstelle 1008) zu senden, um die unbestätigten Daten abzurufen und die unbestätigten Daten auf die Zielvorrichtung 118 zu schreiben.
  • Zu diesem Zweck und bei der Initialisierung nach einem Zurücksetzen des Prozessors 112' kann die eingebettete Partition 1002 eine ”Mailbox” im Systemspeicher 2 erzeugen. Die Mailbox kann zum Beispiel eine Speicherallozierung für eine oder mehrere vorgegebene Vorrichtungen im System 1000 aufweisen. Somit kann zum Beispiel die eingebettete Partition 1002 eine Mailbox für die OOB-Netzwerkschnittstelle 1008 erzeugen. Die eingebettete Partition 1002 kann in die Mailbox für die OOB-Netzwerkschnittstelle 1008 zum Beispiel Instruktionen einfügen, auf die die OOB-Netzwerkschnittstelle 1008 zugreifen kann, um mit dem entfernten System 140 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 System 140 zugeordnete Zeigerinformationen umfassen.
  • 11 ist ein Flussdiagramm, das beispielhafte Operationen 1100 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 umfassen 1102. Die Operationen können weiterhin ein Ausführen eines Betriebssystems mittels der Hauptpartition umfassen 1104. Die Operationen können zusätzlich ein Leiten von Zielvorrichtungs-I/O-Verkehr durch die eingebettete Partition umfassen 1106. Die Operationen können weiterhin Schreib- und Lesefehleroperationen, die oben mit Bezug auf 4 beschrieben wurden, entfernte Datenwiederherstellungs-, die oben mit Bezug auf 6 beschrieben wurden, Systemfehlerwiederherstellungsoperationen, die oben mit Bezug auf 8 beschrieben wurden, und/oder Operationen, die nachfolgend mit Bezug auf 12 beschrieben werden, umfassen.
  • 12 ist ein Flussdiagramm, das beispielhafte Operationen 1200 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 umfassen 1202. 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 umfassen 1204. 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, umfassen 1206. 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, umfassen 1208.
  • 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.

Claims (11)

  1. Vorrichtung zur Verwaltung von kritischen Fehlern eines Hostsystems, welche während einer Ausführung einer Schreibanfrage zum Schreiben von Daten auf eine Zielspeichervorrichtung (118) auftreten, aufweisend: eine integrierte Schaltung (IC) (110), aufweisend einen Mehrkernprozessor (112; 112') und zumindest einen Speicher (210; 121; 121'), wobei der Mehrkernprozessor (112; 112') eine Hauptpartition (1004), aufweisend mindestens einen Prozessorkern (1002), der im Stande ist, ein Betriebssystem auszuführen, und eine eingebettete Partition, aufweisend mindestens einen anderen Prozessorkern, umfasst, und wobei der zumindest eine Speicher (210; 121; 121') Instruktionen aufweist, die, wenn sie von der eingebetteten Partition ausgeführt werden, bewirken, dass die eingebettete Partition die folgenden Operationen ausführt: Empfangen der Schreibanfrage zum Schreiben von Daten auf die Zielspeichervorrichtung (118), Kommunizieren mit einem entfernten System (140), das an die eingebettete Partition gekoppelt ist, und erneutes Abbilden von der Schreibanfrage zugehörigen Daten auf das entfernte System (140); wobei die Instruktionen weiter bewirken, dass die eingebettete Partition die folgenden Operationen ausführt, wenn ein kritischer Fehler des Hostsystems, der die Hauptpartition einbezieht, während einer Ausführung der Schreibanfrage geschieht und der kritische Fehler des Hostsystems unbestätigte (uncommitted) Daten, die an die Zielspeichervorrichtung gerichtet sind, hinterlässt und imstande ist, ein Zurücksetzen der Hauptpartition zu verursachen: Detektieren des Auftretens des kritischen Fehlers des Hostsystems in Reaktion auf ein Signal von der Zielspeichervorrichtung (118); Schreiben der unbestätigten Daten auf das entfernte System (140); und Abrufen und Schreiben der unbestätigten Daten von dem entfernten System (140) auf die Zielspeichervorrichtung (118) nach einer Initialisierung von dem Zurücksetzen der Hauptpartition; wobei die eingebettete Partition im Stande ist, alle oder einen Teil der Operationen unabhängig von dem Betriebssystem durchzuführen.
  2. Vorrichtung nach Anspruch 1, wobei die Instruktionen, wenn sie durch die eingebettete Partition ausgeführt werden, weiter bewirken, dass die eingebettete Partition: der Schreibanfrage zugehörige Daten auf einen reservierten Bereich (304) der Zielspeichervorrichtung (118) erneut abbildet, mindestens eine Datenleseanfrage empfängt, um die unbestätigten Daten zu lesen, und die Datenleseanfrage auf den reservierten Bereich (304) der Zielspeichervorrichtung (118) umleitet.
  3. System (1000) zum Verwalten von kritischen Fehlern eines Hostsystems, welche während der Ausführung einer Schreibanfrage zum Schreiben von Daten auf eine Zielspeichervorrichtung (118) auftreten, aufweisend: eine integrierte Schaltung (IC) (110), aufweisend einen Mehrkernprozessor (112; 112'), zumindest einen Speicher (210; 121; 121') und eine an einen Bus gekoppelte Out-of-Band-(OOB)-Netzwerkschnittstellenkarte (1008), wobei der Mehrkernprozessor eine Hauptpartition (1008), aufweisend mindestens einen Prozessorkern, der im Stande ist, ein Betriebssystem auszuführen, und eine eingebettete Partition (1002), aufweisend mindestens einen anderen Prozessorkern, umfasst, wobei der Speicher Instruktionen aufweist, die, wenn sie durch die eingebettete Partition ausgeführt werden, die eingebettete Partition dazu veranlassen, die folgenden Operationen durchzuführen: Empfangen der Schreibanfrage zum Schreiben von Daten auf die Zielspeichervorrichtung (118), Kommunizieren über die OOB-Netzwerkschnittstellenkarte mit einem entfernten System (140), das an die eingebettete Partition gekoppelt ist und erneut Abbilden von der Schreibanfrage zugehörigen Daten auf das entfernte System (140); wobei die Instruktionen weiter bewirken, dass die eingebettete Partition die folgenden Operationen durchführt, wenn ein kritischer Fehler des Hostsystems, welcher die Hauptpartition einbezieht, während einer Ausführung der Schreibanfrage auftritt und der kritische Fehler des Hostsystems unbestätigte (uncommitted) Daten, die an die Zielspeichervorrichtung gerichtet sind, hinterlässt und dazu imstande ist, ein Zurücksetzen der Hauptpartition zu verursachen: Detektieren des Auftretens des kritischen Fehlers des Hostsystems in Reaktion auf ein Signal von der Zielspeichervorrichtung (118); Schreiben der unbestätigten Daten auf das entfernte System (140); Kommunizieren über die OOB-Netzwerkschnittstellenkarte mit dem entferten System (140) nach einer Initialisierung von dem Zurücksetzen der Hauptpartition (1004), um die unbestätigten Daten von dem entfernten System abzurufen und die unbestätigten Daten auf die Zielspeichervorrichtung (118) zu schreiben.
  4. System nach Anspruch 3, wobei die Instruktionen, wenn sie durch die eingebettete Partition (1002) ausgeführt werden, weiter bewirken, dass die eingebettete Partition: der Schreibanfrage zugehörige Daten auf einen reservierten Bereich der Zielspeichervorrichtung (118) erneut abbildet, mindestens eine Datenleseanfrage empfängt, um die dem Fehler zugehörigen Daten zu lesen, und die Datenleseanfrage auf den reservierten Bereich der Zielspeichervorrichtung (118) umleitet.
  5. System nach Anspruch 3, wobei die eingebettete Partition dazu im Stande ist, alle oder einen Teil der Operationen unabhängig von dem Betriebssystem durchzuführen.
  6. Computerlesbarer Speicherdatenträger, der Instruktionen speichert, zum Verwalten von kritischen Fehlern eines Hostsystems, welche während der Ausführung einer Schreibanfrage zum Schreiben von Daten auf eine Zielspeichervorrichtung (118) auftreten, wobei die Instruktionen, wenn sie durch einen Mehrkernprozessor (112; 112') mit mehreren Prozessorkernen ausgeführt werden, den Mehrkernprozessor zu Folgendem veranlassen: Partitionieren der mehreren Prozessorkerne in eine Hauptpartition (1004), aufweisend mindestens einen Prozessorkern, der im Stande ist, ein Betriebssystem auszuführen, und eine eingebettete Partition (1002), aufweisend mindestens einen anderen Prozessorkern, wobei die Instruktionen, wenn sie weiter von der eingebetteten Partition (1002) ausgeführt werden, die eingebettete Partition veranlassen, die folgenden Operationen durchzuführen: Empfangen der Schreibanfrage zum Schreiben von Daten auf die Zielspeichervorrichtung (118), Kommunizieren mit einem entfernten System (140), das an die eingebettete Partition gekoppelt ist, und erneutes Abbilden von der Schreibanfrage zugehörigen Daten auf das entfernte System (140); wobei die Instruktionen weiter bewirken, dass die eingebettete Partition die folgenden Operationen durchführt, wenn ein kritischer Fehler des Hostsystems, der die Hauptpartition (1004) einbezieht, während einer Ausführung der Schreibanfrage auftritt und der kritische Fehler des Hostsystems unbestätigte (uncommitted) Daten, die an die Zielspeichervorrichtung (118) gerichtet sind, hinterlässt und imstande ist, ein Zurücksetzen der Hauptpartition zu verursachen: Detektieren des Auftretens des kritischen Fehlers des Hostsystems in Reaktion auf ein Signal von der Zielspeichervorrichtung (118); Schreiben der unbestätigten Daten auf das entfernte System (140); und Abrufen und Schreiben der unbestätigten Daten von dem entfernten System (140) auf das Zielsystem nach einer Initialisierung von dem Zurücksetzen der Hauptpartition.
  7. Computerlesbarer Speicherdatenträger nach Anspruch 6, wobei die Instruktionen, wenn sie durch die eingebettete Partition (1002) ausgeführt werden, weiter bewirken, dass die eingebettete Partition die folgenden Operationen durchführt: erneutes Abbilden von der Schreibanfrage zugehörigen Daten auf einen reservierten Bereich der Zielspeichervorrichtung; Empfangen mindestens einer Datenleseanfrage zum Lesen der unbestätigten Daten; und Umleiten der Datenleseanfrage auf den reservierten Bereich (304) der Zielspeichervorrichtung (118).
  8. Computerlesbarer Speicherdatenträger nach Anspruch 6, wobei die Instruktionen durch die eingebettete Partition (1002) ausgeführt werden, so dass alle oder ein Teil der Operationen unabhängig von dem Betriebssystem durchgeführt werden.
  9. Verfahren zur Verwaltung von kritischen Fehlern eines Hostsystems, welche während einer Ausführung einer Schreibanfrage zum Schreiben von Daten auf eine Zielspeichervorrichtung (118) auftreten, wobei das Verfahren Folgendes aufweist: Partitionieren eines Mehrkernprozessors (112; 112') mit einer Vielzahl von Prozessorkernen in eine Hauptpartition (1004), aufweisend mindestens einen Prozessorkern, der im Stande ist, ein Betriebssystem auszuführen, und eine eingebettete Partition (1002), aufweisend mindestens einen anderen Prozessorkern, Empfangen einer Schreibanfrage mit der eingebetteten Partition zum Schreiben von Daten auf eine Zielspeichervorrichtung (118), Kommunizieren mit einem entfernten System (140), das an die eingebettete Partition (1002) gekoppelt ist, mittels der eingebetteten Partition und erneutes Abbilden von der Schreibanfrage zugehörigen Daten auf das entfernte System mit der eingebetteten Partition; wobei, wenn ein kritischer Fehler des Hostsystems, welcher die Hauptpartition (1004) einbezieht, während einer Ausführung der Schreibanfrage auftritt und der kritische Fehler des Hostsystems unbestätigte (uncommitted) Daten, die an die Zielspeichervorrichtung (140) gerichtet sind, hinterlässt und imstande ist, ein Zurücksetzen der Hauptpartition (1004) zu verursachen, das Verfahren weiter Folgendes umfasst: Detektieren des Auftretens des Fehlers mit der eingebetteten Partition in Reaktion auf ein Signal von der Zielspeichervorrichtung (118); Schreiben der unbestätigten Daten auf das entfernte System (140); und Abfragen und Schreiben der unbestätigten Daten von dem entfernten System (140) auf die Zielspeichervorrichtung nach einer Initialisierung von dem Zurücksetzen der Hauptpartition.
  10. Verfahren nach Anspruch 9, des Weiteren aufweisend: erneutes Abbilden der unbestätigten Daten auf einen reservierten Bereich (304) der Zielspeichervorrichtung (118); Empfangen mindestens einer Datenleseanfrage zum Lesen der unbestätigten Daten; und Umleiten der Datenleseanfrage auf den reservierten Bereich (304) der Zielspeichervorrichtung (118).
  11. Verfahren nach Anspruch 9, wobei die eingebettete Partition (1002) das Empfangen, Kommunizieren, erneut Abbilden, Detektieren, Schreiben auf das entfernte System, Abfragen von dem entfernten System und/oder Schreiben auf die Zielspeichervorrichtung unabhängig von dem Betriebssystem durchführt.
DE112007000688.9T 2006-03-21 2007-03-14 Fehlerverwaltungstopologien Expired - Fee Related DE112007000688B4 (de)

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 DE112007000688T5 (de) 2009-02-12
DE112007000688B4 true 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)

* Cited by examiner, † Cited by third party
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
US8799586B2 (en) * 2009-09-30 2014-08-05 Intel Corporation Memory mirroring and migration at home agent
US8327228B2 (en) * 2009-09-30 2012-12-04 Intel Corporation Home agent data and memory management
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)

* Cited by examiner, † Cited by third party
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
JPH07504527A (ja) 1992-03-09 1995-05-18 オースペックス システムズ インコーポレイテッド 高性能の不揮発性ram保護式の書き込みキャッシュアクセラレータシステム
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
US7228379B2 (en) 2001-06-21 2007-06-05 Steven 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

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
WIKIPEDIA: Backup. 17.03.2006 [recherchiert am 26.08.2011]. Im Internet *
WIKIPEDIA: Backup. 17.03.2006 [recherchiert am 26.08.2011]. Im Internet <http://en.wikipedia.org/w/index.php?title=Backup&oldid=44266486>

Also Published As

Publication number Publication date
WO2007109476A1 (en) 2007-09-27
DE112007000688T5 (de) 2009-02-12
CN101405700B (zh) 2011-03-09
TWI333144B (en) 2010-11-11
TW200813707A (en) 2008-03-16
US20060212762A1 (en) 2006-09-21
CN101405700A (zh) 2009-04-08
US7543179B2 (en) 2009-06-02

Similar Documents

Publication Publication Date Title
DE112007000688B4 (de) Fehlerverwaltungstopologien
DE602004007927T2 (de) Integrierter schaltkreis, der mithilfe verschiedener kommunikationsprotokolle kommunizieren kann
DE60319125T2 (de) Integrierte schaltung mit mehreren betriebsarten
DE102012210914B4 (de) Switch-Fabric-Management
DE112005001512B4 (de) Vorrichtung und Verfahren für den Hochleistungs- Zugriff auf einen flüchtigen Plattenlaufwerkspeicher unter Einsatz einer integrierten Direkt-Speicherzugriffs-Einrichtung
DE102012210582B4 (de) Verringern der Auswirkung des Ausfalls einer Vermittlungsstelle in einem Schaltnetzwerk mittels Schaltkarten
DE602004012106T2 (de) Multikanal-DMA mit gemeinsamem FIFO-Puffer
DE102011014588A1 (de) Multicasting-Schreibanforderungen an Mehrfachspeicher-Controller
DE112005002405B4 (de) Fehlerverarbeitung für Direktspeicherzugriffs-Adreßübersetzung
DE102004057756B4 (de) USB-Steuerungseinrichtung mit OTG-Steuerungseinheit
DE102017113576A1 (de) Auf PCI Express basierender Speichereinsatz mit Zweifachport, der Einzelport-Speichercontroller enthält
DE112017001148T5 (de) Abflachende portalbrücke .
DE102009061252B3 (de) Vorrichtung, Verfahren und System zur Verarbeitung einer Transaktion auf einem PCI-Bus mittels eines Root-Komplexes
DE102017121465A1 (de) Datenprotokoll zum verwalten von peripheriegeräten
DE102007009300B4 (de) Rechnersystem und Verfahren zum Betreiben eines Rechnersystems
DE10335643B4 (de) Vorrichtung und Verfahren zum Steuern des Zugriffs von mehreren Datenverarbeitungseinrichtungen auf einen Speicher
DE112007001135T5 (de) Gemeinschaftliche Nutzung von Daten durch Partitionen in einem partitionierbaren System
DE112018005121T5 (de) Speichersystem unter verwendung von cloud-speicher als eine speicherbank
DE102019102643A1 (de) Neuartige SSD-Architektur für eine FPGA-basierte Beschleunigung
DE10220886A1 (de) Datenspeichersysteme mit verbesserten Netzwerkschnittstellen
DE102013209643A1 (de) Mechanismus für optimierte Nachrichtenaustauschdatenübertragung zwischen Nodelets innerhalb eines Plättchens
DE112007003722B4 (de) Modifizieren von Systemroutinginformationen in linkbasierenden Systemen
DE60133522T2 (de) Behandlung des Speicherüberlaufs in einem Datenverarbeitungssystem
DE60314145T2 (de) Methode und vorrichtung welche einen externen zugriff zu internen konfigurationsregistern erlauben
DE69919584T2 (de) Betriebsmittelsteuerung in einer datenverarbeitungsanlage

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