DE112022001480T5 - ELECTRONIC CONTROL UNIT AND ANOMALY DETERMINATION METHOD - Google Patents
ELECTRONIC CONTROL UNIT AND ANOMALY DETERMINATION METHOD Download PDFInfo
- Publication number
- DE112022001480T5 DE112022001480T5 DE112022001480.6T DE112022001480T DE112022001480T5 DE 112022001480 T5 DE112022001480 T5 DE 112022001480T5 DE 112022001480 T DE112022001480 T DE 112022001480T DE 112022001480 T5 DE112022001480 T5 DE 112022001480T5
- Authority
- DE
- Germany
- Prior art keywords
- hypervisor
- recording
- peripheral
- driver
- state
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 77
- 230000002093 peripheral effect Effects 0.000 claims abstract description 180
- 230000008569 process Effects 0.000 claims abstract description 65
- 238000012544 monitoring process Methods 0.000 claims abstract description 51
- 230000004044 response Effects 0.000 claims description 17
- 230000002159 abnormal effect Effects 0.000 claims description 10
- 230000005856 abnormality Effects 0.000 abstract description 21
- 238000001514 detection method Methods 0.000 description 14
- 238000012545 processing Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000012360 testing method Methods 0.000 description 4
- 230000004913 activation Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- BUHVIAUBTBOHAG-FOYDDCNASA-N (2r,3r,4s,5r)-2-[6-[[2-(3,5-dimethoxyphenyl)-2-(2-methylphenyl)ethyl]amino]purin-9-yl]-5-(hydroxymethyl)oxolane-3,4-diol Chemical compound COC1=CC(OC)=CC(C(CNC=2C=3N=CN(C=3N=CN=2)[C@H]2[C@@H]([C@H](O)[C@@H](CO)O2)O)C=2C(=CC=CC=2)C)=C1 BUHVIAUBTBOHAG-FOYDDCNASA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000010348 incorporation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45579—I/O management, e.g. providing access to device drivers or storage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45591—Monitoring or debugging support
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
Eine elektronische Steuereinheit enthält Folgendes: eine virtuelle Maschine, die auf einen ersten virtuellen Treiber zugreift, um einen Prozess auszuführen; einen Hypervisor, der einen ersten realen Treiber eines ersten Peripheriegeräts auf der Grundlage einer Peripheriezugriffsanforderung, die vom ersten virtuellen Treiber empfangen wurde, aufruft; eine Zugriffsaufzeichnungseinheit, die den ersten virtuellen Treiber aufruft, um eine Peripheriezugriffsanforderung, die zum Hypervisor gesendet wurde, aufzuzeichnen; eine Zustandsaufzeichnungseinheit, die den ersten realen Treiber aufruft, um einen Zustand eines Registers des ersten Peripheriegeräts aufzuzeichnen; und eine Überwachungseinheit, die einen Betrieb des Hypervisors überwacht. Die Überwachungseinheit bestimmt eine Anomalie des Hypervisors auf der Grundlage einer Aufzeichnung durch die Zugriffsaufzeichnungseinheit und einer Aufzeichnung durch die Zustandsaufzeichnungseinheit.An electronic control unit includes: a virtual machine that accesses a first virtual driver to execute a process; a hypervisor that invokes a first real driver of a first peripheral device based on a peripheral access request received from the first virtual driver; an access recording unit that calls the first virtual driver to record a peripheral access request sent to the hypervisor; a state recording unit that calls the first real driver to record a state of a register of the first peripheral device; and a monitoring unit that monitors operation of the hypervisor. The monitoring unit determines an abnormality of the hypervisor based on a recording by the access recording unit and a recording by the state recording unit.
Description
Aufnahme durch BezugnahmeIncorporation by reference
Diese Anmeldung beansprucht die Priorität der
Technisches GebietTechnical area
Die vorliegende Erfindung bezieht sich auf eine elektronische Steuereinheit.The present invention relates to an electronic control unit.
Technischer HintergrundTechnical background
Die Verwendung eines Hypervisors ermöglicht ein Aufnehmen mehrerer Steuer-Software-Anwendungen, die in verschiedenen Betriebssystemen (OS) laufen, in einen einzelnen Mikrocomputer. Als Techniken des Überwachens eines Hypervisors sind Techniken, die in
Patentliteratur 2 beschreibt ein Verfahren zum Steuern einer Eingabe-/Ausgabe-Vorrichtung, wobei das Verfahren bewirkt, dass ein Hypervisor und ein erstes Gastbetriebssystem eine Eingabe-/Ausgabe-Vorrichtung gemeinsam verwenden und gemäß dem die Eingabe-/Ausgabe-Vorrichtung eine physische Funktion und eine virtuelle Funktion aufweist, der Hypervisor einen physischen Treiber aufweist, der die physische Funktion verwendet, das erste Gastbetriebssystem einen virtuellen Treiber aufweist, der die virtuelle Funktion verwendet, der Hypervisor einen Zustand der Eingabe-/Ausgabe-Vorrichtung mittels des physischen Treibers erfasst und dann, wenn das erste Gastbetriebssystem, das den Hypervisor überwacht, feststellt, dass der Hypervisor in einem gegebenen Zustand ist, ein unterphysischer Treiber, der die Eingabe-/Ausgabe-Vorrichtung betreibt, gestartet wird und das erste Gastbetriebssystem ein Senden/Empfangen von Daten über eine Datenwarteschlange, die in einem Speicher voreingestellt ist, durchführt.
Zusammenfassung der ErfindungSummary of the invention
Technisches ProblemTechnical problem
In einer elektronischen Steuereinheit, in der mehrere Steuer-Software-Anwendungen, die in verschiedenen Betriebssystemen laufen, in einem Mikrocomputer (einer Hardware) integriert sind, wird Virtualisierungssoftware, die als ein Hypervisor bezeichnet wird, verwendet. Der Hypervisor stellt eine virtuelle Maschine als eine Umgebung zum Betreiben eines Betriebssystems und einer Steuer-Software-Anwendung bereit. Die virtuelle Maschine ist eine Einheit mit einer Zugriffsautorität, die für ihr Zugreifen auf eine Zentraleinheit (CPU) im Mikrocomputer gesetzt ist, einem Speicherbereich und Peripheriegeräten, die am Mikrocomputer installiert sind, wie z. B. einer Steuereinheitbereichsnetz-Steuereinheit (CAN-Steuereinheit) und einem Analog/Digital-Umsetzer (A/D-Umsetzer). Aus der Perspektive eines Gastbetriebssystems und einer Steuer-Software-Anwendung in jeder virtuellen Maschine beschreibt dies die logisch entsprechende Tatsache, dass eine CPU, ein Speicherbereich und Peripheriegeräte ohne gesetzte Autorität, auf sie zuzugreifen, in einem verschiedenen Mikrocomputer vorhanden sind. Im Allgemeinen muss, um die Sicherheit und die Zuverlässigkeit einer elektronischen Steuereinheit sicherzustellen, der Betrieb der elektronischen Steuereinheit überwacht werden, um zu bestätigen, dass Hardware und Software, die die elektronische Steuereinheit bilden, normal arbeiten, ohne eine Anomalie zu entwickeln. Insbesondere für den Fall einer elektronischen Steuereinheit unter Verwendung eines Hypervisors ist ein Überwachen des Betriebs des Hypervisors nötig.In an electronic control unit in which multiple control software applications running in different operating systems are integrated in a microcomputer (hardware), virtualization software called a hypervisor is used. The hypervisor provides a virtual machine as an environment for running an operating system and a control software application. The virtual machine is a device with an access authority set for its access to a central processing unit (CPU) in the microcomputer, a memory area and peripheral devices installed on the microcomputer, such as. B. a control unit area network control unit (CAN control unit) and an analog/digital converter (A/D converter). From the perspective of a guest operating system and a control software application in each virtual machine, this describes the logically corresponding fact that a CPU, memory area and peripherals exist in a different microcomputer without any set authority to access them. In general, in order to ensure the safety and reliability of an electronic control unit, the operation of the electronic control unit must be monitored to confirm that hardware and software constituting the electronic control unit are operating normally without developing an abnormality. In particular, in the case of an electronic control unit using a hypervisor, monitoring the operation of the hypervisor is necessary.
Gemäß Patentliteratur 1 ist die überwachende virtuelle Maschine als virtuelle Maschine installiert, führt die überwachende virtuelle Maschine in regelmäßigen Abständen ein Prüfmuster aus und erfasst einen internen Zustand (normal/anomal) des Hypervisors und wird auf der Grundlage eines Ergebnisses einer Ausführung des Prüfmusters und eines Ergebnisses einer Erfassung des internen Zustands des Hypervisors bestimmt, ob eine Anomalie in der elektronischen Steuereinheit aufgetreten ist, und kann dann, wenn eine Anomalie aufgetreten ist, ein Umfang des Einflusses der Anomalie festgelegt werden. Allerdings wird, weil das Überwachen des Hypervisors in Patentliteratur 1 durch ein Erfassen eines normalen oder anomalen Zustands, der durch den Hypervisor selbst bestimmt wird, ausgeführt wird, ein Fall, in dem ein anomaler Zustand des Hypervisors, der durch eine Anomalie verursacht wird, die in ihm aufgetreten ist, nicht ordnungsgemäß bestimmt wird, nicht berücksichtigt und ist deshalb ein normaler Betrieb des Hypervisors nicht garantiert. Zusätzlich kann, weil das Erfassen des internen Zustands des Hypervisors nötig ist, die Technik von Patentliteratur 1 auf einen Hypervisor einer dritten Instanz, dessen interner Zustand nicht für die Öffentlichkeit zugänglich ist, nicht angewendet werden.According to
Patentliteratur 2 beschreibt ein Verfahren, gemäß dem ein Zähler (ein Wächterzeitgeber) für den Hypervisor vorgesehen ist, der Zähler gesetzt ist, eine Anforderung zu erfüllen, dass er in einem gegebenen Zyklus hochzählt oder herunterzählt, und dann, wenn der Zähler seine Zählung im gegebenen Zeitraum nicht aktualisiert, bestimmt wird, dass eine Anomalie im Hypervisor aufgetreten ist. Dies ermöglicht die Detektion eines unerwarteten Anhaltens des Hypervisors oder eines Deadlocks oder eines Livelocks, der im Hypervisor aufgetreten ist. Um dieses Verfahren anzuwenden, ist es allerdings nötig, Anforderungen festzulegen, die mit dem Aktualisieren einer Zählung durch den Zähler im Hypervisor in Beziehung stehen. Zusätzlich kann, weil einem Zählungsaktualisierungsprozess durch den Wächterzeitgeber im Allgemeinen eine hohe Priorität gegeben wird, dann wenn die Priorität des Zählungsaktualisierungsprozesses größer als die Verarbeitungspriorität einer Aufgabe gesetzt ist, die einen Deadlock oder einen Livelock im Hypervisor entwickelt hat, der Deadlock oder der Livelock nicht detektiert werden.
Eine Aufgabe der vorliegenden Erfindung ist, einen Hypervisor, der durch eine dritte Instanz oder dergleichen bereitgestellt wird, zu überwachen, wobei der Hypervisor seine interne Logik nicht für die Öffentlichkeit offen gestaltet, und eine Anomalie, die im Hypervisor aufgetreten ist, lediglich auf der Grundlage der Eingabe und der Ausgabe des Hypervisors zu detektieren.An object of the present invention is to monitor a hypervisor provided by a third party or the like, where the hypervisor does not expose its internal logic to the public, and based only on an anomaly that has occurred in the hypervisor the input and output of the hypervisor.
Lösung des Problemsthe solution of the problem
Ein typisches Beispiel der vorliegenden Erfindung, die hier offenbart wird, gestaltet sich wie folgt. Eine elektronische Steuereinheit enthält Folgendes: eine virtuelle Maschine, die auf einen ersten virtuellen Treiber zugreift, um einen Prozess auszuführen; einen Hypervisor, der einen ersten realen Treiber eines ersten Peripheriegeräts auf der Grundlage einer Peripheriezugriffsanforderung, die vom ersten virtuellen Treiber empfangen wurde, aufruft; eine Zugriffsaufzeichnungseinheit, die den ersten virtuellen Treiber aufruft, um eine Peripheriezugriffsanforderung, die zum Hypervisor gesendet wurde, aufzuzeichnen; eine Zustandsaufzeichnungseinheit, die den ersten realen Treiber aufruft, um einen Zustand eines Registers des ersten Peripheriegeräts aufzuzeichnen; und eine Überwachungseinheit, die einen Betrieb des Hypervisors überwacht. Die Überwachungseinheit bestimmt eine Anomalie des Hypervisors auf der Grundlage einer Aufzeichnung durch die Zugriffsaufzeichnungseinheit und einer Aufzeichnung durch die Zustandsaufzeichnungseinheit.A typical example of the present invention disclosed herein is as follows. An electronic control unit includes: a virtual machine that accesses a first virtual driver to execute a process; a hypervisor that invokes a first real driver of a first peripheral device based on a peripheral access request received from the first virtual driver; an access recording unit that calls the first virtual driver to record a peripheral access request sent to the hypervisor; a state recording unit that calls the first real driver to record a state of a register of the first peripheral device; and a monitoring unit that monitors operation of the hypervisor. The monitoring unit determines an abnormality of the hypervisor based on a recording by the access recording unit and a recording by the state recording unit.
Vorteilhafte Wirkungen der ErfindungAdvantageous effects of the invention
Gemäß einem Aspekt der vorliegenden Erfindung kann eine Anomalie eines Hypervisors detektiert werden, ohne auf einen internen Zustand des Hypervisors zuzugreifen. Probleme, Konfigurationen und Wirkungen, die oben nicht beschrieben werden, werden durch die folgende Beschreibung von Ausführungsformen verdeutlicht.According to one aspect of the present invention, an anomaly of a hypervisor may be detected without accessing an internal state of the hypervisor. Problems, configurations and effects not described above will be clarified by the following description of embodiments.
Kurzbeschreibung der ZeichnungenBrief description of the drawings
-
[
1 ]1 stellt eine Hardware-Konfiguration einer elektronischen Steuereinheit gemäß einer ersten Ausführungsform dar.[1 ]1 represents a hardware configuration of an electronic control unit according to a first embodiment. -
[
2 ]2 stellt eine Software-Konfiguration der elektronischen Steuereinheit gemäß der ersten Ausführungsform dar.[2 ]2 illustrates a software configuration of the electronic control unit according to the first embodiment. -
[
3 ]3 stellt einen Überblick eines Prozessablaufs dar, der ausgeführt wird, wenn eine erste Steuer-Software-Anwendung der ersten Ausführungsform ein erstes Peripheriegerät verwendet.[3 ]3 illustrates an overview of a process flow that is executed when a first control software application of the first embodiment uses a first peripheral device. -
[
4 ]4 stellt einen Überblick eines Prozessablaufs dar, der ausgeführt wird, wenn die erste Steuer-Software-Anwendung der ersten Ausführungsform ein gemeinsam verwendetes Peripheriegerät verwendet.[4 ]4 illustrates an overview of a process flow that is executed when the first control software application of the first embodiment uses a shared peripheral device. -
[
5 ]5 stellt ein Beispiel von Peripheriezugriffsanforderungs-Informationen gemäß der ersten Ausführungsform dar.[5 ]5 illustrates an example of peripheral access request information according to the first embodiment. -
[
6 ]6 stellt ein Beispiel von Peripheriezugriffsergebnis-Informationen der ersten Ausführungsform dar.[6 ]6 illustrates an example of peripheral access result information of the first embodiment. -
[
7 ]7 stellt einen Überblick eines Prozessablaufs dar, der ausgeführt wird, wenn eine zweite Steuer-Software-Anwendung der ersten Ausführungsform ein zweites Peripheriegerät verwendet.[7 ]7 illustrates an overview of a process flow that is executed when a second control software application of the first embodiment uses a second peripheral device. -
[
8 ]8 stellt einen Überblick eines Prozessablaufs dar, der ausgeführt wird, wenn die zweite Steuer-Software-Anwendung der ersten Ausführungsform das gemeinsam verwendete Peripheriegerät verwendet.[8th ]8th illustrates an overview of a process flow executed when the second control software application of the first embodiment uses the shared peripheral device. -
[
9 ]9 stellt ein Beispiel von Peripheriezugriffsaufzeichnungs-Informationen gemäß der ersten Ausführungsform dar.[9 ]9 illustrates an example of peripheral access record information according to the first embodiment. -
[
10 ]10 stellt ein Beispiel von Peripheriezustandsaufzeichnungs-Informationen gemäß der ersten Ausführungsform dar.[10 ]10 illustrates an example of peripheral state recording information according to the first embodiment. -
[
11 ]11 stellt einen Überblick eines Prozessablaufs eines Hypervisor-Überwachungsprogramms der ersten Ausführungsform dar.[11 ]11 illustrates an overview of a process flow of a hypervisor monitoring program of the first embodiment. -
[
12 ]12 stellt ein Beispiel von Peripheriebestimmungszustands-Informationen gemäß der ersten Ausführungsform dar.[12 ]12 illustrates an example of peripheral determination state information according to the first embodiment. -
[
13 ]13 ist ein Diagramm, das einen Prozess des Erzeugens der Peripheriebestimmungszustands-Informationen schematisch zeigt, der in Schritt S1 des Hypervisor-Überwachungsprogramms der ersten Ausführungsform ausgeführt wird.[13 ]13 is a diagram schematically showing a process of generating the peripheral determination state information executed in step S1 of the hypervisor monitoring program of the first embodiment. -
[
14 ]14 ist ein Diagramm, das den Prozess des Erzeugens der Peripheriebestimmungszustands-Informationen schematisch zeigt, der in Schritt S1 des Hypervisor-Überwachungsprogramms der ersten Ausführungsform ausgeführt wird.[14 ]14 is a diagram schematically showing the process of generating the peripheral determination state information executed in step S1 of the hypervisor monitoring program of the first embodiment. -
[
15 ]15 stellt eine Software-Konfiguration einer elektronischen Steuereinheit gemäß einer zweiten Ausführungsform dar.[15 ]15 represents a software configuration of an electronic control unit according to a second embodiment. -
[
16 ]16 stellt einen Überblick eines Prozessablaufs eines Hypervisor-Überwachungsprogramms der zweiten Ausführungsform dar.[16 ]16 illustrates an overview of a process flow of a hypervisor monitoring program of the second embodiment. -
[
17 ]17 stellt eine Hardware-Konfiguration einer elektronischen Steuereinheit gemäß einer dritten Ausführungsform dar.[17 ]17 represents a hardware configuration of an electronic control unit according to a third embodiment. -
[
18 ]18 stellt eine Software-Konfiguration der elektronischen Steuereinheit gemäß der dritten Ausführungsform dar.[18 ]18 illustrates a software configuration of the electronic control unit according to the third embodiment. -
[
19 ]19 stellt einen Überblick eines Prozessablaufs dar, der ausgeführt wird, wenn die erste Steuer-Software-Anwendung der dritten Ausführungsform eine CAN-Steuereinheit verwendet, die das gemeinsam verwendete Peripheriegerät ist.[19 ]19 illustrates an overview of a process flow executed when the first control software application of the third embodiment uses a CAN controller which is the shared peripheral device. -
[
20 ]20 stellt ein CAN-Hauptbuch der dritten Ausführungsform dar.[20 ]20 represents a CAN ledger of the third embodiment. -
[
21 ]21 stellt einen Überblick eines Prozessablaufs eines Überwachungsergebnisspeicherprogramms einer vierten Ausführungsform dar.[21 ]21 illustrates an overview of a process flow of a monitoring result storage program of a fourth embodiment. -
[
22 ]22 stellt ein Beispiel von Hypervisoranomalieauftrittszeit-Informationen der vierten Ausführungsform dar.[22 ]22 illustrates an example of hypervisor anomaly occurrence time information of the fourth embodiment. -
[
23 ]23 ist ein Diagramm, das einen Überblick eines Prozesses schematisch zeigt, der in Schritt S7 des Überwachungsergebnisspeicherprogramms der vierten Ausführungsform ausgeführt wird.[23 ]23 is a diagram schematically showing an overview of a process executed in step S7 of the monitoring result storage program of the fourth embodiment.
Beschreibung der AusführungsformenDescription of the embodiments
Hier beschriebene Ausführungsformen beziehen sich auf eine elektronische Steuereinheit und beziehen sich insbesondere auf eine elektronische Steuereinheit, in der mehrere Steuer-Software-Anwendungen in einem Mikrocomputer integriert sind.Embodiments described herein relate to an electronic control unit and particularly relate to an electronic control unit in which multiple control software applications are integrated in a microcomputer.
Im Folgenden werden Beispiele bevorzugter Ausführungsformen der vorliegenden Erfindung beschrieben. In den Ausführungsformen wird zur Vereinfachung der Beschreibung ein Beispiel erläutert, in dem zwei Steuer-Software-Anwendungen, d. h. eine erste Steuer-Software-Anwendung und eine zweite Steuer-Software-Anwendung, in einer elektronischen Steuereinheit integriert sind. In einem verschiedenen Beispiel können allerdings eine dritte Steuer-Software-Anwendung und eine vierte Steuer-Software-Anwendung in einer elektronischen Steuereinheit integriert sein.Examples of preferred embodiments of the present invention are described below. In the embodiments, for convenience of description, an example is explained in which two control software applications, i.e. H. a first control software application and a second control software application, are integrated in an electronic control unit. However, in a different example, a third control software application and a fourth control software application may be integrated into an electronic control unit.
Erste AusführungsformFirst embodiment
<Konfiguration><Configuration>
<Elektronische Steuereinheit 0><
Die elektronische Steuereinheit gemäß der ersten Ausführungsform wird im Folgenden unter Bezugnahme auf
Ein Leistungseingabeanschluss des Mikrocomputers 900 ist mit einer Stromversorgungsschaltung 901 verbunden. Der Mikrocomputer 900 startet, wenn er von der Stromversorgungsschaltung 901 mit Leistung versorgt wird. Der Mikrocomputer 900 weist einen Selbstrücksetzsignalausgabeanschluss auf. Wenn der Mikrocomputer 900 ein digitales Signal aus dem Selbstrücksetzsignalausgabeanschluss ausgibt, stoppt die Stromversorgungsschaltung 901 ein Zuführen von Leistung zum Mikrocomputer 900.A power input terminal of the
<CPU 1><
Die CPU 1 enthält zwei CPU-Kerne, d. h. einen ersten CPU-Kern 101 und einen zweiten CPU-Kern 102. Es ist festzuhalten, dass zwei CPU-Kerne zur Vereinfachung der Beschreibung beispielhaft erwähnt werden. Zum Beispiel kann die CPU 1 einen CPU-Kern oder drei oder mehr CPU-Kerne enthalten.The
<Peripheriegerät 2><
Das Peripheriegerät 2 ist eine Vorrichtung, die Daten/Signale in oder aus dem Mikrocomputer 900 eingibt und ausgibt, und enthält ein gemeinsam verwendetes Peripheriegerät 201, auf das sowohl durch eine erste Steuer-Software-Anwendung 10 (d. h. einen ersten CPU-Kern 101) als auch eine zweite Steuer-Software-Anwendung 15 (d. h. einen zweiten CPU-Kern 102) zugegriffen wird, ein erstes Peripheriegerät 202, auf das lediglich durch die erste Steuer-Software-Anwendung 10 (d. h. den ersten CPU-Kern 101) zugegriffen wird, und ein zweites Peripheriegerät 203, auf das lediglich durch die zweite Steuer-Software-Anwendung 15 (d. h. den zweiten CPU-Kern 103) zugegriffen wird. Das Peripheriegerät 2 bezieht sich im Allgemeinen auf Peripherieschaltungen, die die CPU 1 und den Speicher 3, die am Mikrocomputer 900 installiert sind, nicht enthalten. Das Peripheriegerät 2 enthält speziell eine Steuereinheitbereichsnetz-Steuereinheit (CAN-Steuereinheit), einen Analog/Digital-Umsetzer, eine Direktspeicherzugriffssteuereinheit und eine allgemein verwendbare Eingabe/Ausgabe (GPIO), die am Mikrocomputer 900 installiert sind.The
<Speicher 3><
Der Speicher 3 enthält einen ROM, der ein nichtflüchtiges Speicherelement ist, und einen RAM, der ein flüchtiges Speicherelement ist. Der ROM speichert ein unveränderbares Programm (z. B. ein BIOS) und dergleichen. Der RAM ist ein flüchtiges Speicherelement, das einen Hochgeschwindigkeitszugriff ermöglicht, wie z. B. ein dynamischer Schreib-/Lese-Speicher (DRAM), der Programme, die durch die CPU 1 ausgeführt werden, und Daten, die zur Ausführung von Programmen verwendet werden, speichert.The
Zur Vereinfachung wird diese Ausführungsform unter der Annahme beschrieben, dass das gemeinsam verwendete Peripheriegerät 201 einen digitalen Ausgangsanschluss 2011 enthält, das erste Peripheriegerät 202 einen analogen Ausgangsanschluss 2021 enthält und das zweite Peripheriegerät 203 einen digitalen Eingangsanschluss 2031 enthält.For simplicity, this embodiment will be described assuming that the shared
<Software-Konfiguration><Software configuration>
Der folgende Prozess wird entweder in dem ersten CPU-Kern 101 oder dem zweiten CPU-Kern 102 der CPU 1 ausgeführt.The following process is executed in either the
Ein Host-Betriebssystem (Host-OS) 5 ist im Mikrocomputer 900 installiert. Das Host-Betriebssystem 5 aktiviert einen Hypervisor 6, ein Hypervisor-Überwachungsprogramm 17 und ein Registerwerterfassungsprogramm 18. Der Hypervisor 6 wird durch ein Aktivierungsverfahren aktiviert, das durch den Hypervisor 6 definiert ist. Das Hypervisor-Überwachungsprogramm 17 und das Registerwerterfassungsprogramm 18 werden in einem Zyklus von 5 Millisekunden aktiviert, um Informationen zum Überwachen zu erfassen. Zur Vereinfachung wird der Aktivierungszyklus in dieser Ausführungsform als 5 Millisekunden beschrieben. Ohne Beschränkung auf 5 Millisekunden kann allerdings auch ein verschiedener Aktivierungszyklus angewendet werden. Der Hypervisor 6 kann durch Software, die im Host-Betriebssystem 5 ausgeführt wird, oder durch Hardware, die am Mikrocomputer 900 installiert ist, konfiguriert sein.A host operating system (host OS) 5 is installed in the
Der Hypervisor 6 konfiguriert eine erste virtuelle Maschine 7 und eine zweite virtuelle Maschine 8 durch ein Verfahren, das durch den Hypervisor 6 definiert ist, und aktiviert jede der ersten virtuellen Maschine 7 und der zweiten virtuellen Maschine 8. Zur Vereinfachung werden in dieser Ausführungsform zwei virtuelle Maschinen beschrieben. Ohne Beschränkung auf zwei können allerdings eine oder drei oder mehr virtuelle Maschinen vorgesehen sein.The
In der ersten virtuellen Maschine 7 werden ein erstes Gastbetriebssystem 9, die erste Steuer-Software-Anwendung 10, ein virtueller Treiber 11, ein Peripheriezugriffsanforderungs-Aufzeichnungsprogramm 19 und ein Treiber 12 für analoge Ausgangsanschlüsse ausgeführt. In der zweiten virtuellen Maschine 8 werden ein zweites Gastbetriebssystem 13, die zweite Steuer-Software-Anwendung 15, der virtuelle Treiber 11 und ein Treiber 14 für digitale Eingangsanschlüsse ausgeführt. Das Peripheriezugriffsanforderungs-Aufzeichnungsprogramm 19 wird in der ersten virtuellen Maschine 7 ausgeführt, kann jedoch in der zweiten virtuellen Maschine 8 ausgeführt werden. Mit anderen Worten ist mindestens ein Peripheriezugriffsanforderungs-Aufzeichnungsprogramm 19, das im Hypervisor 6 ausgeführt wird, ausreichend.In the first
<Erste virtuelle Maschine 7><First
Der Betrieb von Software in der ersten virtuellen Maschine 7 wird beschrieben. Wenn der Hypervisor 6 die erste virtuelle Maschine 7 konfiguriert, aktiviert die erste virtuelle Maschine 7 das erste Gastbetriebssystem 9. Das erste Gastbetriebssystem 9 aktiviert die erste Steuer-Software-Anwendung 10. Die erste Steuer-Software-Anwendung 10 verwendet den digitalen Ausgangsanschluss 2011, der das gemeinsam verwendete Peripheriegerät 201 ist, und den analogen Ausgangsanschluss 2021, der das erste Peripheriegerät 202 ist.The operation of software in the first
<Zugriff von der ersten virtuellen Maschine 7 auf das erste Peripheriegerät 202><Access from the first
Um auf den analogen Ausgangsanschluss 2021, der das erste Peripheriegerät 202 ist, zuzugreifen, verwendet die erste Steuer-Software-Anwendung 10 den Treiber 12 für analoge Ausgangsanschlüsse. Speziell greift dann, wenn die erste Steuer-Software-Anwendung 10 den Treiber 12 für analoge Ausgangsanschlüsse durch Festlegen eines Parameters von 5 V aufruft, wobei der Aufruf als eine Peripheriezugriffsanforderung vorgenommen wird, der Treiber 12 für analoge Ausgangsanschlüsse auf ein Register des analogen Ausgangsanschlusses 2021 zu, gibt einen Wert zum Setzen einer Ausgangssanpannung von 5 V an einem gegebenen Ort eines Registers des Mikrocomputers 900 ein und sendet eine Antwort, die einen normalen Abschluss angibt, zur ersten Steuer-Software-Anwendung 10.To access the
<Zugriff von der ersten virtuellen Maschine 7 auf das gemeinsam verwendete Peripheriegerät 201><Access from the first
Um auf den digitalen Ausgangsanschluss 2011, der das gemeinsam verwendete Peripheriegerät 201 ist, zuzugreifen, verwendet die erste Steuer-Software-Anwendung 10 das Peripheriezugriffsanforderungs-Aufzeichnungsprogramm 19, den virtuellen Treiber 11, den Hypervisor 6 und den Treiber 16 für digitale Ausgangsanschlüsse. Speziell ruft die erste Steuer-Software-Anwendung 10 das Peripheriezugriffsanforderungs-Aufzeichnungsprogramm 19 durch Festlegen eines Parameters von H auf, wobei der Aufruf als eine Peripheriezugriffsanforderung vorgenommen wird. Das Peripheriezugriffsanforderungs-Aufzeichnungsprogramm 19 zeichnet Peripheriezugriffsanforderungs-Informationen 51 von der ersten Steuer-Software-Anwendung 10 auf und ruft den virtuellen Treiber 11 durch Festlegen eines Parameters von H auf. Der virtuelle Treiber 11 führt einen Prozess des Änderns eines Verarbeitungskontexts der CPU 1 von der ersten virtuellen Maschine 7 zum Hypervisor 6 (wobei dieser Prozess im Allgemeinen als VMExit bezeichnet wird) aus. Der Hypervisor 6 prüft einen Verwendungsstatus des digitalen Ausgangsanschlusses 2011. Wenn festgestellt wird, dass die zweite virtuelle Maschine 8 den digitalen Ausgangsanschluss 2011 nicht verwendet, ruft der Hypervisor 6 den Treiber 16 für digitale Ausgangsanschlüsse zum Zugreifen auf den digitalen Ausgangsanschluss 2011 durch Festlegen eines Parameters von H auf. Wenn festgestellt wird, dass die zweite virtuelle Maschine 8 den digitalen Ausgangsanschluss 2011 verwendet, speichert der Hypervisor 6 den Parameter H in einem Puffer, der im Hypervisor 6 vorgesehen ist, und geht in Bereitschaft, nimmt den Parameter H aus dem Puffer, nachdem die zweite virtuelle Maschine 8 das Verwenden des digitalen Ausgangsanschlusses 2011 abgeschlossen hat, und ruft dann den Treiber 16 für digitale Ausgangsanschlüsse durch Anfügen des herausgenommenen Parameters an den Aufruf auf.To access the
Der Treiber 16 für digitale Ausgangsanschlüsse greift auf ein Register des digitalen Ausgangsanschlusses 2011 zu, gibt einen Wert zum Setzen eines Ausgabewerts von H (hoch oder 1) an einem gegebenen Ort des Registers des Mikrocomputers 900 ein und sendet eine Antwort, die einen normalen Abschluss angibt, zurück zum Hypervisor 6. Nach Eingang der Antwort, die einen normalen Abschluss angibt, vom Treiber 16 für digitale Ausgangsanschlüsse führt der Hypervisor 6 einen Prozess des Änderns des Verarbeitungskontexts der CPU 1 vom Hypervisor 6 zur ersten virtuellen Maschine 7 (wobei dieser Prozess im Allgemeinen als VMEntry bezeichnet wird) aus. Wenn Informationen, die einen normalen Abschluss angeben, vom Hypervisor 6 empfangen werden, ruft der virtuelle Treiber 11 das Peripheriezugriffsanforderungs-Aufzeichnungsprogramm 19 auf. Das Peripheriezugriffsanforderungs-Aufzeichnungsprogramm 19 zeichnet Peripheriezugriffsergebnis-Informationen 52 über die erste Steuer-Software-Anwendung 10 auf und sendet eine Antwort, die einen normalen Abschluss angibt, zur ersten Steuer-Software-Anwendung 10.The digital
<Peripheriezugriffsanforderungs-Informationen 51 von der ersten Steuer-Software-Anwendung 10 ><Peripheral
Die Peripheriezugriffsanforderungs-Informationen 51 von der ersten Steuer-Software-Anwendung 10 enthalten Informationen über eine Zeit, zu der die erste Steuer-Software-Anwendung 10 das Peripheriezugriffsanforderungs-Aufzeichnungsprogramm 19 aufgerufen hat, über ein Peripheriegerät, auf das eine Zugriffsanforderung durch den Aufruf gestellt wird, und über einen Parameter, der durch den Aufruf festgelegt wird.The peripheral
<Peripheriezugriffsergebnis-Informationen 52 über eine erste Steuer-Software-Anwendung 10><Peripheral access result
Die Peripheriezugriffsergebnis-Informationen 52 über die erste Steuer-Software-Anwendung 10 enthalten Informationen über eine Zeit, zu der der Hypervisor 6 eine Antwort, die einen normalen Abschluss eines Prozesses angibt, zurück zum virtuellen Treiber 11 gesendet hat, über ein Peripheriegerät, das einem Prozess durch den Hypervisor 6 unterworfen wird, und über Prozessergebnisse.The peripheral access result
<Zweite virtuelle Maschine 8><Second
Der Betrieb von Software in der zweiten virtuellen Maschine 8 wird beschrieben. Wenn der Hypervisor 6 die zweite virtuelle Maschine 8 konfiguriert, aktiviert die zweite virtuelle Maschine 8 das zweite Gastbetriebssystem 13. Das zweite Gastbetriebssystem 13 aktiviert die zweite Steuer-Software-Anwendung 15. Die zweite Steuer-Software-Anwendung 15 verwendet den digitalen Ausgangsanschluss 2011, der das gemeinsam verwendete Peripheriegerät 201 ist, und den digitalen Eingangsanschluss 2031, der das zweite Peripheriegerät 203 ist.The operation of software in the second
<Zugriff von zweiten virtuellen Maschinen 8 auf das zweite Peripheriegerät 203><Access from second
Um auf den digitalen Eingangsanschluss 2031, der das zweite Peripheriegerät 203 ist, zuzugreifen, verwendet die zweite Steuer-Software-Anwendung 15 den Treiber 14 für digitale Eingangsanschlüsse. Speziell greift dann, wenn die zweite Steuer-Software-Anwendung 15 den Treiber 14 für digitale Eingangsanschlüsse aufruft, wobei der Aufruf als eine Peripheriezugriffsanforderung vorgenommen wird, der Treiber 14 für digitale Eingangsanschlüsse auf ein Register des digitalen Eingangsanschlusses 2031 zu, liest einen Wert an einem gegebenen Ort des Registers des Mikrocomputers 900 und sendet eine Antwort, der der abgelesene Wert beigefügt ist, zurück zur zweiten Steuer-Software-Anwendung 15.To access the
<Zugriff von der zweiten virtuellen Maschine 8 zum gemeinsam verwendeten Peripheriegerät 201><Access from the second
Um auf den digitalen Ausgangsanschluss 2011 zuzugreifen, der das gemeinsam verwendete Peripheriegerät 201 ist, verwendet die zweite Steuer-Software-Anwendung 15 den virtuellen Treiber 11, den Hypervisor 6 und den Treiber 16 für digitale Ausgangsanschlüsse. Speziell ruft die erste Steuer-Software-Anwendung 10 den virtuellen Treiber 11 durch Festlegen eines Parameters von H auf, wobei der Aufruf als eine Peripheriezugriffsanforderung vorgenommen wird. Der virtuelle Treiber 11 führt einen Prozess des Änderns eines Verarbeitungskontexts der CPU 1 von der zweiten virtuellen Maschine 8 zum Hypervisor 6 (wobei dieser Prozess im Allgemeinen als VMExit bezeichnet wird) aus. Der Hypervisor 6 prüft einen Verwendungsstatus des digitalen Ausgangsanschlusses 2011. Wenn festgestellt wird, dass die erste virtuelle Maschine 7 den digitalen Ausgangsanschluss 2011 nicht verwendet, ruft der Hypervisor 6 den Treiber 16 für digitale Ausgangsanschlüsse zum Zugreifen auf den digitalen Ausgangsanschluss 2011 durch Festlegen eines Parameters von H auf. Wenn festgestellt wird, dass die erste virtuelle Maschine 7 den digitalen Ausgangsanschluss 2011 verwendet, speichert der Hypervisor 6 den Parameter H im Puffer, der im Hypervisor 6 vorgesehen ist, und geht in Bereitschaft, nimmt den Parameter H aus dem Puffer, nachdem die erste virtuelle Maschine 7 die Verwendung des digitalen Ausgangsanschlusses 2011 abgeschlossen hat, und ruft dann den Treiber 16 für digitale Ausgangsanschlüsse durch Anfügen des herausgenommenen Parameters an den Aufruf auf.To access the
Der Treiber 16 für digitale Ausgangsanschlüsse greift auf ein Register des digitalen Ausgangsanschlusses 2011 zu, gibt in einem Wert zum Setzen eines Ausgabewerts von H (hoch oder 1) in einem gegebenen Ort des Registers des Mikrocomputers 900 ein und sendet eine Antwort, die einen normalen Abschluss angibt, zurück zum Hypervisor 6. Nach Eingang der Antwort, die einen normalen Abschluss angibt, vom Treiber 16 für digitale Ausgangsanschlüsse, führt der Hypervisor 6 einen Prozess des Änderns des Verarbeitungskontexts der CPU 1 vom Hypervisor 6 zur ersten virtuellen Maschine 7 (wobei der Prozess im Allgemeinen als VMEntry bezeichnet wird) aus. Wenn Informationen, die einen normalen Abschluss angeben, vom Hypervisor 6 empfangen werden, sendet der virtuelle Treiber 11 eine Antwort, die einen normalen Abschluss angibt, zurück zur ersten Steuer-Software-Anwendung 10.The digital
<Peripheriezugriffsanforderungs-Aufzeichnungsprogramm 19><Peripheral access
Wie in
<Peripheriezugriffsaufzeichnungs-Informationen 53><Peripheral
Die Peripheriezugriffsaufzeichnungs-Informationen 53 enthalten Informationen über eine Zeit, zu der die erste Steuer-Software-Anwendung 10 das Peripheriezugriffsanforderungs-Aufzeichnungsprogramm 19 aufgerufen hat, über ein Peripheriegerät, auf das durch eine Peripheriezugriffsanforderung ein Zugriff vorgenommen wird, auf einem Parameter, der an die Peripheriezugriffsanforderung angefügt ist, auf eine Zeit, zu der der Hypervisor 6 gemäß der Peripheriezugriffsanforderung Informationen, die einen normalen Abschluss eines Prozesses angeben, zum virtuellen Treiber 11 gesendet hat, und auf Prozessergebnissen durch den Hypervisor 6.The peripheral
<Registerwerterfassungsprogramm 18><Register
Das Registerwerterfassungsprogramm 18 wird durch das Host-Betriebssystem 5 in einem gegebenen Zeitablauf (z. B. in einem Zyklus von 5 Millisekunden) wiederholt aktiviert. Jedes Mal, wenn es aktiviert wird, ruft das Registerwerterfassungsprogramm 18 den Treiber 16 für digitale Ausgangsanschlüsse auf, um einen Wert an einem gegebenen Ort des Registers des Mikrocomputers 900 zu erfassen, wobei der Wert einen Zustand des digitalen Ausgangsanschlusses 2011, der das gemeinsam verwendete Peripheriegerät 201 ist, darstellt, erzeugt Peripheriezustandsaufzeichnungs-Informationen 54 und schreibt die erzeugten Peripheriezustandsaufzeichnungs-Informationen 54 zu einem Speicherbereich, auf den das Hypervisor-Überwachungsprogramm 17 Bezug nehmen kann. Das Registerwerterfassungsprogramm 18 wird im Host-Betriebssystem 5 ausgeführt, kann jedoch im Hypervisor 6 ausgeführt werden.The register
<Peripheriezustandsaufzeichnungs-Informationen 54><Peripheral
Die Peripheriezustandsaufzeichnungs-Informationen 54 enthalten Informationen über eine Prozesszielperipherie, die einem Prozess durch das Registerwerterfassungsprogramm 18 unterworfen wird, über eine Zeit, zu der das Registerwerterfassungsprogramm 18 das Peripheriegerät (den Treiber 16 für digitale Ausgangsanschlüsse) aufgerufen hat, und über einen Registerwert, der durch den Aufruf erfasst wird.The peripheral
<Hypervisor-Überwachungsprogramm 17><
Das Hypervisor-Überwachungsprogramm 17 berechnet einen Wert, von dem auf der Grundlage der Peripheriezugriffsaufzeichnungs-Informationen 53 angenommen wird, dass er als ein Registerwert eingegeben wird, und bestimmt dann, wenn der Wert, von dem angenommen wird, dass er als der Registerwert eingegeben wird, nicht mit dem entsprechenden Wert übereinstimmt, der durch die Peripheriezustandsaufzeichnungs-Informationen 54 angegeben ist, dass eine Anomalie im Hypervisor 6 aufgetreten ist.The
In Schritt S1 erzeugt das Hypervisor-Überwachungsprogramm 17 Peripheriebestimmungszustands-Informationen 55 auf der Grundlage von allen Stücken von Informationen, die die Peripheriezugriffsaufzeichnungs-Informationen 53 bilden, und von Zustandsprüfungszeit-Informationen, die in den Peripheriezustandsaufzeichnungs-Informationen 54 enthalten sind.In step S1, the
In Schritt S2 vergleicht das Hypervisor-Überwachungsprogramm 17 die Peripheriezustandsaufzeichnungs-Informationen 54 mit den Peripheriebestimmungszustands-Informationen 55 und bestimmt, ob der Hypervisor 6 in einem normalen Zustand oder in einem anomalen Zustand ist.In step S2, the
<Peripheriebestimmungszustands-Informationen 55><Peripheral
Die Peripheriebestimmungszustands-Informationen 55 enthalten Informationen über eine Zeit, zu der das Registerwerterfassungsprogramm 18 den Treiber 16 für digitale Ausgangsanschlüsse aufgerufen hat, und über einen Peripherieregisterwert zu einer Zeit, die auf der Grundlage der Peripheriezugriffsaufzeichnungs-Informationen 53 berechnet wird.The peripheral
<Schritt S1><Step S1>
In dieser Ausführungsform ist ein Anfangswert für das Register ein nicht fester Wert.In this embodiment, an initial value for the register is a non-fixed value.
Gemäß den Peripheriezugriffsaufzeichnungs-Informationen 53 sendet die erste Steuer-Software-Anwendung 10 eine Peripheriezugriffsanforderung mit einem festgelegten Parameter H bei 10:00. Nun ist eine Zuschlagzeit in einem Zeitraum zwischen dem Senden der Peripheriezugriffsanforderung durch die erste Steuer-Software-Anwendung 10 und dem tatsächlichem Verarbeiten eines Registerwerts des Treibers 16 für digitale Ausgangsanschlüsse gemäß dem Ablauf, der in
Entsprechend sendet gemäß den Peripheriezugriffsaufzeichnungs-Informationen 53 die erste Steuer-Software-Anwendung 10 eine Peripheriezugriffsanforderung mit einem festgelegten Parameter L bei 25:00. Nun ist eine Zuschlagzeit in einem Zeitraum zwischen dem Senden der Peripheriezugriffsanforderung durch die erste Steuer-Software-Anwendung 10 und dem tatsächlichen Verarbeiten eines Registerwerts des Treibers 16 für digitale Ausgangsanschlüsse gemäß dem Ablauf, der in
Daher werden die Peripheriebestimmungszustands-Informationen 55, die in
<Schritt S2><Step S2>
In Schritt S2 vergleicht das Hypervisor-Überwachungsprogramm 17 die Peripheriebestimmungszustands-Informationen 55 mit den Peripheriezustandsaufzeichnungs-Informationen 54 und bestimmt, dass eine Anomalie im Hypervisor 6 aufgetreten ist, wenn die ein Peripherieregisterwert zu jeder berechneten Zeit in den Peripheriebestimmungszustands-Informationen 55 von dem entsprechenden Registerwert, der in Peripheriezustandsaufzeichnungs-Informationen 54 aufgezeichnet ist, verschieden ist. Speziell soll, wie in
Gemäß dieser Ausführungsform wird selbst im Falle des Hypervisors 6, dessen interne Logik nicht offen zur Öffentlichkeit gestaltet ist, unter Verwendung einer Aufzeichnung von Änderungen der Registerwerte des Mikrocomputers 900, der durch den Hypervisor 6 betrieben wird, von außerhalb des Hypervisors 6 überwacht, ob der Hypervisor 6 Prozesse, die durch die Steuer-Software-Anwendungen 10 und 15 in den virtuellen Maschinen 7 und 8 angefordert wurden, korrekt ausführt. Durch diesen Prozess kann eine Anomalie des Hypervisors 6 auf der Grundlage einer Eingabe in und einer Ausgabe aus dem Hypervisor 6 detektiert werden, ohne auf einen internen Zustand des Hypervisors 6 zuzugreifen. Selbst in einem Fall, in dem der Hypervisor 6 eine Antwort, die einen Abschluss eines normalen Prozesses angibt, zurück zu den virtuellen Maschinen 7 und 8 sendet, kann, wenn der Prozess tatsächlich nicht normal ausgeführt wird, diese Tatsache als eine Anomalie des Hypervisors 6 detektiert werden.According to this embodiment, even in the case of the
Zusätzlich ist es, weil eine Anomalie des Hypervisors 6 auf der Grundlage der Inkonsistenz zwischen einem tatsächlichen Wert des Registers und einem voreingestellten Wert bestimmt wird, ein zusätzlicher Prozess wie z. B. ein Prüfmuster unnötig, was eine negative Wirkung auf einen Hauptprozess verringert.In addition, because an abnormality of the
Zweite AusführungsformSecond embodiment
Eine elektronische Steuereinheit und ein Anomaliedetektionsverfahren gemäß einer zweiten Ausführungsform der vorliegenden Erfindung werden beschrieben. Die zweite Ausführungsform ist von der ersten Ausführungsform dahingehend verschieden, dass ein Überwachungsergebnisspeicherprogramm 20 zu einer Software-Konfiguration hinzugefügt wird. Dieselben Bestandteile wie die der ersten Ausführungsform werden durch dieselben Bezugszeichen bezeichnet und werden in der weiteren Beschreibung ausgelassen.An electronic control unit and an abnormality detection method according to a second embodiment of the present invention will be described. The second embodiment is different from the first embodiment in that a monitoring
<Software-Konfiguration><Software configuration>
Das Host-Betriebssystem 5 ist im Mikrocomputer 900 installiert. Das Host-Betriebssystem 5 aktiviert einen Hypervisor 6, ein Hypervisor-Überwachungsprogramm 17 und ein Registerwerterfassungsprogramm 18. Das Host-Betriebssystem 5 prüft wiederholt einen Wert des Anomaliedetektionsmerkers 56 in einem gegebenen Zeitablauf (z. B. in einem Zyklus von 5 Millisekunden) und schreibt dann, wenn bestätigt wird, dass der Wert des Anomaliedetektionsmerkers 56 Wahr ist, den Wert des Anomaliedetektionsmerkers 56 zu Falsch um und startet dann das Überwachungsergebnisspeicherprogramm 20.The
<Anomaliedetektionsmerker 56><Anomaly detection flag 56>
Der Anomaliedetektionsmerker 56 ist eine Variable, die einen von zwei Werten annimmt: Wahr und Falsch.The anomaly detection flag 56 is a variable that takes one of two values: true and false.
<Schritt S3><Step S3>
In Schritt S3 verursacht das Hypervisor-Überwachungsprogramm 17, dass sich der Prozessablauf abhängig davon verzweigt, ob ein Bestimmungsergebnis in Schritt S2 ein normaler Zustand oder ein anomaler Zustand ist. Mit anderen Worten beendet das Hypervisor-Überwachungsprogramm 17 den Prozessablauf, ohne etwas zu unternehmen, wenn das Bestimmungsergebnis in Schritt S2 ein normaler Zustand ist, schreitet jedoch fort zu Schritt S4, wenn das Bestimmungsergebnis in Schritt S2 ein anomaler Zustand ist.In step S3, the
<Schritt S4><Step S4>
In Schritt S4 schaltet das Hypervisor-Überwachungsprogramm 17 einen Wert des Anomaliedetektionsmerkers 56 zu Wahr und beendet den Prozessablauf.In step S4, the
<Überwachungsergebnisspeicherprogramm 20><Monitoring
Das Überwachungsergebnisspeicherprogramm 20 speichert die Peripheriezugriffsaufzeichnungs-Informationen 53, die Peripheriezustandsaufzeichnungs-Informationen 54 und die Peripheriebestimmungszustands-Informationen 55 in einem nichtflüchtigen Speicherbereich im Speicher 3 des Mikrocomputers 900.The monitoring
Gemäß dieser Ausführungsform können unter Bezugnahme auf den nichtflüchtigen Speicherbereich die Peripheriezugriffsaufzeichnungs-Informationen 53, die Peripheriezustandsaufzeichnungs-Informationen 54 und die Peripheriebestimmungszustands-Informationen 55 als Informationen zum Beheben von Fehlern verwendet werden, die den Grund dafür, dass eine Anomalie im Hypervisor 6 detektiert wird, und einem Operationsmuster, das eine Anomalie des Hypervisors 6 verursacht, identifizieren.According to this embodiment, with reference to the non-volatile memory area, the peripheral access record information mations 53, the peripheral
Dritte AusführungsformThird embodiment
Eine elektronische Steuereinheit und ein Anomaliedetektionsverfahren gemäß einer dritten Ausführungsform der vorliegenden Erfindung werden beschrieben. Die dritte Ausführungsform ist von der ersten Ausführungsform dahingehend verschieden, dass ein verschiedener virtueller Treiber verwendet wird, um die Peripheriezugriffsaufzeichnungs-Informationen 53 zu extrahieren. Dieselben Bestandteile wie die der ersten Ausführungsform werden durch dieselben Bezugszeichen bezeichnet und werden in der weiteren Beschreibung ausgelassen.An electronic control unit and an abnormality detection method according to a third embodiment of the present invention will be described. The third embodiment is different from the first embodiment in that a different virtual driver is used to extract the peripheral
<Konfiguration><Configuration>
<Peripheriegerät 2><
In dieser Ausführungsform enthält das gemeinsam verwendete Peripheriegerät 201 den digitalen Ausgangsanschluss 2011 und eine CAN-Steuereinheit 2012, enthält das erste Peripheriegerät 202 den analogen Ausgangsanschluss 2021 und enthält das zweite Peripheriegerät 203 den digitalen Eingangsanschluss 2031.In this embodiment, the shared
<Software-Konfiguration><Software configuration>
Die erste virtuelle Maschine 7 enthält das erste Gastbetriebssystem 9, die erste Steuer-Software-Anwendung 10, den virtuellen Treiber 11, das Peripheriezugriffsanforderungs-Aufzeichnungsprogramm 19, den Treiber 12 für analoge Ausgangsanschlüsse und einen virtuellen CAN-Treiber 21. Die zweite virtuelle Maschine 8 enthält das zweite Gastbetriebssystem 13, die zweite Steuer-Software-Anwendung 15, den virtuellen Treiber 11, den Treiber 14 für digitale Eingangsanschlüsse und einen virtuellen CAN-Treiber 21.The first
<Erste virtuelle Maschine 7><First
Der Betrieb einer Software in der ersten virtuellen Maschine 7 wird beschrieben. Wenn der Hypervisor 6 die erste virtuelle Maschine 7 konfiguriert, aktiviert die erste virtuelle Maschine 7 das erste Gastbetriebssystem 9. Das erste Gastbetriebssystem 9 aktiviert die erste Steuer-Software-Anwendung 10. Die erste Steuer-Software-Anwendung 10 verwendet den digitalen Ausgangsanschluss 2011 und die CAN-Steuereinheit 2012, die das gemeinsam verwendete Peripheriegerät 201 bilden, und den analogen Ausgangsanschluss 2021, der das erste Peripheriegerät 202 ist.The operation of software in the first
<Zugriff von der ersten virtuellen Maschine 7 auf die CAN-Steuereinheit 2012><Access from the first
Um auf die CAN-Steuereinheit 2012 zuzugreifen, die das gemeinsam verwendete Peripheriegerät 201 ist, verwendet die erste Steuer-Software-Anwendung 10 den virtuellen CAN-Treiber 21, den Hypervisor 6 und einen CAN-Treiber 22. Speziell ruft die erste Steuer-Software-Anwendung 10 den virtuellen CAN-Treiber 21 durch Festlegen einer Kennung, die in Übereinstimmung mit einem CAN-Nachrichtenprotokoll zugewiesen wird, und Daten, die zu einem CAN-Rahmen gesendet werden sollen, als Parameter auf, wobei der Aufruf als eine Peripheriezugriffsanforderung vorgenommen wird. Der virtuelle CAN-Treiber 21 führt einen Prozess des Änderns eines Verarbeitungskontexts der CPU 1 von der ersten virtuellen Maschine 7 zum Hypervisor 6 (wobei der Prozess im Allgemeinen als VMExit bezeichnet wird) aus. Der Hypervisor 6 prüft einen Verwendungsstatus der CAN-Steuereinheit 2012. Wenn festgestellt wird, dass die zweite virtuelle Maschine 8 die CAN-Steuereinheit 2012 nicht verwendet, ruft der Hypervisor 6 den CAN-Treiber 22 zum Zugreifen auf die CAN-Steuereinheit 2012 durch Festlegen der Kennung und der Daten als die Parameter auf. Wenn festgestellt wird, dass die zweite virtuelle Maschine 8 die CAN-Steuereinheit 2012 verwendet, speichert der Hypervisor 6 die Kennung und die Daten im Puffer, der im Hypervisor 6 vorgesehen ist, und geht in Bereitschaft, nimmt die Kennung und die Daten aus dem Puffer, nachdem die zweite virtuelle Maschine 8 die Verwendung der CAN-Steuereinheit 2012 abgeschlossen hat, und ruft dann den CAN-Treiber 22 durch Anfügen des herausgenommenen Parameters an den Aufruf auf.To access the
Der CAN-Treiber 22 greift auf ein Register der CAN-Steuereinheit 2012 zu, speichert die Kennung und die Daten in einem CAN-Rahmen und sendet den CAN-Rahmen über einen CAN-Kommunikationsbus und sendet dann eine Antwort, die einen normalen Abschluss angibt, zurück zum Hypervisor 6. Nach Eingang der Antwort, die einen normalen Abschluss angibt, vom CAN-Treiber 22 führt der Hypervisor 6 einen Prozess des Änderns des Verarbeitungskontexts der CPU 1 vom Hypervisor 6 zur ersten virtuellen Maschine 7 aus (wobei der Prozess im Allgemeinen als VMEntry bezeichnet wird). Wenn Informationen, die einen normalen Abschluss angeben, vom Hypervisor 6 empfangen werden, sendet der virtuelle CAN-Treiber 21 eine Antwort, die einen normalen Abschluss angibt, zurück zur ersten Steuer-Software-Anwendung 10.The
<CAN-Hauptbuch 57><CAN
Das CAN-Hauptbuch 57, das im CAN-Treiber 22 gehalten wird, enthält Informationen über eine Nachrichtenkennung zum Identifizieren jedes CAN-Rahmens, über Dateninhalte, die die Inhalte von Daten darstellen, die im CAN-Rahmen enthalten sind, darüber, ob der CAN-Rahmen gesendet wird oder ob der CAN-Rahmen empfangen wird, und über eine Datenlänge im CAN-Rahmen. In dieser Ausführungsform werden CAN-Rahmen mit Kennungen im Bereich von 0 bis 2000 für herkömmliche Steuerprozesse verwendet und werden zum CAN-Kommunikationsbus gesendet oder von ihm empfangen. In einem CAN-Rahmen mit einer Nachrichtenkennung 9900 ist ein Satz einer Zustandsprüfzeit, eines Prozessziels und eines Registerwerts, der in den Peripheriezustandsaufzeichnungs-Informationen 54 angegeben ist, als 8 Byte-Daten gespeichert und werden Informationen darüber, ob der CAN-Rahmen, der gesendet wird, oder der CAN-Rahmen, der empfangen wird, als „Übertragung zur Überwachungseinheit“ eingegeben wird.The
<CAN-Treiber 22><
Der CAN-Treiber 22 betreibt ein Register der CAN-Steuereinheit 2012 gemäß Informationen, die in das CAN-Hauptbuch 57 eingegeben wurden. Speziell empfängt der CAN-Treiber 22 durch Betreiben des Registers der CAN-Steuereinheit 2012 8 Byte-Daten eines CAN-Rahmens mit einer Nachrichtenkennung 0 vom CAN-Kommunikationsbus als Fahrzeuggeschwindigkeit, sendet durch Betreiben des Registers der CAN-Steuereinheit 2012 8 Byte-Daten eines CAN-Rahmens mit einer Nachrichtenkennung 1 zum CAN-Kommunikationsbus als Kraftmaschinendrehzahl und sendet durch Betreiben des Registers der CAN-Steuereinheit 2012 8 Byte-Daten eines CAN-Rahmens mit einer Nachrichtenkennung 2 zum CAN-Kommunikationsbus als Drosselklappenöffnungsgrad.The
Hinsichtlich Daten eines CAN-Rahmens mit einer Nachrichtenkennung 9900, dessen Informationen darüber, ob gesendet oder empfangen werden als „Übertragung zur Überwachungseinheit“ in das CAN-Hauptbuch 57 eingegeben ist, betreibt der CAN-Treiber 22 nicht das Register der CAN-Steuereinheit 2012, sondern schreibt die Daten zu einem Speicherbereich, auf den das Hypervisor-Überwachungsprogramm 17 sich beziehen kann. Da er außerhalb der ersten virtuellen Maschine 7 und des Hypervisors 6 vorhanden ist, empfängt der CAN-Treiber 22 nicht den Bezug einer Begrenzung auf einen Bezugsraum in dem Speicherbereich, der durch den Hypervisor 6 angeordnet ist. Zusätzlich ermöglicht ein Verwenden eines Peripheriegeräts (eines digitalen Ausgangsanschlusses 2011), das zum Überwachen des Hypervisors 6 verwendet wird, und eines weiteren Peripheriegeräts (der CAN-Steuereinheit 2012) dem Hypervisor 6, die Peripheriezugriffsaufzeichnungs-Informationen 53 in dem Speicherbereich zu speichern, auf den das Hypervisor-Überwachungsprogramm 17 Bezug nehmen kann, wenn eine Anomalie während des Betriebs des digitalen Ausgangsanschlusses 2011 auftritt.With regard to data of a CAN frame with a
Gemäß dieser Ausführungsform können selbst in einem Fall, in dem ein Zugriff von innerhalb der virtuellen Maschine, die durch den Hypervisor 6 konfiguriert ist, zur Außenseite der virtuellen Maschine verboten ist und folglich das Peripheriezugriffsanforderungs-Aufzeichnungsprogramm 19 die Peripheriezugriffsaufzeichnungs-Informationen 53 nicht zu dem Speicherbereich, auf den das Hypervisor-Überwachungsprogramm 17 sich beziehen kann, schreiben kann, die Peripheriezugriffsaufzeichnungs-Informationen 53 aus der ersten virtuellen Maschine 7 genommen und zu dem Speicherbereich, auf den das Hypervisor-Überwachungsprogramm 17 sich beziehen kann, geschrieben werden.According to this embodiment, even in a case where access from inside the virtual machine configured by the
Vierte AusführungsformFourth embodiment
Eine elektronische Steuereinheit und ein Anomaliedetektionsverfahren gemäß einer vierten Ausführungsform der vorliegenden Erfindung wird beschrieben. Die vierte Ausführungsform ist von der zweiten Ausführungsform dahingehend verschieden, dass die elektronische Steuereinheit abgeschaltet wird, wenn ein Fehler des Hypervisors 6 bei einer Frequenz detektiert wird, die gleich oder größer als ein gegebener Wert ist. Dieselben Bestandteile wie die der zweiten Ausführungsform werden durch dieselben Bezugszeichen bezeichnet und werden in der weiteren Beschreibung ausgelassen.An electronic control unit and an abnormality detection method according to a fourth embodiment of the present invention will be described. The fourth embodiment is different from the second embodiment in that the electronic control unit is turned off when a failure of the
<Überwachungsergebnisspeicherprogramm 20><Monitoring
Das Überwachungsergebnisspeicherprogramm 20 speichert die Peripheriezugriffsaufzeichnungs-Informationen 53, die Peripheriezustandsaufzeichnungs-Informationen 54 und die Peripheriebestimmungszustands-Informationen 55 in einem nichtflüchtigen Speicherbereich im Speicher 3 des Mikrocomputers 900, berechnet die Auftrittshäufigkeit von Anomalien im Hypervisor 6 und schaltet dann, wenn die berechnete Auftrittshäufigkeit von Anomalien gleich oder größer als ein gegebener Schwellenwert ist, die elektronische Steuereinheit 0 ab.The monitoring
<Schritt S5><Step S5>
In Schritt S5 speichert das Überwachungsergebnisspeicherprogramm 20 die Peripheriezugriffsaufzeichnungs-Informationen 53, die Peripheriezustandsaufzeichnungs-Informationen 54 und die Peripheriebestimmungszustands-Informationen 55 im nichtflüchtigen Speicherbereich im Speicher 3 des Mikrocomputers 900.In step S5, the monitoring
<Schritt S6><Step S6>
in Schritt S6 berechnet das Überwachungsergebnisspeicherprogramm 20 eine Zeit, zu der eine Anomalie im Hypervisor 6 aufgetreten ist. Weil es schwierig ist, die Zeit, zu der die Anomalie tatsächlich im Hypervisor 6 aufgetreten ist, von außerhalb des Hypervisors 6 festzulegen, wird eine Zeit, die in den Peripheriezustandsaufzeichnungs-Informationen 54 und den Peripheriebestimmungszustands-Informationen 55 angegeben ist, wobei die Zeit durch das Hypervisor-Überwachungsprogramm 17 als Grundlage zum Bestimmen des Auftretens einer Anomalie im Hypervisor 6 genommen wird, als die Zeit bestimmt, zu der die Anomalie im Hypervisor 6 aufgetreten ist. Speziell wird, wie in den Peripheriezustandsaufzeichnungs-Informationen 54 und den Peripheriebestimmungszustands-Informationen 55, die in
<Hypervisoranomalieauftrittszeit-Informationen 58><Hypervisor anomaly
Die Hypervisoranomalieauftrittszeit-Informationen 58 speichert Informationen über eine Zeit, die in Schritt S6 des Überwachungsergebnisspeicherprogramms 20 der elektronischen Steuereinheit der vierten Ausführungsform berechnet wird.The hypervisor abnormality
<Hypervisoranomalieauftrittsfrequenz-Bedingung 59><Hypervisor anomaly
Ein Hypervisoranomalieauftrittsfrequenz-Bedingung 59 ist ein Bedingung zum Abschalten der elektronischen Steuereinheit 0. In dieser Ausführungsform legt diese Bedingung eine Anomalie des Hypervisors 6, die in einer Zeitspanne 10:00 zweimal detektiert wird, als eine Bedingung zur Abschaltung fest.A hypervisor abnormality
<Schritt S7><Step S7>
In Schritt S7 berechnet das Überwachungsergebnisspeicherprogramm 20 die Auftrittshäufigkeit von Anomalien im Hypervisor 6. Da die Hypervisoranomalieauftrittsfrequenz-Bedingung 59 die Auftrittshäufigkeit von Anomalien im Hypervisor 6 in der Zeitspanne 10:00 als eine Abschaltungsbedingung setzt, werden Aufzeichnungen einer Hypervisoranomalieauftrittszeit in der Zeitspanne 10:00, die sich von der jüngsten Anomalieauftrittszeit rückwärts erstreckt, gezählt. Dieser Prozess wird unter Bezugnahme auf
<Schritt S8><Step S8>
In Schritt S8 schreitet dann, wenn die Auftrittshäufigkeit von Anomalien, die in Schritt S7 bestimmt wird, gleich oder größer als eine Schwellenwertfrequenz ist, die durch den Hypervisoranomalieauftrittsfrequenz-Bedingung 59 definiert ist, das Überwachungsergebnisspeicherprogramm 20 fort zu Schritt S9. Andernfalls lässt das Überwachungsergebnisspeicherprogramm 20 einen Schritt S9 aus und beendet den Prozessablauf.In step S8, if the anomaly occurrence frequency determined in step S7 is equal to or greater than a threshold frequency defined by the hypervisor anomaly
<Schritt S9><Step S9>
In Schritt S9 gibt das Überwachungsergebnisspeicherprogramm 20 ein Rücksetzsignal aus dem Selbstrücksetzausgabeanschluss des Mikrocomputers 900 aus. Als Ergebnis stoppt die Stromversorgungsschaltung 901 ein Zuführen von Leistung zum Mikrocomputer 900, der die elektronische Steuereinheit 0 abschaltet. Die elektronische Steuereinheit 0 ist teilweise abgeschaltet oder vollständig abgeschaltet.In step S9, the monitoring
Gemäß dieser Ausführungsform wird, wenn die Detektionshäufigkeit von Anomalien im Hypervisor 6 niedrig ist, die elektronische Steuereinheit in Betrieb gehalten, um Einflüsse auf die elektronische Steuereinheit und ein Fahrzeug, in dem das elektronische Steuereinheit aufgenommen ist, zu verhindern. Andererseits wird, wenn die Detektionshäufigkeit von Anomalien im Hypervisor 6 hoch ist, die elektronische Steuereinheit abgeschaltet, um Einflüsse, die die Anomalien, die im Hypervisor 6 aufgetreten sind, auf die Sicherheit der elektronischen Steuereinheit und des Fahrzeugs, in das die elektronische Steuereinheit aufgenommen ist, ausüben, zu verringern. Daher kann sowohl die Benutzerfreundlichkeit als auch die Sicherheit sichergestellt werden.According to this embodiment, when the detection frequency of abnormalities in the
Die vorliegende Erfindung ist nicht auf die oben beschriebenen Ausführungsformen beschränkt und enthält verschiedene Abwandlungen und Konfigurationen, die den Ausführungsformen, die im Umfang der beigefügten Ansprüche sind, entsprechen. Zum Beispiel wurden die oben beschriebenen Ausführungsformen genau beschrieben, um das Verständnis der vorliegenden Erfindung zu erleichtern, und die vorliegende Erfindung ist nicht notwendigerweise auf eine Ausführungsform beschränkt, die alle Bestandteile enthält, die oben beschrieben sind. Gewisse Bestandteile einer bestimmten Ausführungsform können durch Bestandteile einer weiteren Ausführungsform ersetzt werden. Ein Bestandteil einer weiteren Ausführungsform kann zu einem Bestandteil einer bestimmten Ausführungsform hinzugefügt werden. Einige Bestandteile jeder Ausführungsform können entfernt werden oder zu Bestandteilen einer weiteren Ausführungsform hinzufügen oder durch sie ersetzt werden.The present invention is not limited to the embodiments described above and includes various modifications and configurations corresponding to the embodiments included within the scope of the appended claims. For example, the embodiments described above have been described in detail to facilitate understanding of the present invention, and the present invention is not necessarily limited to an embodiment containing all of the components described above. Certain components of a particular embodiment may be replaced by components of a further embodiment. A component of another embodiment may be added to a component of a particular embodiment. Some components of each embodiment may be removed or added to or replaced with components of another embodiment.
Einige oder alle der oben beschriebenen Bestandteile, Funktionen, Verarbeitungseinheiten, Prozessmittel und dergleichen können in Form von Hardware durch ihr Konfektionieren in einer integrierten Schaltung oder in Form einer Software, indem verursacht wird, dass ein Prozessor Programme interpretiert und ausführt, die jeweilige Funktionen implementieren, vorgesehen sein.Some or all of the components, functions, processing units, process means and the like described above may be in the form of hardware by packaging them in an integrated circuit or in the form of software by causing a processor to interpret and execute programs that implement respective functions. be provided.
Informationen zu Programmen, Tabellen, Dateien und dergleichen zum Implementieren verschiedener Funktionen können in einer Speichervorrichtung wie z. B. einem Speicher, einer Festplatte und einem Festkörperlaufwerk (SSD) oder in einem Aufzeichnungsmedium wie z. B. einer IC-Karte, einer SD-Karte und einem DVD gespeichert sein.Information about programs, tables, files and the like for implementing various functions can be stored in a storage device such as. B. a memory, a hard drive and a solid state drive (SSD) or in a recording medium such as. B. an IC card, an SD card and a DVD.
Eine Gruppe von Steuerleitungen und Datenleitungen, die zur Beschreibung nötig erachtet werden, ist veranschaulicht und es sind nicht notwendigerweise alle Steuerleitungen und Datenleitungen, die für die Konfiguration benötigt werden, veranschaulicht. Man kann davon ausgehen, dass tatsächlich nahezu alle Bestandteile verbunden sind.A group of control lines and data lines deemed necessary for description are illustrated, and not necessarily all control lines and data lines needed for configuration are illustrated. One can assume that almost all components are actually connected.
ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDED IN THE DESCRIPTION
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of documents listed by the applicant was generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.
Zitierte PatentliteraturCited patent literature
- JP 202180743 [0001]JP 202180743 [0001]
- JP 2019144785 A [0003]JP 2019144785 A [0003]
- JP 2014106587 A [0003]JP 2014106587 A [0003]
Claims (8)
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021080743A JP2022174784A (en) | 2021-05-12 | 2021-05-12 | Electronic control apparatus and abnormality determination method |
JP2021-080743 | 2021-05-12 | ||
PCT/JP2022/004527 WO2022239331A1 (en) | 2021-05-12 | 2022-02-04 | Electronic controller and abnormality determination method |
Publications (1)
Publication Number | Publication Date |
---|---|
DE112022001480T5 true DE112022001480T5 (en) | 2024-01-11 |
Family
ID=84029069
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE112022001480.6T Pending DE112022001480T5 (en) | 2021-05-12 | 2022-02-04 | ELECTRONIC CONTROL UNIT AND ANOMALY DETERMINATION METHOD |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240241747A1 (en) |
JP (1) | JP2022174784A (en) |
DE (1) | DE112022001480T5 (en) |
WO (1) | WO2022239331A1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014106587A (en) | 2012-11-26 | 2014-06-09 | Hitachi Ltd | Control method for i/o device and virtual computer system |
JP2019144785A (en) | 2018-02-20 | 2019-08-29 | 富士通株式会社 | Monitoring program, monitoring apparatus and monitoring method |
JP2021080743A (en) | 2019-11-19 | 2021-05-27 | 鹿島道路株式会社 | Recycled asphalt mixture manufacturing system and method |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006268687A (en) * | 2005-03-25 | 2006-10-05 | Mitsubishi Electric Corp | Computer virus monitoring program and computer terminal employing the same |
JP2010122736A (en) * | 2008-11-17 | 2010-06-03 | Ricoh Co Ltd | Serial communication apparatus, and image forming apparatus with the same |
JP6171430B2 (en) * | 2013-03-15 | 2017-08-02 | 日本電気株式会社 | Computer apparatus, method and program |
-
2021
- 2021-05-12 JP JP2021080743A patent/JP2022174784A/en active Pending
-
2022
- 2022-02-04 DE DE112022001480.6T patent/DE112022001480T5/en active Pending
- 2022-02-04 WO PCT/JP2022/004527 patent/WO2022239331A1/en active Application Filing
- 2022-02-04 US US18/559,513 patent/US20240241747A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014106587A (en) | 2012-11-26 | 2014-06-09 | Hitachi Ltd | Control method for i/o device and virtual computer system |
JP2019144785A (en) | 2018-02-20 | 2019-08-29 | 富士通株式会社 | Monitoring program, monitoring apparatus and monitoring method |
JP2021080743A (en) | 2019-11-19 | 2021-05-27 | 鹿島道路株式会社 | Recycled asphalt mixture manufacturing system and method |
Also Published As
Publication number | Publication date |
---|---|
JP2022174784A (en) | 2022-11-25 |
WO2022239331A1 (en) | 2022-11-17 |
US20240241747A1 (en) | 2024-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE68924119T2 (en) | Method and device for restarting after a fault in a digital computer system. | |
DE2210325C3 (en) | Data processing device | |
EP2466466B1 (en) | Method for detecting errors when executing a real-time operating system | |
DE2611907A1 (en) | IT SYSTEM WITH A PRIORITY INTERRUPTION ARRANGEMENT | |
DE112007001714T5 (en) | Virtualize Performance Counters | |
DE10225664A1 (en) | System and method for checking polling events with polling wrappers | |
DE102014108249A1 (en) | Implement advanced error handling for a shared adapter in a virtualized system | |
DE112006002908T5 (en) | Technique for the communication and synchronization of threads | |
DE102013014172A1 (en) | PROTECTION GLOBAL REGISTER IN A MULTITHREADED PROCESSOR | |
DE68922440T2 (en) | Device and method for simultaneously submitting fault interruption and fault data to a support processor. | |
DE69815006T2 (en) | Data processing unit with troubleshooting options | |
DE68924992T2 (en) | Symmetrical control arrangement for multi-processing. | |
DE112012003420B4 (en) | Vehicle control device and vehicle control system | |
DE102009004726A1 (en) | Systems and methods for tracking instruction pointers and data access | |
DE19955776C1 (en) | Multitasking processor system | |
DE112018007428T5 (en) | DEVICE FOR INFORMATION PROCESSING, TUNING PROCEDURES AND TUNING PROGRAM | |
DE2611975A1 (en) | IT SYSTEM WITH A DEVICE FOR THE ASSIGNMENT OF PROCESSES TO A PROCESSOR ON A PRIORITY BASIS | |
DE102017123812A1 (en) | control device | |
DE102011011333A1 (en) | Read into peripheral devices and write from peripherals with time-separated, redundant processor execution | |
DE69022773T2 (en) | Data processing equipment. | |
DE10392810T5 (en) | System and method for filtering processors for integrity during early firmware for a split-partition architecture | |
DE112022001480T5 (en) | ELECTRONIC CONTROL UNIT AND ANOMALY DETERMINATION METHOD | |
EP1870787B1 (en) | Method for monitoring a cyclic control program | |
EP3566398A1 (en) | Method and semiconductor circuit for protecting an operating system of a security system of a vehicle | |
EP1283471B1 (en) | Program controlled unit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed |