DE112008001528B4 - Multiprozessorsystem und Steuerverfahren hierfür - Google Patents

Multiprozessorsystem und Steuerverfahren hierfür Download PDF

Info

Publication number
DE112008001528B4
DE112008001528B4 DE112008001528.7T DE112008001528T DE112008001528B4 DE 112008001528 B4 DE112008001528 B4 DE 112008001528B4 DE 112008001528 T DE112008001528 T DE 112008001528T DE 112008001528 B4 DE112008001528 B4 DE 112008001528B4
Authority
DE
Germany
Prior art keywords
processor
abnormal operation
control
assigned
specific
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
DE112008001528.7T
Other languages
English (en)
Other versions
DE112008001528T5 (de
Inventor
Takashi Inoue
Takeshi Inoguchi
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.)
Toyota Motor Corp
Original Assignee
Toyota Motor 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 Toyota Motor Corp filed Critical Toyota Motor Corp
Publication of DE112008001528T5 publication Critical patent/DE112008001528T5/de
Application granted granted Critical
Publication of DE112008001528B4 publication Critical patent/DE112008001528B4/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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2043Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant where the redundant components share a common memory address space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2025Failover techniques using centralised failover control functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2035Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant without idle spare hardware

Abstract

Multiprozessorsystem mit einer Mehrzahl von Prozessoren, wobei den Prozessoren eine Steuerung zugewiesen ist, aufweisend:eine Anomaliebetriebserkennungseinheit (20), welche einen anormalen Betrieb erkennt, der in einem bestimmten Prozessor aus der Mehrzahl von Prozessoren (0, 1, 2 3) aufgetreten ist;eine Anweisungseinheit (20), welche anweist, eine bestimmte Steuerung, die dem bestimmten Prozessor zugewiesen ist, zu ändern, um in einem Ersatzprozessor durchgeführt zu werden, der einer der Prozessoren anders als der bestimmte Prozessor ist, basierend auf einem Ergebnis, das von der Anomaliebetriebserkennungseinheit erkannt wurde; undeine Anomaliebetriebsdiagnoseeinheit (20), die diagnostiziert, ob der anormale Betrieb in der Hardware des bestimmten Prozessors auftritt; wobeiwenn der anormale Betrieb von der Anomaliebetriebserkennungseinheit in dem bestimmten Prozessor erkannt wird, die bestimmte Steuerung von dem Ersatzprozessor durchgeführt wird, der von der Anweisungseinheit angewiesen wurde; undwenn nach der Erkennung des anormalen Betriebs des bestimmten Prozessors durch die Anomaliebetriebsdiagnoseeinheit der anormale Betrieb als nicht in der Hardware des bestimmten Prozessors liegend diagnostiziert wird, eine vorherige Steuerung, die dem Ersatzprozessor zugewiesen war, bevor die bestimmte Steuerung dem Ersatzprozessor zugewiesen wurde, und die sich von der bestimmten Steuerung unterscheidet dem bestimmten Prozessor zugewiesen und von dem bestimmten Prozessor durchgeführt wird.

Description

  • Die Erfindung betrifft ein Multiprozessorsystem mit einer Mehrzahl von Prozessoren, von denen jedem eine zu verarbeitende Steuerung zugewiesen ist, sowie ein Steuerverfahren des Multiprozessorsystems.
  • Als herkömmliche Technologie ist ein Multiprozessorsystem, das aus einer Mehrzahl von Prozessoren gebildet ist, allgemein bekannt (siehe beispielsweise die unter der Nr. H6-30069 ausgelegte japanische Patentveröffentlichung). Das Multiprozessorsystem gemäß Patentdokument 1 schafft drei oder mehr Prozessoren, von denen jeder einen normalen Modus und einen Überwachungsmodus hat. Im normalen Modus führt ein Prozessor eine Informationsverarbeitung durch Durchführung eines Programms durch. Im Überwachungsmodus führt ein anderer Prozessor ein Programm durch, welches das gleiche Programm ist, das der Prozessor durchführt, der ausgebildet ist, den normalen Modus durchzuführen und der andere Prozessor vergleicht seinen eigenen Verarbeitungsbetrieb mit einem Verarbeitungsbetrieb des Prozessors, der angewiesen ist, den normalen Modus durchzuführen. Wenn die Verarbeitungsvorgänge voneinander unterschiedlich sind, erzeugt der andere Prozessor ein Anomaliebetriebserkennungssignal. Zusätzlich ist einer der Prozessoren ausgewählt, im normalen Modus zu arbeiten und die anderen Prozessoren sind ausgewählt, im Überwachungsmodus zu arbeiten.
  • Wenn einer der Prozessoren, der ausgewählt ist, im Überwachungsmodus zu arbeiten, das Anomaliebetriebserkennungssignal erzeugt, wird der Prozessor, der ausgewählt ist, im normalen Modus zu arbeiten, vom Multiprozessorsystem getrennt und einer der Prozessoren, der ausgewählt ist, im Überwachungsmodus zu arbeiten, wird ausgewählt, im normalen Modus zu arbeiten und die verbleibenden Prozessoren, die ausgewählt sind, im Überwachungsmodus zu arbeiten, werden unverändert gehalten; hierdurch wird das Multiprozessorsystem neu strukturiert. Andererseits, wenn einer der Prozessoren, die ausgewählt sind, im Überwachungsmodus zu arbeiten, das Anomaliebetriebserkennungssignal erzeugt, wird der Prozessor, der das Anomaliebetriebserkennungssignal erzeugt, vom Multiprozessorsystem getrennt, die verbleibenden Prozessoren sind ausgewählt, unverändert im Überwachungsmodus zu arbeiten und das Multiprozessorsystem wird neu gestartet.
  • Jedoch müssen bei obiger herkömmlicher Technologie der Prozessor, der ausgewählt ist, im normalen Modus zu arbeiten und die Prozessoren, die ausgewählt sind, im Überwachungsmodus zu arbeiten, das gleiche Programm durchführen. Andererseits wird in einem anderen Multiprozessorsystem, bei dem die durchzuführende Steuerung jedem der Prozessoren zugewiesen ist, das gleiche Programm nicht stets in den Prozessoren durchgeführt. Da das gleiche Programm nicht in den Prozessoren durchgeführt wird, kann, wenn die herkömmliche Technologie bei dem Multiprozessorsystem angewendet wird, die herkömmliche Technologie einen anormalen Betrieb, der in einem Prozessor erzeugt wird, nicht handhaben. Zusätzlich, wenn in dem herkömmlichen Multiprozessorsystem ein Prozessor, dem eine wichtige Steuerung zugewiesen ist, einen anormalen Betrieb erzeugt, ist eine Gegenmaßnahme notwendig, so dass der Prozessor, dem die wichtige Steuerung zugewiesen ist, nicht vom Multiprozessorsystem getrennt werden kann.
  • Darüber hinaus beschreibt die Druckschrift US 4 356 546 A ein fehlertolerantes Multi-Computer-System für Steuerungsanwendungen. Das System weist eine Vielzahl von Computern auf, denen jeweils ein Satz von Aufgaben zugewiesen ist, die sie ausführen können. Kein einzelner Computer in dem System fungiert als ein Master und kein einzelner Computer führt alle der Aufgaben aus. Die Kommunikation zwischen den Computer erfolgt durch individuelle Kommunikationsverbindungen, über die jeder Computer direkt Informationen an alle anderen Computer in dem System sendet. Jeder Computer umfasst einen Anwendungsrechner und eine Betriebssteuereinrichtung. Die Betriebssteuereinrichtung empfängt Nachrichten über die Kommunikationsverbindungen und wählt aus den zugewiesenen Aufgaben die Aufgaben aus, die von dem zugehörigen Anwendungsrechner auszuführen sind. Jede Betriebssteuereinrichtung beinhaltet einen Fehlerbehandler, der die von den anderen Computern empfangenen Nachrichten prüft. Die Fehlerbehandler senden und empfangen Fehlermeldungen über die Kommunikationsverbindungen, um bei der Identifizierung eines fehlerhaften Computers zu unterstützen. Nachfolgende Meldungen von als fehlerhaft erachteten Computern werden ignoriert, und die dem fehlerhaften Computer zugewiesenen Aufgaben werden von alternativen Computern in dem System ausgeführt.
  • Ferner beschreibt die Druckschrift US 5 796 937 A ein Verfahren und eine Vorrichtung für den Umgang mit einer Prozessoranomalie in einem Multiprozessorsystem. Das Multiprozessorsystem verfügt über Prozessoren zur Verarbeitung verteilter Arbeiten, eine Überwachungseinrichtung zum Erkennen einer Anomalie in einem der Prozessoren, eine Verwaltungseinrichtung zur Bereitstellung von Informationen über den anomalen Prozessor und Informationen über einen redundanten Prozessor sowie eine Arbeitszuweisungseinrichtung zum Suchen der verteilten Arbeiten des anomalen Prozessors aus einer Arbeitstabelle entsprechend diesen Angaben und zum Zuweisen der gesuchten Arbeiten zu bestimmten Prozessoren. Das System beinhaltet eine Tabelle mit Maßnahmen bei Anomalien, die selektiv Maßnahmen beschreibt, die für jede der verteilten Arbeiten gegen eine Anomalie zu ergreifen sind. Die Arbeitszuweisungseinrichtung bestimmt in Übereinstimmung mit der Anomaliemaßnahmentabelle für jede der verteilten Arbeiten des anormalen Prozessors eine Maßnahme, die zu ergreifen ist, und weist die verteilten Arbeiten des anormalen Prozessors bestimmten Prozessoren zu. Wenn es sich um eine rekursive Anomalie handelt, wird die Zuweisung von Arbeiten, für die eine bestimmte Maßnahme wie Wiederholung oder Fortsetzung ergriffen werden soll, ausgesetzt. Wenn der redundante Prozessor initialisiert wird, wird die Zuweisung von Arbeiten an den redundanten Prozessor verzögert.
  • Ferner beschreibt die Druckschrift DE 10 2004 046 288 A1 ein Verfahren zur Abarbeitung eines Computerprogramms auf einem Computersystem. Um die bei der Abarbeitung eines Computerprogramms auf einem Computersystem auftretenden Fehler möglichst flexibel zu behandeln und dabei eine möglichst hohe Verfügbarkeit des Computersystems zu gewährleisten, soll einem bei einem auftretenden Fehler von einer Fehlererkennungseinheit erzeugten Fehlerbehandlungssignal eine Kennung zugeordnet werden, in Abhängigkeit von der Kennung eine Fehlerbehandlungsroutine aus einer vorgebbaren Menge von Fehlerbehandlungsroutinen ausgewählt werden und die ausgewählte Fehlerbehandlungsroutine ausgeführt werden.
  • Ferner beschreibt die Druckschrift US 3 814 919 A eine Fehlererfassung und Isolation in einem Datenverarbeitungssystem. Ein Fehlerunterbrechungssystem ist bei Erfassung eines Fehlers dazu angeordnet, einen Prozessor, in dem der Fehler erfasst wird, zu veranlassen, in eine Fehlerverlassensroutine einzutreten. Aufeinanderfolgende Fehlerbedingungen, die während der Durchführung der Fehlerverlassensroutine auftreten, bewirken einen Wiedereintritt in diese Routine. Ein fehlerhafter Prozessor ist daher in der Fehlerverlassensroutine gefangen.
  • Ferner beschreibt die Druckschrift US 2004 / 0 019 835 A1 Systeme und Methoden zur Fehlerbehandlung, die für Computersysteme mit einem oder mehreren Prozessoren zur Behandlung von Fehlern in einem koordinierten Art und Weise zwischen Hardware und beliebiger Firmware oder Softwareschichten genutzt werden können. Ein Computersystem beinhaltet einen nichtflüchtigen Speicher und zumindest einen Prozessor. Eine Firmware-Fehlerbehandlungsroutine ist in dem nichtflüchtigen Speicher gespeichert. Die Firmware-Fehlerbehandlungsroutine dient der Fehlerbehandlung. Jeder des zumindest einen Prozessors erkennt Fehler. Jeder Prozessor führt die Firmware-Fehlerbehandlungsroutine bei Erkennen eines Fehlers aus. Die ausgeführte Firmware-Fehlerbehandlungsroutine behandelt den Fehler. Die ausgeführte Firmware-Fehlerbehandlungsroutine protokolliert auch Fehlerinformationen in einem Protokoll.
  • Ferner beschreibt die Druckschrift US 2006 / 0 117 218 A1 ein Multi-Processing-System, das in der Lage ist, einen Betriebsablauf auch dann effizient fortzusetzen, wenn ein Fehler in einem Prozessor während eines Systembetriebs auftritt. Das beschriebene Multi-Prozessor System beinhaltet einen Speicher zur Speicherung eines Programms und von für die Ausführung des Programms notwendigen Informationen. Ein Prozessor-Manager liest das Programm aus dem Speicher, teilt das gelesene Programm in Threads mit Priorität auf und weist die Threads zumindest zwei Prozessoren auf der Grundlage der Priorität der Threads und eines Verarbeitungsstatus jedes Prozessors zu. Die zumindest zwei Prozessoren führen die von dem Prozessor-Manager zugewiesenen Threads aus. Ein Verarbeitungsdaten-Manager speichert Informationen, die für die Ausführung des von dem Prozessor zugewiesenen Threads notwendig sind, und gibt die gespeicherten Informationen, die für die Ausführung des zugewiesenen Threads notwendig sind, an den Speicher aus, falls ein Fehler in einem der Prozessoren auftritt.
  • Ferner beschreibt die Druckschrift US 2007 / 0 038 885 A1 ein Verfahren zum Betrieb einer Anordnung eine Vielzahl von Computern, die zur Ausführung von Softwareeinheiten konfiguriert sind. Eine kontinuierliche Überwachung der Vielzahl von Computern und ein Eingreifen bei allen ausgefallenen Computern wird über einen Überwachungscomputer durchgeführt. Den Softwareeinheiten sind Gewichtungen entsprechend ihrer Bedeutung zugewiesen, und die Verfahrensschritte werden im Falle des Versagens eines Computers aufgerufen. Zum Zeitpunkt der Überwachung werden dadurch Informationen über das Versagen aller ausgefallenen Computer und davon betroffener Softwareeinheiten gesammelt. Die Softwareeinheiten, die von dem Versagen oder von Fehlern betroffen sind, werden auf andere Computer transferiert. Die Übertragung wird über die Gewichtung der Softwareeinheiten bestimmt.
  • Ferner beschreibt die Druckschrift US 2003 / 0 162 503 A1 ein Verfahren und eine auf mehreren Prozessoren basierende Vorrichtung zur dynamischen Neuzuweisung von Prozessoren, um eine redundante Funktionalität bereitzustellen, wobei das Verfahren die folgenden Schritte umfasst: Erkennen eines Fehlers in einer ersten Funktion mit einer ersten Priorität, wobei die erste Funktion von einem ersten Prozessor unterstützt wird; Auswählen eines zweiten Prozessors, der eine zweite Funktion mit einer zweiten Priorität unterstützt; und Neuzuweisen des zweiten Prozessors als Reaktion auf den Fehler, um die erste Funktion zu unterstützen, wenn eine vorbestimmte Beziehung besteht, die der ersten Priorität und der zweiten Priorität entspricht.
  • Ferner beschreiben AGGARWAL, Nidhi, et al. in „Configurable isolation: building high availability systems with commodity multi-core processors", ACM SIGARCH Computer Architecture News, 2007, 35 Jg, Nr. 2, S. 470-481 eine Analyse von Methoden zur lebenslangen Verwertbarkeit bei CMPs, die teilweise funktionale Ausführungskerne beinhalten. Insbesondere wird untersucht, wie Prozessorvirtualisierung einer CMP-Architektur helfen kann, Fehler durch migrierende Berechnung oder Virtualisierungsfunktionalität, die als Folge des Fehlers von der Hardware nicht unterstützt werden kann, zu überwinden.
  • Ferner schlagen LAPRIE, J.-C., et al. in „Definition and analysis of hardware- and software-fault-tolerant architectures", Computer, 1990, 23. Jg., Nr. 7, S. 39-51, eine neuartige, kostengünstige Architektur für Hochverfügbarkeitssysteme vor, die aus zukünftigen Mehrkernprozessoren aufgebaut werden. Eine neue Chip-Multiprozessor-Architektur soll eine konfigurierbare Isolierung zur Fehlereindämmung und zur Ausmusterung von Komponenten auf der Grundlage kostengünstiger Modifikationen bieten.
  • Schließlich stellt JOSEPH, Russ in „Exploring salvage techniques for multi-core architectures", in Workshop on High Performance Computing Reliability Issues (HPCRI), 2005, eine strukturierte Definition von hardware- und softwarefehlertoleranten Architekturen sowie eine Reihe von Hardware- und Software-Fehlertoleranzarchitekturen vor.
  • Der Erfindung liegt als eine Aufgabe zugrunde, eines oder mehrere der vorstehenden Probleme zu beseitigen und ein Multiprozessorsystem und ein Steuerverfahren für das Multiprozessorsystem zu schaffen, damit eine einem bestimmten Prozessor zugewiesene Steuerung kontinuierlich fortgeführt werden kann, auch wenn ein anormaler Betrieb in dem bestimmten Prozessor aus Prozessoren, denen eine durchzuführende Steuerung zugewiesen ist, auftritt.
  • Diese Aufgabe wird erfindungsgemäß gelöst durch ein Multiprozessorsystem mit den Merkmalen des Anspruchs 1 und ein Steuerverfahren für ein Multiprozessorsystem mit den Merkmalen des Anspruchs 10. Vorteilhafte Weiterbildungen sind Gegenstand der beigefügten Unteransprüche.
  • Somit wird diese Aufgabe wird gelöst durch ein Multiprozessorsystem mit einer Mehrzahl von Prozessoren, wobei den Prozessoren eine Steuerung zugewiesen ist, aufweisend: eine Anomaliebetriebserkennungseinheit, welche einen anormalen Betrieb erkennt, der in einem bestimmten Prozessor aus der Mehrzahl von Prozessoren aufgetreten ist; eine Anweisungseinheit, welche anweist, eine bestimmte Steuerung, die dem bestimmten Prozessor zugewiesen ist, zu ändern, um in einem Ersatzprozessor durchgeführt zu werden, der einer der Prozessoren anders als der bestimmte Prozessor ist, basierend auf einem Ergebnis, das von der Anomaliebetriebserkennungseinheit erkannt wurde; und eine Anomaliebetriebsdiagnoseeinheit, die diagnostiziert, ob der anormale Betrieb in der Hardware des bestimmten Prozessors auftritt; wobei wenn der anormale Betrieb von der Anomaliebetriebserkennungseinheit in dem bestimmten Prozessor erkannt wird, die bestimmte Steuerung von dem Ersatzprozessor durchgeführt wird, der von der Anweisungseinheit angewiesen wurde; und wenn nach der Erkennung des anormalen Betriebs des bestimmten Prozessors durch die Anomaliebetriebsdiagnoseeinheit der anormale Betrieb als nicht in der Hardware des bestimmten Prozessors liegend diagnostiziert wird, eine vorherige Steuerung, die dem Ersatzprozessor zugewiesen war, bevor die bestimmte Steuerung dem Ersatzprozessor zugewiesen wurde, und die sich von der bestimmten Steuerung unterscheidet dem bestimmten Prozessor zugewiesen und von dem bestimmten Prozessor durchgeführt wird.
  • Gemäß einem weiteren Aspekt der Erfindung bestimmt in dem Multiprozessorsystem die Anweisungseinheit den Ersatzprozessor, der die bestimmte Steuerung durchführt, entsprechend einer bestimmten Prioritätsreihenfolge.
  • Gemäß einem weiteren Aspekt der Erfindung wird in dem Multiprozessorsystem die bestimmte Prioritätsreihenfolge durch entsprechende Arbeitsbelastungen bestimmt, welche von den Prozessoren anders als dem bestimmten Prozessor zu bearbeiten sind.
  • Gemäß einem weiteren Aspekt der Erfindung wird in dem Multiprozessorsystem eine Änderung einer Konfiguration der vorherigen Steuerung, welche dem Ersatzprozessor zugewiesen war, bevor die bestimmte Steuerung dem Ersatzprozessor zugewiesen wird, den Nicht-Ersatzprozessoren von der Anweisungseinheit zugewiesen, deren Steuerung nicht auf die bestimmte Steuerung geändert wurde.
  • Gemäß einem weiteren Aspekt der Erfindung weist bei dem Multiprozessorsystem die Anweisungseinheit die Änderung eines Betriebssystems (OS) und eines auf dem OS laufenden Anwendungsprogramms (APL) an.
  • Gemäß einem weiteren Aspekt der Erfindung weist bei dem Multiprozessorsystem die Anweisungseinheit die Änderung eines OS für Fahrzeugsteuerung, welche dem bestimmten Prozessor zugewiesen ist, auf einen der Prozessoren an, welchem ein OS für Informationssteuerung zugewiesen ist.
  • Gemäß einem anderen Aspekt der Erfindung sind in dem Multiprozessorsystem die Mehrzahl von Prozessoren Prozessorkerne in einem Mehrfachkernprozessor („Multicore Processor“).
  • Ferner wird diese Aufgabe auch gelöst durch ein Steuerverfahren für ein Multiprozessorsystem mit einer Mehrzahl von Prozessoren, wobei den Prozessoren durchzuführende Steuerungen zugewiesen sind, aufweisend: einen Anomaliebetriebserkennungsschritt, der einen anormalen Betrieb erkennt, der in einem bestimmten Prozessor aus der Mehrzahl von Prozessoren aufgetreten ist; einen Änderungsschritt, der eine bestimmte Steuerung ändert, die dem bestimmten Prozessor zugewiesen ist, um in einem Ersatzprozessor durchgeführt zu werden, der einer der Prozessoren anders als der bestimmte Prozessor ist, wenn der anormale Betrieb in dem bestimmten Prozessor durch den Anomaliebetriebserkennungsschritt erkannt wird, und veranlasst, dass der Ersatzprozessor die bestimmte Steuerung durchführt; einen Anomaliebetriebsdiagnoseschritt, der diagnostiziert, ob der anormale Betrieb in der Hardware des bestimmten Prozessors auftritt; und einen Zuweisungsschritt, der eine vorherige Steuerung, die dem Ersatzprozessor zugewiesen war, bevor die bestimmte Steuerung dem Ersatzprozessor zugewiesen wurde, und die sich von der bestimmten Steuerung unterscheidet, dem bestimmten Prozessor zugewiesen und von dem bestimmten Prozessor ausgeführt wird, wenn der anormale Betrieb, nachdem der Anomaliebetriebserkennungsschritt den anormalen Betrieb des bestimmten Prozessors erkannt hat, durch den Anomaliebetriebsdiagnoseschritt als nicht in der Hardware des bestimmten Prozessors liegend diagnostiziert wird.
  • Gemäß einem weiteren Aspekt der Erfindung wird bei dem Steuerverfahren des Multiprozessorsystems der Ersatzprozessor, der die bestimmte Steuerung durchführt, in dem Änderungsschritt entsprechend einer bestimmten Prioritätsreihenfolge bestimmt.
  • Gemäß einem weiteren Aspekt der Erfindung wird bei dem Steuerverfahren des Multiprozessorsystems die bestimmte Prioritätsreihenfolge durch entsprechende Arbeitsbelastungen bestimmt, welche von den Prozessoren anders als dem bestimmten Prozessor abzuarbeiten sind.
  • Gemäß einem weiteren Aspekt der Erfindung wird in dem Steuerverfahren des Multiprozessorsystems eine Änderung einer Konfiguration der vorherigen Steuerung, welche dem Ersatzprozessor zugewiesen wurde, bevor die bestimmte Steuerung dem Ersatzprozessor zugewiesen wird, den Nicht-Ersatzprozessoren angewiesen, deren Steuerung von dem Änderungsschritt nicht zu der bestimmten Steuerung geändert wurde.
  • Gemäß einem weiteren Aspekt der Erfindung ändert bei dem Steuerverfahren des Multiprozessorsystems der Änderungsschritt ein Betriebssystem (OS) und ein Anwendungsprogramm, das von dem OS durchzuführen ist.
  • Gemäß einem weiteren Aspekt der Erfindung ändert bei dem Steuerverfahren des Multiprozessorsystems der Änderungsschritt ein OS für Fahrzeugsteuerung, das dem bestimmten Prozessor zugewiesen ist, auf einen der Prozessoren, welchen ein OS für Informationssteuerung zugewiesen ist.
  • Gemäß einem anderen Aspekt der Erfindung sind bei dem Steuerverfahren des Multiprozessorsystems die Mehrzahl von Prozessoren Prozessorkerne in einem Mehrfachkernprozessor („Multicore Processor“).
  • Gemäß einem anderen Aspekt der Erfindung wird bei dem Steuerverfahren des Multiprozessorsystems, wenn der Anomaliebetriebserkennungsschritt den anormalen Betrieb des bestimmten Prozessors erkennt und die bestimmte Steuerung von dem Ersatzprozessor durchgeführt wird, die vorherige Steuerung, welche dem Ersatzprozessor zugewiesen war, von Nicht-Ersatzprozessoren durchgeführt, welchen die bestimmte Steuerung vom Änderungsschritt nicht zugewiesen wurde.
  • Gemäß einem anderen Aspekt der Erfindung wird bei dem Steuerverfahren des Multiprozessorsystems, wenn der anormale Betrieb von dem Anomaliebetriebsdiagnoseschritt als nicht in der Hardware des bestimmten Prozessors befindlich diagnostiziert wird, nachdem der Anomaliebetriebserkennungsschritt den anormalen Betrieb des bestimmten Prozessors erkannt hat, dann die vorherige Steuerung, welche dem Ersatzprozessor zugewiesen war, bevor die bestimmte Steuerung dem Ersatzprozessor zugewiesen wird, dem bestimmten Prozessor von den Nicht-Ersatzprozessoren zugewiesen.
  • Eine Ausführungsform der Erfindung schafft ein Multiprozessorsystem mit einer Mehrzahl von Prozessoren, denen jeweils eine durchzuführende Steuerung zugewiesen ist. Wenn in dem Multiprozessorsystem ein anormaler Betrieb in einem bestimmten Prozessor auftritt, wird die dem bestimmten Prozessor zugewiesene Steuerung kontinuierlich von einem Prozessor durchgeführt, der anders als der bestimmte Prozessor ist.
    • 1 ist ein Blockdiagramm eines Mehrfachkernsystems („Multicore System“) eines Multiprozessorsystems gemäß einer Ausführungsform der Erfindung;
    • 2 ist eine schematische Darstellung eines Betriebsablaufs, wenn ein Überwachungsprozessor einen anormalen Betrieb eines Prozessorkerns in dem Mehrfachkernsystem von 1 erkennt;
    • 3 ist eine Sequenzabfolge, welche Abläufe in dem Mehrfachkernsystem zeigt, wenn ein Prozessorkern, dessen Betrieb als anormal erkannt wurde, als normal in seiner Hardware diagnostiziert wird;
    • 4 ist eine Sequenzabfolge, die Abläufe in dem Mehrfachkernsystem zeigt, wenn ein Prozessorkern, dessen Betrieb als anormal erkannt wurde, als anormal in seiner Hardware diagnostiziert wird; und
    • 5 ist ein Blockdiagramm eines weiteren Mehrfachkernsystems im Multiprozessorsystem gemäß der Ausführungsform der Erfindung.
  • 0, 1, 2 und 3:
    Prozessorkern
    10
    Mehrfachkernprozessor
    30
    Speichereinheit
    40
    Kommunikationsvorrichtung
    50
    Informationsmanagementcenter
    100 und 200
    Mehrfachkernsystem
  • Die beste Weise zur Durchführung der Erfindung wird nachfolgend unter Bezug auf die beiliegende Zeichnung beschrieben.
  • 1 ist ein Blockdiagramm eines Mehrfachkernsystems (Multicore System) 100 eines Multiprozessorsystems gemäß einer Ausführungsform der Erfindung. D.h., das Mehrfachkernsystem 100 ist eines der Multiprozessorsysteme. Das Mehrfachkernsystem 100 enthält einen Mehrfachprozessor 10 mit einer Mehrzahl von Prozessorkernen. Der Mehrfachkernprozessor 10 enthält beispielsweise vier Prozessorkerne 0, 1, 2 und 3, wie in 1 gezeigt. Jeder der Prozessorkerne 0, 1, 2 und 3 verarbeitet Programme wie ein OS (Operating System, Betriebssystem) und ein Anwendungsprogramm, das auf dem OS unabhängig oder in Zusammenarbeit mit anderen arbeitet. Wenn ein Interrupt erzeugt wird, der die Durchführung eines Programms anweist, lädt jeder der Prozessorkerne 0, 1, 2 und 3 das Programm beispielsweise in einen RAM (Arbeitsbereich; nicht gezeigt) von einer Speichereinheit (nicht gezeigt), beispielsweise einem ROM oder einer Festplatte und führt das Programm durch. In 1 können die Prozessorkerne 0, 1, 2 und 3 selbst Prozessoren sein.
  • Eine durchzuführende Steuerung wird jedem der Prozessorkerne 0, 1, 2 und 3 zugewiesen. Zusätzlich hat in dem Mehrfachkernsystem 100 die von jedem der Prozessorkerne 0, 1, 2 und 3 durchzuführende Steuerung eine Prioritätsreihenfolge. Die Steuerung mit dem höchsten Prioritätsgrad (Steuerung höchster Priorität) wird wenigstens einem der Prozessorkerne 0, 1, 2 und 3 zugewiesen und die Steuerung, deren Prioritätsgrad geringer als die Steuerung höchster Priorität ist, wird den anderen Prozessorkernen zugewiesen.
  • Wenn beispielsweise das Mehrfachkernsystem 100 bei einem Fahrzeugsystem angewendet wird, wird die Fahrzeugsteuerung mit der höchsten Priorität dem Prozessorkern 0 zugewiesen und eine Informationssteuerung mit einer Priorität niedriger als die höchste Priorität wird jedem der Prozessorkerne 1, 2 und 3 zugewiesen. Die Informationssteuerung, welche den Prozessorkernen 1, 2 und 3 zugewiesen wird, kann unterschiedliche Prioritätswerte haben.
  • Die Fahrzeugsteuerung umfasst eine Hauptsteuerung, welche Grundbetriebsfunktionen eines Fahrzeugs steuert, beispielsweise eine Fahrfunktion, eine Kurvenfahrtfunktion und eine Stoppfunktion des Fahrzeugs und eine Unterstützungssteuerung betreffend die Hauptsteuerung. Insbesondere seien als Beispiele für die Fahrzeugsteuerung genannt: Motorsteuerung zur Steuerung des Motors des Fahrzeugs, Lenkradsteuerung zur Steuerung des Lenkens des Fahrzeugs, Bremsensteuerung zur Steuerung der Bremsung des Fahrzeugs und Unterstützungssteuerung zur Unterstützung der obigen Steuerungsmaßnahmen.
  • Demgegenüber ist die Informationssteuerung eine zusätzliche Steuerung, welche zusätzliche Funktionen des Fahrzeugs steuert, die anders als die Grundbetriebsfunktionen des Fahrzeugs sind. Als Beispiele für die Informationssteuerung gelten insbesondere eine Navigationssteuerung zur Steuerung einer Navigationsvorrichtung, eine audiovisuelle Steuerung zur Steuerung einer Audiovorrichtung oder einer visuellen Vorrichtung und eine Kommunikationssteuerung zur Steuerung von Kommunikationen mit externen Vorrichtungen.
  • Jeder der Prozessorkerne 0, 1, 2 und 3 führt Programme, wie das OS und ein Anwendungsprogramm durch, das auf dem OS zur Realisierung von Fahrzeugsteuerung und Informationssteuerung läuft, wobei die Durchführung unabhängig ist oder unter gegenseitiger Zusammenarbeit läuft. Als bestimmte Beispiele für das von den Prozessorkernen 0, 1, 2 und 3 zu bearbeitende OS seien Echtzeit-OS (RT-OS) als OS für die Fahrzeugsteuerung und Multimedia-OS (MM-OS) als OS für die Informationssteuerung genannt.
  • Das RT-OS ist hervorragend bei einer Batch-Verarbeitung und einem TSS (Time Sharing System), da Prozesse in Echtzeit durchzuführen sind. In dem Anwendungsprogramm für die Fahrzeugsteuerung muss ein bestimmter Prozess in Echtzeit durchgeführt werden, damit ein hohes Ansprechvermögen und hohe Sicherheit sichergestellt sind. Daher ist es bevorzugt, wenn ein RT-OS für die Fahrzeugsteuerung verwendet wird, da das RT-OS ein Programm in Echtzeit abarbeiten kann. Als Beispiele für ein RT-OS seien OSEC, ITRON, etc. genannt.
  • Im Vergleich zu RT-OS ist ein MM-OS bei einer Multimediaverarbeitung überlegen. Eine Multimediaverarbeitung umfasst beispielsweise eine Kompressions- und Expansionsverarbeitung für Codes wie MPEG, Benutzerschnittstellenverarbeitung mittels GUI (Graphical User Interface) und Internetverbindungsverarbeitung einschließlich Sicherheitsmanagement. Somit ist es bevorzugt, wenn ein MM-OS für die Informationssteuerung verwendet wird, da das MM-OS die notwendige Multimediaverarbeitung realisieren kann. Als Beispiele für MM-OS seien Linux (Marke), QNX (Marke), etc. genannt.
  • Bezug nehmend auf 1 enthält das Mehrfachkernsystem 100 weiterhin einen Überwachungsprozessor 20, der unabhängig vom Mehrfachkernprozessor 10 ist. Der Überwachungsprozessor 20 wird als Anomaliebetriebserkennungseinheit verwendet, die einen anormalen oder fehlerhaften Betrieb eines Prozessorkerns erkennt, welchem die Fahrzeugsteuerung (Steuerung mit höchster Priorität) zugewiesen ist. Der Überwachungsprozessor 20 kann ein Einzelkernprozessor oder Mehrfachkernprozessor sein. Wenn beispielsweise die Fahrzeugsteuerung dem Prozessorkern 0 zugewiesen ist, erkennt der Überwachungsprozessor 20 einen anormalen Betrieb, der in Hardware oder Software des Prozessorkerns 0 aufgetreten ist. Zusätzlich kann der Überwachungsprozessor 20 einen anormalen Betrieb erkennen, der in Hardware oder Software der Prozessorkerne 1, 2 und 3 aufgetreten ist.
  • Ein Prozessorkern in dem Überwachungsprozessor 20 erkennt einen anormalen Betrieb des Prozessorkerns 0 beispielsweise durch Kommunikation mit dem Prozessorkern 0. Der Überwachungsprozessor 20 kann überwachen, ob der Prozessorkern 0 selbst oder ein vom Prozessorkern 0 durchgeführtes Programm normal arbeiten, wenn der Überwachungsprozessor 20 periodisch mit dem Prozessorkern 0 kommuniziert. Alternativ kann der Überwachungsprozessor 20 den anormalen Betrieb des Prozessorkerns 0 erkennen, indem er ein Signal empfängt, welches den anormalen Betrieb des Prozessorkerns 0 anzeigt, oder er kann den anormalen Betrieb des Prozessorkerns 0 erkennen, indem er einen Überwachungsimpuls („Watch Dog Pulse“) von Prozessorkern 0 erkennt.
  • Der Überwachungsprozessor 20 kann in einer elektronischen Steuervorrichtung enthalten sein, welche den Mehrfachkernprozessor 10 bildet, oder kann in einer anderen elektronischen Steuervorrichtung enthalten sein, welche den Mehrfachkernprozessor 10 nicht bildet.
  • 2 ist eine schematische Darstellung eines Betriebsablaufs, wenn der Überwachungsprozessor 20 einen anormalen Betrieb des Prozessorkerns 0 im Mehrfachkernsystem 100 erkennt. In 2 ist eine Steuerung, welche jedem der Prozessorkerne 0, 1, 2 und 3 zugewiesen ist, ebenfalls gezeigt.
  • 2(a) zeigt einen Zustand, bevor ein anormaler Betrieb im Prozessorkern 0 auftritt. In 2(a) führt der Prozessorkern 0 ein APL (Anwendungsprogramm) Oa für eine Fahrzeugsteuerung durch Betreiben eines OS für Fahrzeugsteuerung durch. Die Prozessorkerne 1, 2 und 3 führen entsprechende APLs 1a, 2a und 3a für eine Informationssteuerung durch Betreiben von OSs für entsprechende Informationssteuerungen durch.
  • Wenn ein anormaler Betrieb im Prozessorkern 0 auftritt, welchem die Fahrzeugsteuerung (Steuerung höchster Priorität) zugewiesen ist, wie in 2(b) gezeigt, gibt der Überwachungsprozessor 20, der den anormalen Betrieb erkannt hat, die Anweisung, eine Konfiguration des OS für Informationssteuerung zu ändern, indem eine Eintragung und eine zugehörige Datei neu geschrieben werden, so dass das OS für eine Informationssteuerung, das auf den drei Prozessorkernen 1, 2 und 3 läuft, auf den zwei Prozessorkernen 2 und 3 läuft. D.h., der Überwachungsprozessor 20 arbeitet als eine Anweisungseinheit. Zusätzlich weist der Überwachungsprozessor 20 die Änderung des OS des Prozessorkerns 1 von dem OS für Informationssteuerung zum OS für Fahrzeugsteuerung an, so dass der Prozess für das APL 0a für Fahrzeugsteuerung, durchgeführt vom Prozessorkern 0, in welchem der anormale Betrieb erkannt wurde, vom Prozessorkern 1 fortgeführt wird.
  • D.h., der Überwachungsprozessor 20 lädt das OS für Fahrzeugsteuerung auf den Prozessorkern 1 und veranlasst den Prozessorkern 1, das OS für Fahrzeugsteuerung zu booten und veranlasst den Prozessorkern 1, das APL 0a für Fahrzeugsteuerung auf dem OS für Fahrzeugsteuerung durchzuführen. Das APL 1a für Informationssteuerung, welches vom Prozessorkern 1 durchgeführt wurde, wird auf dem OS für Informationssteuerung durch die Prozessorkerne 2 und 3 mit der Durchführung der APLs 2a und 3a für Informationssteuerung durch die Prozessorkerne 2 und 3 durchgeführt. In diesem Fall arbeitet der Prozessorkern 1 als Ersatzprozessorkern für den Prozessorkern 0 zur Durchführung der Fahrzeugsteuerung.
  • Der Überwachungsprozessor 20 diagnostiziert den anormalen Betrieb des Prozessorkerns 0 und wenn der anormale Betrieb nicht in der Hardware des Prozessorkerns 0 liegt, wie in 2(c) gezeigt, weist der Überwachungsprozessor 20 an, die Konfiguration des OS für Informationssteuerung zu ändern, so dass das OS für Informationssteuerung, das auf den beiden Prozessorkernen 2 und 3 läuft, von den drei Prozessorkernen 0, 2 und 3 gefahren wird. D.h., der Überwachungsprozessor 20 lädt das OS für Informationssteuerung auf den Prozessorkern 0 und veranlasst den Prozessorkern 0 das OS für Informationssteuerung zu booten, so dass der Prozess durch das ALP 1a für Informationssteuerung, durchgeführt von den Prozessorkernen 2 und 3, vom Prozessorkern 0 fortgeführt wird. D.h., der Überwachungsprozessor 20 arbeitet als eine Anomal iebetriebsdiagnoseeinheit.
  • Nachfolgend wird Bezug nehmend auf die 3 und 4 im Detail der Ablauf in dem Mehrfachkernsystem 100 beschrieben, wenn der Überwachungsprozessor 20 einen anormalen Betrieb des Prozessorkerns 0 erkennt.
  • 3 ist eine Sequenzdarstellung, welche Abläufe in dem Mehrfachkernsystem 100 zeigt, wenn ein Prozessorkern, dessen Betrieb als anormal erkannt wurde, normal in seiner Hardware diagnostiziert wird. In 3 sei beispielsweise bestimmt, dass der Prozessorkern 0 für Fahrzeugsteuerung verwendet wird und die Prozessorkerne 1, 2 und 3 für eine Informationssteuerung verwendet werden, was der Ausgangszustand sei.
  • Der Überwachungsprozessor 20 überwacht einen Betrieb eines jeden der Prozessorkerne 0, 1, 2 und 3 durch Kommunikation mit den Prozessorkernen 0, 1, 2 und 3. Wenn ein anormaler Betrieb in dem Prozessorkern 0 auftritt, erkennt der Überwachungsprozessor 20 den anormalen Betrieb (S10) und der Überwachungsprozessor 20 bestimmt, ob der Prozessorkern 0 eine Steuerung höchster Priorität (Fahrzeugsteuerung) bearbeitet (S12). Da der Prozessorkern 0 die Steuerung höchster Priorität bearbeitet (JA in S12), weist der Überwachungsprozessor 20 die drei Prozessorkerne 1, 2 und 3 mit vorbestimmter Prioritätsreihenfolge an, eine Konfiguration zu ändern, in der einer der drei Kerne, der als Prozessorkern für Informationssteuerung betrieben wird, als Prozessorkern für Fahrzeugsteuerung arbeitet und die verbleibenden beiden Prozessorkerne als Prozessorkerne für Informationssteuerung arbeiten. In diesem Fall ist einer der Prozessorkerne der Prozessorkern 1 und die verbleibenden beiden Prozessorkerne sind die Prozessorkerne 2 und 3.
  • Die Prioritätsreihenfolge kann vorab bestimmt werden, um den Prozessorkernen zugewiesen zu werden oder kann entsprechend den Arbeitsbelastungen der Prozessorkerne bestimmt werden. Wenn beispielsweise die Prioritätsreihenfolge entsprechend den Verarbeitungsbelastungen bestimmt wird, wird ein Prozessorkern mit geringster Belastung als Prozessorkern für Fahrzeugsteuerung bestimmt und die verbleibenden Prozessorkerne werden als Prozessorkerne für Informationssteuerung bestimmt.
  • Zusätzlich weist der Überwachungsprozessor 20 den Prozessorkern 1 an, das OS für Fahrzeugsteuerung zu booten.
  • Der Prozessorkern 1, der die Anweisung empfangen hat, lädt das OS für Fahrzeugsteuerung in einem RAM (nicht gezeigt) von einer Speichereinheit, beispielsweise einem ROM (nicht gezeigt), schließt Voreinstellungen, beispielsweise Initialisierung einer Speichereinheit (nicht gezeigt), ab und überträgt eine Bootabschlussmitteilung an den Überwachungsprozessor 20. Hiermit kann das ALP für Fahrzeugsteuerung, das auf dem OS für Fahrzeugsteuerung des Prozessorkerns 0 durchgeführt wurde, weiterhin auf dem OS für Fahrzeugsteuerung des Prozessorkerns 1 durchgeführt werden.
  • Danach erhält der Überwachungsprozessor 20, der den anormalen Betrieb des Prozessorkerns 0 erkannt hat, eine Fehlerinformation, welche die Analyse eines Grunds des anormalen Betriebs des Prozessorkerns 0 auslöst, beispielsweise die Information in einem Register (S14). Der Überwachungsprozessor 20 gibt die Anweisung, den Prozessorkern 0 neu zu booten und wenn das Neubooten abgeschlossen worden ist, überträgt der Prozessorkern 0 eine Neubootabschlussmitteilung an den Überwachungsprozessor 20. Der Überwachungsprozessor 20, der die Fehlerinformation empfangen hat, lädt ein Testprogramm, das in der Lage ist, einen Fehler von Hardware des Prozessorkerns 0 zu diagnostizieren und diagnostiziert den Fehler des Prozessorkerns 0 durch Starten des Testprogramms (S16). Solange das Testprogramm geeignet ist, den Fehler von Hardware des Prozessorkerns 0 zu diagnostizieren, ist dieses Testprogramm nicht auf ein bestimmtes Programm beschränkt.
  • Der Überwachungsprozessor 20 bestimmt, ob ein Fehler in der Hardware des Prozessorkerns 0 vorliegt, und zwar auf der Grundlage eines Diagnoseergebnisses (S18). Wenn kein Fehler in der Hardware des Prozessorkerns 0 vorliegt (JA in S18), nimmt der Überwachungsprozessor 20 an, dass der anormale Betrieb vorübergehend aus irgendwelchen Gründen, beispielsweise Störrauschen und einem Restvorgang aufgetreten ist, legt fest, dass der Prozessorkern 0 einen Prozess durchführen kann, und weist den Prozessorkern 0 an, auf dem OS für Informationssteuerung neu zu booten. Der Prozessorkern 0, der die Anweisung empfangen hat, lädt das OS für Informationssteuerung in einem RAM (nicht gezeigt) von einer Speichereinheit, beispielsweise einem ROM (nicht gezeigt), schließt Voreinstellungen, beispielsweise eine Initialisierung einer Speichereinheit (nicht gezeigt), ab und überträgt eine Neubootabschlussmitteilung an den Überwachungsprozessor 20. Hiermit kann das ALP für Informationssteuerung, das auf dem OS für Informationssteuerung des Prozessorkerns 1 durchgeführt wurde, weiter auf dem OS für Informationssteuerung des Prozessorkerns 0 durchgeführt werden.
  • Der Überwachungsprozessor 20, der die Neubootabschlussmitteilung vom Prozessorkern 0 empfangen hat, weist die Prozessorkerne 2 und 3 an, die Konfiguration zu ändern, so dass das OS für Informationssteuerung von den Prozessorkernen 0, 2 und 3 durchgeführt wird. Zusätzlich speichert der Überwachungsprozessor 20 die Fehlerinformation aus S14 in einer Speichereinheit 30. Ein Betriebsablauf nach Speicherung der Fehlerinformation in der Speichereinheit 30 wird nachfolgend beschrieben.
  • 4 ist eine Sequenzabfolge, welche Abläufe in dem Mehrfachkernsystem 100 zeigt, wenn ein Prozessorkern, dessen Betriebsweise als anormal erkannt wurde, als in seiner Hardware anormal diagnostiziert wird. In 4 wird ähnlich wie in 3 bestimmt, dass der Prozessorkern 0 für Fahrzeugsteuerung verwendet wird und die Prozessorkerne 1, 2 und 3 für eine Informationssteuerung (Anfangsstufe). Da in 4 die Abläufe von S10 bis S16 gleich wie die Abläufe in 3 sind, erfolgt eine nochmalige Beschreibung nicht.
  • Wenn der Überwachungsprozessor 20 bestimmt, dass ein Fehler in der Hardware des Prozessorkerns 0 vorhanden ist, basierend auf dem Diagnoseergebnis (NEIN in S18), bestimmt der Überwachungsprozessor 20, dass der anormale Betrieb des Prozessorkerns 0 schwierig zu beseitigen ist und speichert die Fehlerinformation aus S14 in der Speichereinheit 30. Selbst wenn daher der Prozessorkern 0, dessen anormaler Betrieb erkannt wurde, nicht wieder hergestellt werden kann, kann das ALP für Fahrzeugsteuerung, das auf dem Prozessorkern 0 gelaufen ist, auf dem OS für Fahrzeugsteuerung durch den Prozessorkern 1 weitergeführt werden.
  • Wie oben beschrieben kann bei der Ausführungsform der Erfindung, selbst wenn ein anormaler Betrieb in einem Prozessorkern erkannt wird, der eine Fahrzeugsteuerung bearbeitet, die Fahrzeugsteuerung geändert werden, um durch einen Prozessorkern für Informationssteuerung bearbeitet zu werden. Hiermit kann die Fahrzeugsteuerung, die höhere Priorität als die Informationssteuerung hat, durchgängig fortgeführt werden und das Mehrfachkernsystem 100 kann mit Sicherheit seinen Betrieb aufrecht erhalten.
  • Nachfolgend wird die Arbeitsweise beschrieben, bei der die Fehlerinformation in der Speichereinheit 30 gespeichert wird.
  • 5 ist ein Blockdiagramm, welches ein Mehrfachkernsystem 200 des Multiprozessorsystems gemäß der Ausführungsform der Erfindung zeigt. Das Mehrfachkernsystem 200 ist ein modifiziertes Beispiel des Mehrfachkernsystems 100 in 1. Wenn in 5 ein Element eine ähnliche Funktion wie ein Element in den 1 und 3 hat, wird für dieses Element das gleiche Bezugszeichen wie in den 1 und 3 verwendet.
  • Wenn in 5 der Überwachungsprozessor 20 einen anormalen Betrieb eines Prozessorkerns erkennt, speichert der Überwachungsprozessor 20 eine Fehlerinformation des Prozessorkerns in der Speichereinheit 30 als Anomaliehistorie. Wenn das Mehrfachkernsystem 200 auf die Fehlerinformation Bezug nimmt, die in der Speichereinheit 30 gespeichert ist, kann der Grund für den anormalen Betrieb des Prozessorkerns wahrscheinlich analysiert werden. Wenn zusätzlich eine Kommunikationsvorrichtung 40 gebildet wird, in der die Fehlerinformation drahtlos oder über ein verdrahtetes Netzwerk gesendet und empfangen werden kann und wenn ein Analyseabschnitt (beispielsweise ein Informationsmanagementcenter 50) gebildet wird, in welchem die Fehlerinformation analysiert wird, kann, selbst wenn der Überwachungsprozessor 20 an einer Stelle getrennt von dem Informationsmanagementcenter 50 ist, der Überwachungsprozessor 20 problemlos Analyseinformationen von dem Informationsmanagementcenter 50 über die Kommunikationsvorrichtung 40 erhalten.
  • Bezug nehmend auf die 3, 4 und 5 speichert der Überwachungsprozessor 20 die Fehlerinformation aus S14 in der Speichereinheit 30 und überträgt auch eine Fehlernachricht zum Bericht über das Auftreten des anormalen Betriebs in dem Prozessorkern 0 an das Informationsmanagementcenter 50 über die Kommunikationsvorrichtung 40 (S20). Das Informationsmanagementcenter 50 empfängt die Fehlernachrichtung und fordert den Überwachungsprozessor 20 auf, die Fehlerinformation an das Informationsmanagementcenter 50 zu übertragen. Der Überwachungsprozessor 20 empfängt die Aufforderung, erhält die Fehlerinformation, die in der Speichereinheit 30 gespeichert ist (S22) und überträgt die Fehlerinformation über die Kommunikationsvorrichtung 40 an das Informationsmanagementcenter 50 (S24).
  • In der Ausführungsform der Erfindung enthält der Mehrfachkernprozessor 10 die vier Prozessorkerne 0 bis 3. Jedoch ist die Anzahl von Prozessorkernen in dem Mehrfachkernprozessor 10 nicht auf vier begrenzt. Weiterhin sind bei der Ausführungsform der Erfindung die Prozessorkerne 0 bis 3 eingebaute Prozessorkerne in dem Mehrfachkernprozessor 10. Jedoch können die Prozessorkerne 0 bis 3 Einzelkernprozessoren sein, die in der Lage sind, miteinander zu kommunizieren.
  • Zusätzlich ist in der Ausführungsform der Erfindung ein Prozessorkern für die Fahrzeugsteuerung verwendet; es können jedoch zwei oder mehr Prozessorkerne für die Fahrzeugsteuerung verwendet werden, welche das APL für Fahrzeugsteuerung auf dem OS für Fahrzeugsteuerung laufen lassen. Wenn in diesem Fall ein anormaler Betrieb in einem der zwei oder mehr Prozessorkerne für Fahrzeugsteuerung erkannt wird, kann das APL für Fahrzeugsteuerung, das auf dem einen der Prozessorkerne für Fahrzeugsteuerung läuft, von den anderen Prozessorkernen für Fahrzeugsteuerung anders als demjenigen Prozessorkern für Fahrzeugsteuerung durchgeführt werden, in welchem der anormale Betrieb erkannt wurde oder er kann von einem Prozessorkern für Informationssteuerung durchgeführt werden, indem der Prozessorkern für Informationssteuerung in einem Prozessorkern für Fahrzeugsteuerung umgewandelt wird.
  • Weiterhin ist die Erfindung nicht auf die konkret beschriebene Ausführungsform beschränkt und Abwandlungen und Modifikationen können gemacht werden, ohne vom Umfang der Erfindung abzuweichen.
  • Die Erfindung basiert auf der japanischen Prioritätsanmeldung Nr. 2007-154050, angemeldet am 11. Juni 2007; auf den dortigen Inhalt wird hier vollinhaltlich Bezug genommen.

Claims (18)

  1. Multiprozessorsystem mit einer Mehrzahl von Prozessoren, wobei den Prozessoren eine Steuerung zugewiesen ist, aufweisend: eine Anomaliebetriebserkennungseinheit (20), welche einen anormalen Betrieb erkennt, der in einem bestimmten Prozessor aus der Mehrzahl von Prozessoren (0, 1, 2 3) aufgetreten ist; eine Anweisungseinheit (20), welche anweist, eine bestimmte Steuerung, die dem bestimmten Prozessor zugewiesen ist, zu ändern, um in einem Ersatzprozessor durchgeführt zu werden, der einer der Prozessoren anders als der bestimmte Prozessor ist, basierend auf einem Ergebnis, das von der Anomaliebetriebserkennungseinheit erkannt wurde; und eine Anomaliebetriebsdiagnoseeinheit (20), die diagnostiziert, ob der anormale Betrieb in der Hardware des bestimmten Prozessors auftritt; wobei wenn der anormale Betrieb von der Anomaliebetriebserkennungseinheit in dem bestimmten Prozessor erkannt wird, die bestimmte Steuerung von dem Ersatzprozessor durchgeführt wird, der von der Anweisungseinheit angewiesen wurde; und wenn nach der Erkennung des anormalen Betriebs des bestimmten Prozessors durch die Anomaliebetriebsdiagnoseeinheit der anormale Betrieb als nicht in der Hardware des bestimmten Prozessors liegend diagnostiziert wird, eine vorherige Steuerung, die dem Ersatzprozessor zugewiesen war, bevor die bestimmte Steuerung dem Ersatzprozessor zugewiesen wurde, und die sich von der bestimmten Steuerung unterscheidet dem bestimmten Prozessor zugewiesen und von dem bestimmten Prozessor durchgeführt wird.
  2. Multiprozessorsystem nach Anspruch 1, wobei die Anweisungseinheit den Ersatzprozessor, der die bestimmte Steuerung durchführt, entsprechend einer bestimmten Prioritätsreihenfolge bestimmt.
  3. Multiprozessorsystem nach Anspruch 2, wobei die bestimmte Prioritätsreihenfolge von entsprechenden Arbeitsbelastungen bestimmt wird, welche von den Prozessoren anders als dem bestimmten Prozessor zu bearbeiten sind.
  4. Multiprozessorsystem nach Anspruch 1, wobei eine Änderung einer Konfiguration der vorherigen Steuerung, welche dem Ersatzprozessor zugewiesen war, bevor die bestimmte Steuerung dem Ersatzprozessor zugewiesen wird, den Nicht-Ersatzprozessoren von der Anweisungseinheit zugewiesen wird, deren Steuerung nicht auf die bestimmte Steuerung geändert wurde.
  5. Multiprozessorsystem nach Anspruch 1, wobei die Anweisungseinheit die Änderung eines Betriebssystems (OS) und eines auf dem OS laufenden Anwendungsprogramms (APL) anweist.
  6. Multiprozessorsystem nach Anspruch 5, wobei die Anweisungseinheit die Änderung eines OS für Fahrzeugsteuerung, welche dem bestimmten Prozessor zugewiesen ist, auf einen der Prozessoren anweist, welchem ein OS für Informationssteuerung zugewiesen ist.
  7. Multiprozessorsystem nach Anspruch 1, wobei die Mehrzahl von Prozessoren Prozessorkerne in einem Mehrfachkernprozessor (10) sind.
  8. Multiprozessorsystem nach Anspruch 1, wobei, wenn die Anomaliebetriebserkennungseinheit den anormalen Betrieb des bestimmten Prozessors erkennt und die bestimmte Steuerung von dem Ersatzprozessor durchgeführt wird, die vorherige Steuerung, welche dem Ersatzprozessor zugewiesen ist, von Nicht-Ersatzprozessoren durchgeführt wird, welchen die bestimmte Steuerung von der Anweisungseinheit nicht zugewiesen wurde.
  9. Multiprozessorsystem nach Anspruch 15, wobei, wenn der anormale Betrieb als nicht in der Hardware des bestimmten Prozessors befindlich durch die Anomaliebetriebsdiagnoseeinheit diagnostiziert wird, nachdem die Anomaliebetriebserkennungseinheit den anormalen Betrieb des bestimmten Prozessors erkannt hat, dann die vorherige Steuerung, welche dem Ersatzprozessor zugewiesen war, bevor die bestimmte Steuerung dem Ersatzprozessor zugewiesen wurde, von den Nicht-Ersatzprozessoren dem bestimmten Prozessor zugewiesen wird.
  10. Steuerverfahren für ein Multiprozessorsystem mit einer Mehrzahl von Prozessoren, wobei den Prozessoren durchzuführende Steuerungen zugewiesen sind, aufweisend: einen Anomaliebetriebserkennungsschritt (S10), der einen anormalen Betrieb erkennt, der in einem bestimmten Prozessor aus der Mehrzahl von Prozessoren (0, 1, 2, 3) aufgetreten ist; einen Änderungsschritt (S12), der eine bestimmte Steuerung ändert, die dem bestimmten Prozessor zugewiesen ist, um in einem Ersatzprozessor durchgeführt zu werden, der einer der Prozessoren anders als der bestimmte Prozessor ist, wenn der anormale Betrieb in dem bestimmten Prozessor durch den Anomaliebetriebserkennungsschritt erkannt wird, und veranlasst, dass der Ersatzprozessor die bestimmte Steuerung durchführt; einen Anomaliebetriebsdiagnoseschritt (S18), der diagnostiziert, ob der anormale Betrieb in der Hardware des bestimmten Prozessors auftritt; und einen Zuweisungsschritt (S14), der eine vorherige Steuerung, die dem Ersatzprozessor zugewiesen war, bevor die bestimmte Steuerung dem Ersatzprozessor zugewiesen wurde, und die sich von der bestimmten Steuerung unterscheidet, dem bestimmten Prozessor zugewiesen und von dem bestimmten Prozessor ausgeführt wird, wenn der anormale Betrieb, nachdem der Anomaliebetriebserkennungsschritt den anormalen Betrieb des bestimmten Prozessors erkannt hat, durch den Anomaliebetriebsdiagnoseschritt als nicht in der Hardware des bestimmten Prozessors liegend diagnostiziert wird.
  11. Steuerverfahren des Multiprozessorsystems nach Anspruch 10, wobei der Ersatzprozessor, der die bestimmte Steuerung durchführt, entsprechend einer bestimmten Prioritätsreihenfolge in dem Änderungsschritt bestimmt wird.
  12. Steuerverfahren des Multiprozessorsystems nach Anspruch 11, wobei die bestimmte Prioritätsreihenfolge durch entsprechende Arbeitsbelastungen bestimmt wird, welche von den Prozessoren anders als dem bestimmten Prozessor abzuarbeiten sind.
  13. Steuerverfahren des Multiprozessorsystems nach Anspruch 10, wobei eine Änderung einer Konfiguration der vorherigen Steuerung, welche dem Ersatzprozessor zugewiesen wurde, bevor die bestimmte Steuerung dem Ersatzprozessor zugewiesen wird, den Nicht-Ersatzprozessoren angewiesen wird, deren Steuerung von dem Änderungsschritt nicht zu der bestimmten Steuerung geändert wurde.
  14. Steuerverfahren des Multiprozessorsystems nach Anspruch 10, wobei der Änderungsschritt ein Betriebssystem (OS) und ein Anwendungsprogramm, das von dem OS durchzuführen ist, ändert.
  15. Steuerverfahren des Multiprozessorsystems nach Anspruch 14, wobei der Änderungsschritt ein OS für Fahrzeugsteuerung, das dem bestimmten Prozessor zugewiesen ist, auf einen der Prozessoren ändert, welchen ein OS für Informationssteuerung zugewiesen ist.
  16. Steuerverfahren des Multiprozessorsystems nach Anspruch 10, wobei die Mehrzahl von Prozessoren Prozessorkerne in einem Mehrfachkernprozessor (10) sind.
  17. Steuerverfahren des Multiprozessorsystems nach Anspruch 10, wobei, wenn der Anomaliebetriebserkennungsschritt den anormalen Betrieb des bestimmten Prozessors erkennt und die bestimmte Steuerung von dem Ersatzprozessor durchgeführt wird, die vorherige Steuerung, welche dem Ersatzprozessor zugewiesen war, von Nicht-Ersatzprozessoren durchgeführt wird, welchen die bestimmte Steuerung vom Änderungsschritt nicht zugewiesen wurde.
  18. Steuerverfahren des Multiprozessorsystems nach Anspruch 17, wobei, wenn der anormale Betrieb von dem Anomaliebetriebsdiagnoseschritt als nicht in der Hardware des bestimmten Prozessors befindlich diagnostiziert wird, nachdem der Anomaliebetriebserkennungsschritt den anormalen Betrieb des bestimmten Prozessors erkannt hat, dann die vorherige Steuerung, welche dem Ersatzprozessor zugewiesen war, bevor die bestimmte Steuerung dem Ersatzprozessor zugewiesen wird, dem bestimmten Prozessor von den Nicht-Ersatzprozessoren zugewiesen wird.
DE112008001528.7T 2007-06-11 2008-06-11 Multiprozessorsystem und Steuerverfahren hierfür Expired - Fee Related DE112008001528B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2007154050A JP4458119B2 (ja) 2007-06-11 2007-06-11 マルチプロセッサシステム及びその制御方法
JP2007-154050 2007-06-11
PCT/JP2008/060683 WO2008153057A1 (ja) 2007-06-11 2008-06-11 マルチプロセッサシステム及びその制御方法

Publications (2)

Publication Number Publication Date
DE112008001528T5 DE112008001528T5 (de) 2010-04-29
DE112008001528B4 true DE112008001528B4 (de) 2020-11-19

Family

ID=40129662

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112008001528.7T Expired - Fee Related DE112008001528B4 (de) 2007-06-11 2008-06-11 Multiprozessorsystem und Steuerverfahren hierfür

Country Status (5)

Country Link
US (1) US8090982B2 (de)
JP (1) JP4458119B2 (de)
CN (1) CN101681286A (de)
DE (1) DE112008001528B4 (de)
WO (1) WO2008153057A1 (de)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4433006B2 (ja) * 2007-07-04 2010-03-17 株式会社デンソー マルチコアの異常監視装置
JP5641384B2 (ja) 2008-11-28 2014-12-17 独立行政法人物質・材料研究機構 表示装置用照明装置及び表示装置
US8381026B2 (en) * 2009-06-22 2013-02-19 Citrix Systems, Inc. Systems and method for transaction stall detection and propagating the result in a multi-core architecture
WO2011027382A1 (en) * 2009-09-01 2011-03-10 Hitachi, Ltd. Request processing system provided with multi-core processor
JP2011065528A (ja) * 2009-09-18 2011-03-31 Toyota Motor Corp マルチプロセッサシステム
JP2011065645A (ja) 2009-09-18 2011-03-31 Square Enix Co Ltd マルチコアプロセッサシステム
US8935569B2 (en) * 2010-03-23 2015-01-13 Continental Teves Ag & Co. Ohg Control computer system, method for controlling a control computer system, and use of a control computer system
JP5601127B2 (ja) * 2010-09-28 2014-10-08 株式会社デンソー 制御装置
JP2012083992A (ja) * 2010-10-13 2012-04-26 Nec Computertechno Ltd データ障害処理装置、及びデータ障害処理方法
JP5644380B2 (ja) * 2010-11-04 2014-12-24 トヨタ自動車株式会社 情報処理装置
EP2672342B1 (de) * 2011-01-31 2017-03-01 Toyota Jidosha Kabushiki Kaisha Sicherheitssteuerungsvorrichtung und sicherheitssteuerungsverfahren
DE102011011755A1 (de) * 2011-02-18 2012-08-23 Conti Temic Microelectronic Gmbh Halbleiterschaltkreis und Verfahren in einem Sicherheitskonzept zum Einsatz in einem Kraftfahrzeug
DE102011005766A1 (de) * 2011-03-18 2012-09-20 Zf Friedrichshafen Ag Steuergerät für ein Kraftfahrzeug
EP2690558B1 (de) * 2011-03-24 2020-01-22 Renesas Electronics Corporation Halbleiterbauelement
JP5533789B2 (ja) 2011-06-14 2014-06-25 株式会社デンソー 車載電子制御装置
DE102011105617A1 (de) * 2011-06-28 2013-01-03 Audi Ag Kraftfahrzeug mit einer Vielzahl von Betriebskomponenten
DE102011116617A1 (de) * 2011-10-20 2013-04-25 Continental Automotive Gmbh Kraftfahrzeugsteuergerät mit einem Doppelkernprozessor
EP2793133B1 (de) 2011-12-13 2019-09-25 Toyota Jidosha Kabushiki Kaisha Multikernprozessor
JP2013225208A (ja) 2012-04-20 2013-10-31 Toyota Motor Corp 情報処理装置、情報処理方法、及びプログラム
KR20150067380A (ko) 2012-10-16 2015-06-17 콘티넨탈 테베스 아게 운트 코. 오하게 자동차를 제어하기 위한 리던던트 프로그램들 간에 데이터를 교환하기 위한 인터페이스
CN103902423A (zh) * 2012-12-26 2014-07-02 联芯科技有限公司 一种调试中央处理器死机的方法和系统
CN104657240B (zh) * 2013-11-18 2018-08-21 华为技术有限公司 多内核操作系统的失效控制方法及装置
US9817670B2 (en) * 2013-12-13 2017-11-14 International Business Machines Corporation Framework to provide time bound execution of co-processor commands
CN103870350A (zh) * 2014-03-27 2014-06-18 浪潮电子信息产业股份有限公司 一种基于watchdog的微处理器多核加固方法
JP6165677B2 (ja) * 2014-06-06 2017-07-19 本田技研工業株式会社 電子制御システム
DE102015211837A1 (de) * 2015-06-25 2016-12-29 Volkswagen Aktiengesellschaft Integrierter Baustein mit einem Steuergeräte-Controller und einer Überwachungseinheit
CN107851055B (zh) 2015-07-30 2021-06-29 三菱电机株式会社 程序执行装置、程序执行系统以及程序执行方法
JP2017033236A (ja) 2015-07-31 2017-02-09 日立オートモティブシステムズ株式会社 車両制御装置
JP2017097633A (ja) * 2015-11-25 2017-06-01 日立オートモティブシステムズ株式会社 車両制御装置
JP2018096273A (ja) * 2016-12-13 2018-06-21 株式会社デンソー 電子制御装置
JP6960453B2 (ja) * 2017-04-25 2021-11-05 株式会社日立製作所 再構成制御装置
KR101988558B1 (ko) 2017-06-07 2019-06-12 현대오트론 주식회사 멀티 코어를 갖는 마이크로콘트롤러 유닛을 감시하는 감시장치 및 그것의 동작 방법
JP7449650B2 (ja) * 2019-05-23 2024-03-14 株式会社デンソー 車両用装置
CN112527541A (zh) * 2019-09-19 2021-03-19 华为技术有限公司 一种确定多核处理器中故障计算核的方法及电子设备
JP7397655B2 (ja) 2019-12-19 2023-12-13 日立Astemo株式会社 自動車用電子制御装置
JP6998434B2 (ja) * 2020-09-04 2022-01-18 日立Astemo株式会社 自動車用電子制御装置
WO2022201597A1 (ja) * 2021-03-22 2022-09-29 日立Astemo株式会社 車両制御装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3814919A (en) * 1971-03-04 1974-06-04 Plessey Handel Investment Ag Fault detection and isolation in a data processing system
US4356546A (en) * 1980-02-05 1982-10-26 The Bendix Corporation Fault-tolerant multi-computer system
US5796937A (en) * 1994-09-29 1998-08-18 Fujitsu Limited Method of and apparatus for dealing with processor abnormality in multiprocessor system
US20030162503A1 (en) * 2002-02-26 2003-08-28 Motorola, Inc. Dynamic reallocation of processing resources for redundant functionality
US20040019835A1 (en) * 1999-12-30 2004-01-29 Intel Corporation System abstraction layer, processor abstraction layer, and operating system error handling
DE102004046288A1 (de) * 2004-09-24 2006-03-30 Robert Bosch Gmbh Verfahren zur Abarbeitung eines Computerprogramms auf einem Computersystem
US20060117218A1 (en) * 2004-11-12 2006-06-01 Nec Electronics Corporation Multi-processing system and multi-processing method
US20070038885A1 (en) * 2004-02-02 2007-02-15 Klaus Hartung Method for operating an arrangement of a plurality of computers in the event of a computer failure

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0424838A (ja) 1990-05-21 1992-01-28 Fuji Xerox Co Ltd マルチプロセッサの障害管理方式
JPH04223534A (ja) 1990-12-26 1992-08-13 Nec Field Service Ltd 情報処理システム
JPH0630069A (ja) 1992-07-13 1994-02-04 Nec Corp マルチサブキャリアによるqam伝送方式
JP3070282B2 (ja) 1992-08-18 2000-07-31 日本電気株式会社 障害処理方式
JPH07175765A (ja) 1993-10-25 1995-07-14 Mitsubishi Electric Corp 計算機の障害回復方法
US5957985A (en) 1996-12-16 1999-09-28 Microsoft Corporation Fault-resilient automobile control system
JP4113934B2 (ja) 1998-07-09 2008-07-09 株式会社豊田中央研究所 フェールセーフ機能付き情報処理装置
JP2000181890A (ja) 1998-12-15 2000-06-30 Fujitsu Ltd マルチプロセッサ交換機及びその主プロセッサ切替方法
DE10101827A1 (de) * 2001-01-17 2002-07-18 Daimler Chrysler Ag Lenkanordnung für Kraftfahrzeuge
JP2002259147A (ja) 2001-02-27 2002-09-13 Hitachi Ltd 情報処理装置及びリアルタイム分散処理システム
JP2002049405A (ja) 2001-06-01 2002-02-15 Hitachi Ltd 分散制御装置、システム及びコントローラ
JP2003036174A (ja) * 2001-07-25 2003-02-07 Hitachi Ltd 車載端末装置
JP2004318498A (ja) 2003-04-16 2004-11-11 Toyota Central Res & Dev Lab Inc フェールセーフ装置
US7275180B2 (en) * 2003-04-17 2007-09-25 International Business Machines Corporation Transparent replacement of a failing processor
US7426657B2 (en) * 2004-07-09 2008-09-16 International Business Machines Corporation System and method for predictive processor failure recovery
US20060015773A1 (en) * 2004-07-16 2006-01-19 Dell Products L.P. System and method for failure recovery and load balancing in a cluster network
JP4422596B2 (ja) 2004-11-29 2010-02-24 トヨタ自動車株式会社 再構成可能信号処理システム
JP2006277278A (ja) 2005-03-29 2006-10-12 Nec Corp 自律型コンピュータシステムおよびその自動整合方法
DE102005033463B3 (de) 2005-07-18 2007-02-01 Siemens Ag Piezoaktor
US7493515B2 (en) * 2005-09-30 2009-02-17 International Business Machines Corporation Assigning a processor to a logical partition
JP2007154050A (ja) 2005-12-06 2007-06-21 Hyogo Prefecture 機能性を付与するためのプラスチック表面処理法
US8819483B2 (en) * 2006-09-27 2014-08-26 L-3 Communications Corporation Computing device with redundant, dissimilar operating systems

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3814919A (en) * 1971-03-04 1974-06-04 Plessey Handel Investment Ag Fault detection and isolation in a data processing system
US4356546A (en) * 1980-02-05 1982-10-26 The Bendix Corporation Fault-tolerant multi-computer system
US5796937A (en) * 1994-09-29 1998-08-18 Fujitsu Limited Method of and apparatus for dealing with processor abnormality in multiprocessor system
US20040019835A1 (en) * 1999-12-30 2004-01-29 Intel Corporation System abstraction layer, processor abstraction layer, and operating system error handling
US20030162503A1 (en) * 2002-02-26 2003-08-28 Motorola, Inc. Dynamic reallocation of processing resources for redundant functionality
US20070038885A1 (en) * 2004-02-02 2007-02-15 Klaus Hartung Method for operating an arrangement of a plurality of computers in the event of a computer failure
DE102004046288A1 (de) * 2004-09-24 2006-03-30 Robert Bosch Gmbh Verfahren zur Abarbeitung eines Computerprogramms auf einem Computersystem
US20060117218A1 (en) * 2004-11-12 2006-06-01 Nec Electronics Corporation Multi-processing system and multi-processing method

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
AGGARWAL, Nidhi, et al. Configurable isolation: building high availability systems with commodity multi-core processors. ACM SIGARCH Computer Architecture News, 2007, 35. Jg., Nr. 2, S. 470-481. *
JOSEPH, Russ. Exploring salvage techniques for multi-core architectures. In: Workshop on High Performance Computing Reliability Issues (HPCRI). 2005. *
LAPRIE, J.-C., et al. Definition and analysis of hardware-and software-fault-tolerant architectures. Computer, 1990, 23. Jg., Nr. 7, S. 39-51. *

Also Published As

Publication number Publication date
WO2008153057A1 (ja) 2008-12-18
JP4458119B2 (ja) 2010-04-28
US8090982B2 (en) 2012-01-03
US20100162042A1 (en) 2010-06-24
CN101681286A (zh) 2010-03-24
JP2008305317A (ja) 2008-12-18
DE112008001528T5 (de) 2010-04-29

Similar Documents

Publication Publication Date Title
DE112008001528B4 (de) Multiprozessorsystem und Steuerverfahren hierfür
DE60019038T2 (de) Intelligente Fehlerverwaltung
DE102006048115B4 (de) System und Verfahren zum Aufzeichnen von behebbaren Fehlern
KR101888029B1 (ko) 가상 머신 클러스터 모니터링 방법 및 모니터링 시스템
DE102013218341B4 (de) Ersatzweise Verlagerung von Threads (Thread-Sparing) zwischen Berechnungskernen in einem Multithread-Prozessor
WO2012066108A1 (de) Mikroprozessorsystem mit fehlertoleranter architektur
DE102014108249A1 (de) Realisieren erweiterter Fehlerbehandlung für einen gemeinsam genutzten Adapter in einem virtualisierten System
DE102015201443A1 (de) Verfahren und Vorrichtung zum Steuern eines Watchdog
DE112010005400T5 (de) System für gegenseitige Überwachung von Mikrocomputern und ein Verfahren für gegenseitige Überwachung von Mikrocomputern
EP2513796B1 (de) Verfahren zum betreiben einer recheneinheit
DE10231938A1 (de) Computersystem mit mehreren Sicherungs-Verwaltungsprozessoren zur Handhabung eines Ausfalls eines eingebetteten Prozessors
EP1358554B1 (de) Automatische inbetriebnahme eines clustersystems nach einem heilbaren fehler
DE102015225144A1 (de) System und Verfahren zur Diagnose von zumindest einer wartungsbedürftigen Komponente eines Geräts und/oder Anlage
DE112006003504T5 (de) Detektion von Cachespeicher-Disassoziierung
WO2020038626A1 (de) Automatisierungssystem zur überwachung eines sicherheitskritischen prozesses
US7684654B2 (en) System and method for fault detection and recovery in a medical imaging system
DE102021126726A1 (de) Verteiltes system und datenübertragungsverfahren
DE102020114844A1 (de) Systeme, vorrichtungen und verfahren für steuerungsvorrichtungen, die fehlerereignisse behandeln
DE102011007467A1 (de) Mehrkernige integrierte Mikroprozessorschaltung mit Prüfeinrichtung, Prüfverfahren und Verwendung
DE102015218898A1 (de) Verfahren zur redundanten Verarbeitung von Daten
DE102018219764A1 (de) Mehrprozessor-Fehlerdetektionssystem und Verfahren dafür
DE112019007432B4 (de) Elektronische steuereinheit und programm
DE102017219195B4 (de) Verfahren zum gewährleisten eines betriebs eines rechners
US20070124343A1 (en) Method or apparatus for processing data in a system management application program
JPH1188471A (ja) 試験方法及び試験装置

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R016 Response to examination communication
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