JP6972437B2 - 電子制御ユニット及びプログラム - Google Patents

電子制御ユニット及びプログラム Download PDF

Info

Publication number
JP6972437B2
JP6972437B2 JP2021528812A JP2021528812A JP6972437B2 JP 6972437 B2 JP6972437 B2 JP 6972437B2 JP 2021528812 A JP2021528812 A JP 2021528812A JP 2021528812 A JP2021528812 A JP 2021528812A JP 6972437 B2 JP6972437 B2 JP 6972437B2
Authority
JP
Japan
Prior art keywords
domain
basic
unit
management
extended
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.)
Active
Application number
JP2021528812A
Other languages
English (en)
Other versions
JPWO2020261519A1 (ja
Inventor
吉章 片山
雄也 高塚
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of JPWO2020261519A1 publication Critical patent/JPWO2020261519A1/ja
Application granted granted Critical
Publication of JP6972437B2 publication Critical patent/JP6972437B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/0225Failure correction strategy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/568Computer malware detection or handling, e.g. anti-virus arrangements eliminating virus, restoring damaged files
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/023Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/0205Diagnosing or detecting failures; Failure detection models
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/023Avoiding failures by using redundant parts
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/029Adapting to failures or work around with other constraints, e.g. circumvention by avoiding use of failed parts
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0259Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
    • G05B23/0283Predictive maintenance, e.g. involving the monitoring of a system and, based on the monitoring results, taking decisions on the maintenance schedule of the monitored system; Estimating remaining useful life [RUL]
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/029Adapting to failures or work around with other constraints, e.g. circumvention by avoiding use of failed parts
    • B60W2050/0292Fail-safe or redundant systems, e.g. limp-home or backup systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0428Safety, monitoring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2223/00Indexing scheme associated with group G05B23/00
    • G05B2223/06Remote monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Transportation (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Virology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Small-Scale Networks (AREA)
  • Hardware Redundancy (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、車両に搭載される電子制御ユニットに関する。本発明は、複数の電子制御ユニット(ECU:Electric Control Unit)がネットワーク接続される車載システムの信頼性に関する。以下では、電子制御ユニットはECUと表記する。
従来の車載システムは、ECUの故障に備えて、ECUの故障確率に基づき、ECUの機能を別のECUに移動する。これによって、仮にECUが故障した場合であっても、すでに移動されている機能を別のECUが実行しているので、機能が停止する不具合が防止できる。(例えば、特許文献1)。
特開2018−99972号公報
しかし、従来の車載システムは、ECUの故障確率に基づき、ECUの機能を別のECUに移動する。
このため、故障確率が低く故障が発生しないと判定されたECUに故障が発生した場合には、故障が発生したECUの機能を別のECUに移動できない恐れがある。また、機能の移動が可能であっても、故障が発生したECUと別のECUとの間で、機能を移動するための通信処理の負担が大きい。
この発明は、故障のような異常が実際に発生した際に、車載システムに必須の機能を円滑に継続させる車載システムの提供を目的とする。
この発明の電子制御ユニットは、
車両に搭載される電子制御ユニットにおいて、
第1のオペレーティングシステムの元で動作し、車外ネットワークと接続し、異常の発生時に停止可能である拡張ドメイン部と、
第2のオペレーティングシステムの元で動作し、前記拡張ドメイン部に接続し、異常の発生時に動作の継続を要する基本ドメイン部と、
第3のオペレーティングシステムの元で動作し、前記拡張ドメイン部の前記異常を検出した場合に、前記拡張ドメイン部の動作を停止する管理ドメイン部と、
前記第1のオペレーティングシステムと、前記第2のオペレーティングシステムと、前記第3のオペレーティングシステムとを動作させるハイパーバイザ部と、
を備え、
前記管理ドメイン部は、
別の管理ドメイン部と前記基本ドメイン部に代替する別の基本ドメイン部とを有する別の電子制御ユニットにおける前記別の管理ドメイン部に、前記ハイパーバイザ部を介する独立の仮想ネットワークで接続しており、前記基本ドメイン部の異常を検出した場合に、前記基本ドメイン部の動作を停止し、前記別の電子制御ユニットの有する前記別の管理ドメイン部に、前記別の基本ドメイン部の動作を開始させる。
この発明の電子制御ユニットは管理ドメイン部を備えている。よって、この発明の電子制御ユニットによれば、故障のような異常が実際に発生した際に、車載システムにとって必須の機能を、円滑に継続させることができる。
実施の形態1の図で、車載システム100のハードウェア構成図。 実施の形態1の図で、車載システム100のソフトウェア構成図。 実施の形態1の図で、車載システム100のソフトウェア構成図。 実施の形態1の図で、車載システム100の動作を示すフローチャート。 実施の形態1の図で、車載システム100の動作を示すフローチャート。 実施の形態1の図で、感染ドメインリスト16Aを示す図。 実施の形態1の図で、ドメイン構成情報140を示す図。 実施の形態2の図で、ECU(A)1のソフトウェア構成図。 実施の形態2の図で、車載システム100の動作を示すフローチャート。 実施の形態2の図で、車載システム100の動作を示すフローチャート。
以下、本発明の実施の形態について、図を用いて説明する。なお、各図中、同一または相当する部分には、同一符号を付している。実施の形態の説明において、同一または相当する部分については、説明を適宜省略または簡略化する。なお以下の説明では、アプリケーションはアプリと表記する。
(1)以下の説明では、オペレーティングシステムはOSと表記する。
(2)以下の説明では、I/O(Input/Output)装置はI/Oと表記する。
(3)以下の説明では、車載システム100は、異常として、サイバー攻撃による感染、または、故障に対処する。以下の説明で異常とは、ECUにおけるサイバー攻撃による感染、または、ECUにおける故障を意味するが、他の異常でもよい。
実施の形態1.
***構成の説明***
図1から図8を参照して実施の形態1の車載システム100を説明する。
図1は、車載システム100のハードウェア構成図である。車載システム100は複数のECUを備えている。複数のECUは車両に搭載される。ECU同士は車内ネットワーク81を介して接続される。図1では車載システム100が4台のECUを備える構成を示す。車載システム100の備える複数のECUは、2台、3台あるいは5台以上でも良い。以下では、4台のECUを、ECU(A)1、ECU(B)1、ECU(C)1及びECU(D)1のように表記して区別する。また、各ECUは、車外ネットワーク88を介して外部のシステムと接続されている。
ECU(A)1、ECU(B)1、ECU(C)1及びECU(D)1は、同じハードウェア構成である。よって、ECU(A)1の説明は、ECU(B)1、ECU(C)1及びECU(D)1にも当てはまる。図1ではECU(A)1のハードウェア構成を示している。ECU(A)1を参照してECUのハードウェア構成を説明する。ECU(A)1は、少なくとも1つのCPU(Central Processing Unit)2A、ROM(Read Only Memory)3A、RAM(Random Access Memory)4A,周辺コントローラ5A、I/O(Input/Output)装置6A、7A、8A、9Aを備えている。CPU2A、ROM3A、RAM4A、周辺コントローラ5A、I/O6A、I/O7A、I/O8A及びI/O9Aは、バスで接続されている。
ROM3Aは、例えば、Electrically Erasable Programmable ROM(EEPROM)またはフラッシュメモリのような不揮発性メモリである。ROM3Aは、ECU1の提供する機能を実現するアプリケーションプログラム、OSのプログラム及びデータを記録している。
RAM4Aは、揮発性メモリであり、CPU2が処理を行うためのプログラム及びデータを記憶する。
周辺コントローラ5Aは、割り込みコントローラ、タイマコントローラあるいはDMA(Direct Memory Access)コントローラのような装置である。
I/O6A、7A,8A、9Aは、General Purpose I/O(GPIO)、A/D変換回路、D/A変換回路、モータ駆動回路、通信インタフェース回路のような回路である。I/O6Aは、センサ61に接続する。I/O7Aは、アクチュエータ71に接続する。I/O8Aは、ECU(B)1のI/O8B、ECU(C)1のI/O8C、ECU(D)1のI/O8Dに接続する。I/O9Aは、車外ネットワーク88に接続する。
CPU2Aは、ROM3A及びRAM4Aに記憶されたプログラムを読み出し、センサ61から読み出した値をもとに演算処理を実施し、アクチュエータ71の制御のような処理を繰り返す。センサ61は、例えば、水温センサ、スロットル開度センサである。アクチュエータ71は、例えば、インジェクタ及びイグナイタである。
車内ネットワーク81は、CAN(Controller Area Network),LIN(Local Interconnect Network)、FlexRayのようなネットワークである。
車外ネットワーク88は、例えば、Wi−Fi、Long Term Evolution(LTE)または5Gのような移動通信を介して、インターネットに接続する。
図2及び図3は、車載システム100のソフトウェア構成を示す。図2及び図3ではE、Fで、ECU(A)1とECU(B)1を便宜的に分けた。図2及び図3では、管理ドメイン部(A)10Aが管理ドメイン部(B)10Bに、車内ネットワーク81を介して接続し、基本ドメイン部(A)20Aが基本ドメイン部(B)20Bに、車内ネットワーク81を介して接続することを示している。後述のように、車内ネットワーク81は仮想ネットワーク91である。
図2に示すように、管理ドメイン部(A)10A、基本ドメイン部(A)20A、拡張ドメイン部(A)30A及びハイパーバイザ部40Aは、CPU2Aによって実現される。管理ドメイン部(A)10A、基本ドメイン部(A)20A、拡張ドメイン部(A)30A及びハイパーバイザ部40Aは、プログラムである。なお、CPU2Aは単一のCPUによって実現されてもよいし、複数のCPUによって実現されてもよい。単一のCPU及び複数のCPUは、プロセッシングサーキットリとも呼ばれる。管理ドメイン部(A)10A、基本ドメイン部(A)20A、拡張ドメイン部(A)30A及びハイパーバイザ部40Aの機能は、プロセッシングサーキットリによって実現される。管理ドメイン部(A)10A、基本ドメイン部(A)20A、拡張ドメイン部(A)30A及びハイパーバイザ部40Aを実現する各プログラムは、ROM3A及びRAM4Aに格納される。
管理ドメイン部(A)10A、基本ドメイン部(A)20A、拡張ドメイン部(A)30A及びハイパーバイザ部40Aを実現する各プログラムは、コンピュータ読み取り可能な記録媒体に格納されて提供されてもよいし、プログラムプロダクトとして提供されてもよい。
プログラムにおいて、管理ドメイン部(A)10Aは、管理機能処理に相当し、基本ドメイン部(A)20Aは、基本機能処理に相当し、拡張ドメイン部(A)30Aは、拡張機能処理に相当し、ハイパーバイザ部40Aは、ハイパーバイザ処理に相当する。
ハイパーバイザ部40Aは、第1のオペレーティングシステムであるOS33Aと、第2のオペレーティングシステムであるOS23Aと、第3のオペレーティングシステムであるOS15Aとを動作させる。ハイパーバイザ部40Aは、ハイパーバイザを実行する。ハイパーバイザは、仮想マシンモニタとも呼ばれ、ECU(A)1上で複数のOSを動作させるためのソフトウェアである。OS15A,23A、33Aは、ハイパーバイザ部40A上で動作するOSであり、例えばLinux(登録商標)である。
管理ドメイン部(A)10Aは、異常を、ハイパーバイザ部40Aとの通信によって検出する。具体的には以下のようである。攻撃検出部11Aは、サイバー攻撃が行われているか否か、もしくは行われたか否か(サイバー攻撃の有無)を検出する。感染範囲特定部12Aは、攻撃検出部11Aが検出したサイバー攻撃によって感染したソフトウェアの範囲を特定する。システム構成部13Aは、管理ドメイン部(A)10A、基本ドメイン部(A)20A、拡張ドメイン部(A)30A及び仮想ネットワーク91,95を管理し、特定した感染範囲に従って、システムを再構成する。構成記憶部14Aは、後述する代替基本ドメイン部のECU内の有無を保持するドメイン構成情報140を記憶する。アプリ(A1)21A、アプリ(A2)22Aは、OS23A上で動作し、アプリ(A3)31A,アプリ(A4)32Aは、OS33A上で動作し、ECU(A)1のための機能を実現する。
管理ドメイン部(A)10A、基本ドメイン部(A)20A及び拡張ドメイン部(A)30Aは、ハイパーバイザ部40Aの実行するハイパーバイザが管理する仮想マシンである。
管理ドメイン部(A)10Aは、第3のオペレーティングシステムであるOS15Aの元で動作し、拡張ドメイン部(A)30Aの異常を検出した場合に、拡張ドメイン部(A)の動作を停止する。管理ドメイン部(A)10Aは、攻撃検出部11A、感染範囲特定部12A、システム構成部13A、構成記憶部14A及び攻撃検出部11A、感染範囲特定部12A、システム構成部13A、構成記憶部14Aを動作させるOS15Aを備える。
基本ドメイン部(A)20Aは、第2のオペレーティングシステムであるOS23Aの元で動作し、拡張ドメイン部(A)30Aに接続し、異常の発生時に動作の継続を要する。基本ドメイン部(A)20Aは、ECU(A)1の機能を実現するアプリのうち、サイバー攻撃を受けても動作し続ける必要のあるアプリ(A1)及びアプリ(A2)と、アプリ(A1)及びアプリ(A2)を動作させるOS23Aを備える。
拡張ドメイン部(A)30Aは、第1のオペレーティングシステムであるOS33Aの元で動作し、車外ネットワーク88と接続し、異常の発生時に停止可能である。拡張ドメイン部(A)30Aは、ECU(A)1の機能を実現するアプリのうち、基本ドメイン部(A)20Aに含まれないアプリ、言い換えるとサイバー攻撃を受けた場合に機能を停止してもよいアプリ(A3)31A及びアプリ(A4)32Aと、アプリ(A3)31A及びアプリ(A4)32Aを動作させるOS33Aを備える。
車内ネットワーク81は、VLAN(Virtual Local Area Network)のような技術を用いて仮想化する。車内ネットワーク81は、通信が必要なドメイン部とのみ、論理的なネットワークである仮想ネットワーク91として接続する。
なお、個々のECU上に存在する管理ドメイン部同士は、専用の仮想ネットワーク95で接続する。
例えば、管理ドメイン部(A)10Aは、別の管理ドメイン部(B)10Bと基本ドメイン部(A)20Aに代替する別の基本ドメイン部(A)とを有する別のECU(B)1における別の管理ドメイン部(B)10Bに、ハイパーバイザ部40Aを介する独立の仮想ネットワーク95で接続している。
車外ネットワーク88は、拡張ドメイン部(A)30Aのみと接続する。また、ECU1上に存在する基本ドメイン部(A)20Aは、ECU(A)1以外のECU上に同じ機能を持つドメイン部(A)を代替用に持つ。これを代替基本ドメイン部と呼ぶ。
代替基本ドメイン部は、通常動作においては、同じ機能を持つ基本ドメイン部の実行が停止された時に代替できるような状態で待機する。図3には、ECU(A)1の基本ドメイン部(A)20Aと同じ機能を持つ代替基本ドメイン部として、ECU(B)1が代替基本ドメイン部(A)50Bを持つ場合を示している。基本ドメイン部(A)20Aと同じ機能を持つ代替基本ドメイン部は、ECU(A)1以外の全ECUのうち、少なくとも1台のECUが持てばよい。
***動作の説明***
図4及び図5は、車載システム100の動作を示すフローチャートである。次に図4及び図5を参照して、車載システム100の動作を説明する。
まず、サイバー攻撃が発生した場合の動作について述べる。以下の動作の説明において、ECU(A)1の動作手順は、制御方法に相当する。また、ECU(A)1の動作を実現するプログラムは、制御プログラムに相当する。
ステップS101において、攻撃検出部11Aが、周期的なイベント、もしくは非周期的なイベントによりOS15Aから起動され、サイバー攻撃の有無を検出する。周期的なイベントは、例えば、タイマコントローラが発生する割込みである。非周期的なイベントは、例えば、車外ネットワーク88と拡張ドメイン部(A)30Aとの間、車外ネットワーク88と基本ドメイン部(A)20Aとの間、または基本ドメイン部(A)20Aと拡張ドメイン部(A)30Aとの間でのデータの送受信である。攻撃検出部11Aは、サイバー攻撃が有るかどうかを検出するために「必要なデータ」が、基本ドメイン部(A)20Aまたは拡張ドメイン部(A)30Aに存在する場合、以下の処理をおこなう。攻撃検出部11Aは、ハイパーバイザ部40Aを介した基本ドメイン部(A)20Aまたは拡張ドメイン部(A)30Aとのデータ通信により、あるいは、共有メモリを参照することにより、「必要なデータ」を参照する。ここでサイバー攻撃が有るかどうかを検出するために「必要なデータ」とは、例えば、ドメイン部同士の間の通信ログ、OS23A、OS33A、アプリ(A1)21A、アプリ(A2)22A、アプリ(A3)31Aまたはアプリ(A4)32Aの動作ログである。サイバー攻撃が有るかどうかを検出するために「必要なデータ」を使った、攻撃検出部11Aによる検出手法については、実施の形態1では言及しない。
ステップS102において、攻撃検出部11Aは、サイバー攻撃が有るかどうかを判断する。サイバー攻撃が有る場合(ステップS102でYES)、攻撃検出部11Aは、感染範囲特定部12Aに、サイバー攻撃有りの検出を通知する(ステップS103)。
ステップS104において、感染範囲特定部12Aは、基本ドメイン部(A)20A及び拡張ドメイン部(A)30Aにおける、サイバー攻撃により感染を特定する。なお、管理ドメイン部(A)10Aは、独立した専用の仮想ネットワーク95で、他のECUの管理ドメイン部とのみ接続されている。よって、車外ネットワーク88と接続された拡張ドメイン部(A)30A、あるいは拡張ドメイン部(A)30Aと接続されている基本ドメイン部(A)20Aから、サイバー攻撃で感染することはないので、管理ドメイン部(A)10Aは、感染範囲特定部12Aによる感染範囲の検出対象にはならない。
ステップS105において、感染範囲特定部12Aは、感染したドメイン部のリストである感染ドメインリスト16Aを生成する。
図6は、感染範囲特定部12Aが生成した、感染ドメインリスト16Aを示す。図6に示すように、感染ドメインリスト16Aは、ドメインIDと、ドメインIDに対応付けられた感染有無とからなる。感染有無は0と1で表される。感染有無が0の場合、対応付けられたドメインIDで示されるドメイン部は感染していないことを示す。感染有無が1の場合、対応付けられたドメインIDで示されるドメイン部は感染していることを示す。図6では、ドメインIDが3及び4で示されるドメイン部が、感染していることを示す。感染した範囲を特定するために「必要なデータ」が、基本ドメイン部(A)20Aまたは拡張ドメイン部(A)30Aに存在する場合、上記で述べた、サイバー攻撃が有るかどうかを検出するために「必要なデータ」と同様の方法で、感染範囲特定部12Aは、感染した範囲を特定するために「必要なデータ」を参照し、感染範囲を特定する。感染した範囲の特定方法については、実施の形態1では言及しない。
ステップS106において、感染範囲特定部12Aは、感染ドメインリスト16Aを、システム構成部13Aに通知する。
管理ドメイン部(A)10Aは、基本ドメイン部(A)20Aの異常を検出した場合に、基本ドメイン部(A)20Aの動作を停止(S107)する。そして、後述のステップS112において、管理ドメイン部(A)10Aは、別の管理ドメイン部(B)10Bに、別の基本ドメイン部である代替基本ドメイン部(A)50Bの動作を開始させる。具体的には以下のようである。
ステップS107において、管理ドメイン部(A)10Aのシステム構成部13Aは、感染範囲特定部12Aから通知された感染ドメインリスト16Aに記述されているドメイン部の実行を、ハイパーバイザ部40Aを介して停止する。感染ドメインリスト16Aに記述されているドメイン部は、基本ドメイン部(A)20Aあるいは拡張ドメイン部(A)30Aである。
ステップS108において、実行を停止したドメイン部の情報を車載システム100に存在するすべてのECUで共有するため、システム構成部13Aは、感染ドメインリスト16Aを、他のすべてのECUのシステム構成部に、仮想ネットワーク95を介したドメイン間通信で通知する。なお、感染ドメインリスト16Aに、基本ドメイン部(A)20Aが含まれていなければ、感染ドメインリスト16Aの通知は省いても良い。
各ECUのシステム構成部13は、構成記憶部14にドメイン構成情報140を記憶している。
図7は、ECU(B)1の有するドメイン構成情報140を示す。図7に示すように、ドメイン構成情報140は、ドメインIDと、ドメインIDに対応付けられた代替有無とからなる。代替有無は0と1で表される。代替有無が0の場合、対応付けられたドメインIDで示されるドメイン部の代替ドメイン部が存在しないことを示す。代替有無が1の場合、対応付けられたドメインIDで示されるドメイン部の代替ドメイン部が存在することを示す。図7は、ドメインIDが1及び2で示されるドメイン部の代替ドメイン部が存在することを示す。図5では、ドメイン構成情報140が、ECU(B)1の構成記憶部14Bに、格納されている状態を示す。
ステップS109において、ECU(B)1のシステム構成部13Bは、ドメイン構成情報140を参照して、通知された感染ドメインリスト16Aに、ECU(B)1の有する代替基本ドメイン部(A)50Bと対になる基本ドメイン部(A)20Aが、含まれているかどうかを判断する。
感染ドメインリスト16Aに、代替基本ドメイン部(A)50Bと対になる基本ドメイン部(A)20Aが含まれている場合(ステップS109でYES)、システム構成部13Bは、代替基本ドメイン部(A)50Bが実行中かどうか判断する(ステップS110)。システム構成部13Bが、実行中と判断した場合(ステップS110でYES)、システム構成部13Bは、何もしない。システム構成部13Bが、実行中ではないと判断した場合(ステップS110でNO)、処理はステップS114へ進む。なお、ステップS114及びステップS115は、オプション的な処理であり、処理は、ステップS114からステップS112へ進んでもよい。
感染ドメインリスト16Aに、代替基本ドメイン部(A)50Bと対になる基本ドメイン部(A)20Aが含まれていない場合(ステップS109でNO)も、システム構成部13Bは、代替基本ドメイン部(A)50Bが実行中かどうか判断する(ステップS111)。
ステップS112において、感染ドメインリスト16Aに、ECU(B)1の有する代替基本ドメイン部(A)50Bと対になる基本ドメイン部(A)20Aが含まれており(ステップS109でYES)、かつ、代替基本ドメイン部(A)50Bが実行中でなく待機中であれば(ステップS110でNO)、システム構成部13Bは、代替基本ドメイン部(A)50Bの待機を解除し実行する。
ステップS113において、感染ドメインリスト16Aに代替基本ドメイン部(A)50Bと対になる基本ドメイン部(A)20Aが含まれていない場合は、代替基本ドメイン部(A)50Bが実行中であれば(ステップS111でYES)、システム構成部13Bは、代替基本ドメイン部(A)50Bを再び待機状態にして停止する。システム構成部13Bが代替基本ドメイン部(A)50Bを再び待機状態にするのは、代替基本ドメイン部(A)50Bが感染ドメインリスト16Aに記述されていないからである。
なお、システム構成部13Bは、ステップS112で代替基本ドメイン部(A)50Bの待機状態を解除して実行する前に、CPU2Bの占有率及びメモリ使用量のようなリソース負荷を参考に、代替基本ドメイン部(A)50Bを実行するためのリソースが足りているかどうかを判断し(ステップS114)てもよい。システム構成部13Bは、リソースが足りている場合は、処理をステップS112に進め、リソースが足りていない場合は、処理をステップS115に進める。
ステップS115において、システム構成部13Bは、拡張ドメイン部(B)30Bを停止してもよい。ステップS115で拡張ドメイン部(B)30Bを停止した場合、ステップS113で代替基本ドメイン部(A)50Bを待機状態にした後には、システム構成部13Bは、ステップS118において、ステップS115で停止させた拡張ドメイン部(B)30Bを再起動してもよい。
ECU(A)1及びECU(B)1では、基本ドメイン部代替後のドメイン構成に合わせた仮想ネットワークの接続設定の変更を実施する。ECU(A)1では、ステップS116において、システム構成部13Aが仮想ネットワーク91の接続設定の変更を実施する。ECU(B)1では、ステップS117において、システム構成部13Bが仮想ネットワーク91の接続設定の変更を実施する。
次に、図4を参照して、発生していたサイバー攻撃が止んだ場合の、車載システム100の動作を説明する。
攻撃検出部11Aが、ステップS102にてサイバー攻撃の有無を判断し、その結果がサイバー攻撃無しだった場合(ステップS102でNO)、攻撃検出部11Aは、前回実施したサイバー攻撃の有無を参照する(ステップS119)。攻撃検出部11Aは、前回の結果がサイバー攻撃有りだった場合(ステップS114でYES)、前回よりも前の、1回または複数回の検出結果から、サイバー攻撃が頻度高く発生しているか否か判断する(ステップS120)。頻度が高いかどうかは、設定されている頻度の閾値との対比によって判定することができる。攻撃検出部11Aは、検出結果の回数が閾値よりも大きい場合は頻度が高いと判定し、検出結果の回数が閾値以下の場合は頻度が低いと判定する。
サイバー攻撃の頻度が高い場合は、処理はステップS101に戻る(ステップS120でYES)。
管理ドメイン部(A)10Aは、拡張ドメイン部(A)30Aの異常が解消した場合、拡張ドメイン部(A)30Aを再起動する。管理ドメイン部(A)10Aは、基本ドメイン部(A)の異常が解消した場合、基本ドメイン部(A)20Aを再起動する。サイバー攻撃の頻度が低い場合は、ステップS121において、攻撃検出部11Aは、システム構成部13Aに再起動を指示する。
ステップS122において、再起動の指示を受けたシステム構成部13Aは、停止中のドメイン部を再起動する(ステップS122)。ここで停止中のドメイン部とは、車外ネットワーク88と接続する拡張ドメイン部(A)30A、あるいは拡張ドメイン部(A)30Aと接続する基本ドメイン部(A)20Aである。なお、システム構成部13Aは、ECU(A)1をリセットすることで、基本ドメイン部(A)20Aあるいは拡張ドメイン部(A)30Aを再起動してもよい。また、基本ドメイン部(A)20Aを再起動する場合に、車載システム100において、基本ドメイン部(A)20Aが、ECU(B)1の代替基本ドメイン部(A)50Bと同時に動作すること避けるために、システム構成部13Aは、以下の処理を実行されてもよい。即ち、システム構成部13Aは、代替基本ドメイン部(A)50Bが停止するまで、基本ドメイン部の再起動を待機する。システム構成部13Aは、仮想ネットワーク95によるシステム構成部13Bとの通信により、代替基本ドメイン部(A)50Bが停止しているか、実行しているかを知ることができる。
ステップS108において、システム構成部13Aは、基本ドメイン部(A)20A及び拡張ドメイン部(A)30Aを感染無と設定された感染ドメインリスト16Aを、他のすべてのECUのシステム構成部15に通知する。この通知は、仮想ネットワーク95を介したデータ通信によって送信する。システム構成部13Aは、再起動後のドメイン構成に合わせた仮想ネットワークの接続設定の変更を、実施する(ステップS116)。同様に、感染無と設定された感染ドメインリスト16Aを受信したECU(B)1では、システム構成部13Bが、再起動後のドメイン構成に合わせた仮想ネットワークの接続設定の変更を、実施する(ステップS117)。
***実施の形態1の効果***
(1)システム構成部がサイバー攻撃により感染した拡張ドメイン部を停止する(ステップS107)。従って、拡張ドメインから基本ドメイン部へ感染するという感染の連鎖を防止できる。よって、基本ドメイン部の動作を継続できる。
(2)サイバー攻撃が止んだ場合には、システム構成部が拡張ドメイン部を再起動する(ステップS122)。よって、ECUは、拡張ドメイン部の動作を再開できる。
(3)基本ドメイン部まで感染した場合には、システム構成部が、基本ドメイン部を停止し(ステップS107)し、かつ、システム構成部は、感染ドメインリスト16Aを送信することにより、感染した基本ドメイン部の機能を、代替基本ドメイン部に代替させる。
これにより、基本ドメイン部の動作が継続できる。
(4)ECU(A)1では、サイバー攻撃が止んだ場合に、基本ドメイン部を再起動する(ステップS122)。よって、サイバー攻撃を受ける前のシステム構成に戻して動作を継続できる。
(5)管理ドメイン部同士の間は、独立した仮想ネットワーク95のみで接続する。これにより、ECUは、車外ネットワーク88から侵入する感染を、防ぐことができる。よって、サイバー攻撃または故障により機能を代行する仕組みを実現する攻撃検出部、感染範囲特定部、システム構成部及び構成記憶部の4つの機能が、サイバー攻撃で動作不良を起こすことを防ぐことができる。
(6)ECUの故障が発生した場合には、ハイパーバイザ部が、システム構成部に故障を通知する。
システム構成部が、ECU上のすべての基本ドメイン部と拡張ドメイン部がサイバー攻撃により感染した際と同様に処理する。これにより、ECUが故障した場合においても、基本ドメイン部を他のECUで代替することができるので、故障時においても、基本ドメイン部の動作を継続することができる。
(7)管理ドメイン部(A)10Aは、別の管理ドメイン部との間で、故障が発生しているかどうかを確認する生存確認を実施する。システム構成部同士がお互いに生存確認をすることで、生存確認できないECUを故障したと見なし、同様の効果を得ることができる。
(8)従来の車載システムでは、ECUの機能の一部もしくは全部を、故障に備えて予め他のECUに移動しておく。そして、故障が発生した場合には、他のECUが移動されている機能を実行しているため、ECUが故障した場合であっても、機能が停止することはない。この従来の方式は故障に対しては有効である。
しかし、従来の方式の場合、サイバー攻撃に対しては、サイバー攻撃が続いている限り、他のECUに移動された機能が、再度感染してしまう。また、機能を移動する仕組みを実現する機能そのものがサイバー攻撃により動作不良を起こした場合、機能の移動ができない。
これに対して、実施の形態1のECUは管理ドメイン部を備えているので、従来の車載システムの課題を、この実施の形態1の効果の(1)から(5)に述べたように、解決することができる。
実施の形態2.
図8から図10を参照して実施の形態2の車載システム100を説明する。実施の形態1では、システム構成部が、感染したドメイン部を対象に動作する。実施の形態2では、感染または故障によってシステム構成が変更された場合に、システム構成に応じて、基本ドメイン部及び拡張ドメイン部の動作が変更される。動作の変更は、後述のステップS201,ステップS202において、管理ドメイン部が、拡張ドメイン部と基本ドメイン部との少なくともいずれかの動作変更を指示する動作変更通知を、ハイパーバイザ部に通知することで行われる。ハイパーバイザ部は、動作変更通知に従って、拡張ドメイン部と基本ドメイン部との少なくともいずれかに、動作を変更させる。後述のシステム変更通知は動作変更通知である。
システム構成の変更とは、基本ドメイン部の実行開始または実行停止、拡張ドメイン部(A)30Aの実行開始または実行停止、代替基本ドメイン部の実行開始または実行停止である。つまり、システム構成の変更とは、基本ドメイン部、拡張ドメイン部、代替基本ドメイン部の少なくともどれかの、実行開始または実行停止である。
実施の形態2の車載システム100のハードウェア構成図は、図1と同じである。
図8は、実施の形態2の車載システム100のソフトウェア構成のうち、ECU(A)1のソフトウェア構成を示す。ECU(A)1では、ハイパーバイザ部40Aが構成変更通知部41Aを備えており、基本ドメイン部(A)20Aが構成変更受領部24Aを備えており、拡張ドメイン部(A)30Aが構成変更受領部34Bを備えている。図8のECU(A)1は、図3と同様のECU(B)1に接続する。ECU(A)1の接続するECU(B)1は、図3の構成と同様であるので、省略している。なお、省略したECU(B)1も実施の形態2のECU(A)1と同様に、構成変更通知部41B、構成変更受領部24B及び構成変更受領部34Bを備える。ECU(C)1及びECU(D)1も、ECU(B)1と同様に、構成変更通知部、構成変更受領部及び構成変更受領部を備える。
図9は、実施の形態2におけるECU(A)1の動作のフローチャートである。図9は、図4のフローチャートに、ステップS201、ステップS203及びステップS205が追加された構成である。図9では、ステップS116よりも前のステップは省略している。ステップS201は、システム構成部13Aの動作であり、ステップS203は、構成変更通知部41Aの動作であり、ステップS205は構成変更受領部24A,34Aの動作である。
図10は、実施の形態2におけるECU(B)1の動作のフローチャートである。図10は、図5のフローチャートに、ステップS202、ステップS204及びステップS206が追加された構成である。図9では、ステップS117よりも前のステップは省略している。ステップS202は、システム構成部13Bの動作であり、ステップS204は、構成変更通知部41Bの動作であり、ステップS206は構成変更受領部24B、34Bの動作である。
図9のステップS203、ステップS205において、構成変更通知部41Aは、システム構成部13Aからシステム変更通知を受信し、基本ドメイン部(A)20A、拡張ドメイン部(A)30Aに、システム変更通知に基づき構成変更指示をし、システム変更を実施させる。基本ドメイン部(A)20Aの構成変更受領部24A及び拡張ドメイン部(A)30Aの構成変更受領部34Aは、構成変更通知部41Aからの構成変更指示を受け、各アプリに構成変更指示の内容を通知する。
図10のステップS204、ステップS206において、構成変更通知部41Bは、システム構成部13Bからシステム変更通知を受信し、基本ドメイン部(B)20B、拡張ドメイン部(B)30Bに、システム変更通知に基づき構成変更指示し、システム変更を実施させる。基本ドメイン部(B)20Bの構成変更受領部24B及び拡張ドメイン部(B)30Bの構成変更受領部34Bは、構成変更通知部41Bからの構成変更指示を受け、各アプリに構成変更指示の内容を通知する。
次に、図9、図10を参照して、実施の形態2の車載システム100の動作を説明する。
まず、サイバー攻撃が発生した場合の動作を述べる。ステップS101からステップS118までの動作は、実施の形態1と同様である。ステップS116、ステップS117の後、各ECUのシステム構成部は、各OSまたはデバイスドライバを介して、ハイパーバイザ部の構成変更通知部に、システム構成が変更されたというシステム変更通知を、ハイパーバイザコールのような手段を用いて通知する(ステップS201、ステップS202)。システム構成が変更されたというシステム変更通知は、感染ドメインリスト16Aを用いて知らせる、ECU(A)の拡張ドメイン部(A)30Aを停止したというような情報である。
構成変更通知部は、システム変更通知を受信した場合、システム構成の変更に関連する、例えば、構成変更により縮退運転を実施すべきドメイン部のアプリを対象として、仮想割り込みのような手段を用いて、構成変更指示を構成変更受領部に通知する(ステップS203、ステップS204)。
構成変更指示を受信した場合、構成変更受領部が各アプリに対して、例えば縮退運転を行うよう動作変更を指示する(ステップS205、ステップS206)。
次に、発生していたサイバー攻撃が止んだ場合の動作を述べる。
ステップS102、ステップS119〜ステップS122、ステップS108、ステップS116、ステップS109〜ステップS115、ステップS117、ステップS118までの動作は実施の形態1と同様である。
ステップS116、ステップS117の後、各ECUのシステム構成部は、各OSまたはデバイスドライバを介して、ハイパーバイザ部の構成変更通知部に、システム構成が変更されたというシステム変更通知を、ハイパーバイザコールのような手段を用いて通知する(ステップS201、ステップS202)。システム構成が変更されたというシステム変更通知は、感染ドメインリスト16Aを用いて知らせる、ECU(A)の拡張ドメイン部(A)30Aを実行開始したというような情報である。
構成変更通知部は、システム変更通知に関連する、例えば、構成変更により通常運転を実施すべきドメイン部のアプリを対象として、仮想割り込みのような手段を用いて、構成変更指示を構成変更受領部に通知する(ステップS203、ステップS204)。
構成変更指示を受信した場合、構成変更受領部が各アプリに対して、例えば通常運転を行うよう動作変更を指示する(ステップS205、ステップS206)。
また、感染範囲特定部の範囲特定が、ドメイン部単位ではなく、アプリ単位で可能な場合に、ドメイン部内で感染または故障に起因して正常に動作しなくなったアプリのみの実行を停止できる。
***実施の形態2の効果***
以上のように、ハイパーバイザコールおよび仮想割り込みのような手段を用いて、システム構成部からシステム構成の変更が通知されることにより、ドメイン部のアプリがシステム構成が変更されたことをネットワークを介さずに知ることができる。よって、セキュリティリスクを冒すことなく、縮退運転のような動作変更を実施できる。
1 ECU(A),ECU(B),ECU(C),ECU(D)、2A CPU、3A ROM、4A RAM、5A 周辺コントローラ、6A,7A,8A,9A I/O、10A 管理ドメイン部(A)、11A 攻撃検出部、12A 感染範囲特定部、13A システム構成部、14A 構成記憶部、15A OS、16A 感染ドメインリスト、20A 基本ドメイン部(A)、21A アプリ(A1)、22A アプリ(A2)、23A OS、24A 構成変更受領部、30A 拡張ドメイン部(A)、31A アプリ(A3)、32A アプリ(A4)、33A OS、34A 構成変更受領部、40A ハイパーバイザ部、41A 構成変更通知部、10B 管理ドメイン部(B)、11B 攻撃検出部、12B 感染範囲特定部、13B システム構成部、14B 構成記憶部、15B OS、20B 基本ドメイン部(B)、21B アプリ(B1)、22B アプリ(B2)、23B OS、30B 拡張ドメイン部(B)、31B アプリ(B3)、32B アプリ(B4)、33B OS、40B ハイパーバイザ部、50B 代替基本ドメイン部(A)、61 センサ、71 アクチュエータ、81 車内ネットワーク、88 車外ネットワーク、91,95 仮想ネットワーク、100 車載システム、140 ドメイン構成情報。

Claims (9)

  1. 車両に搭載される電子制御ユニットにおいて、
    第1のオペレーティングシステムの元で動作し、車外ネットワークと接続し、異常の発生時に停止可能である拡張ドメイン部と、
    第2のオペレーティングシステムの元で動作し、前記拡張ドメイン部に接続し、異常の発生時に動作の継続を要する基本ドメイン部と、
    第3のオペレーティングシステムの元で動作し、前記拡張ドメイン部の前記異常を検出した場合に、前記拡張ドメイン部の動作を停止する管理ドメイン部と、
    前記第1のオペレーティングシステムと、前記第2のオペレーティングシステムと、前記第3のオペレーティングシステムとを動作させるハイパーバイザ部と、
    を備え、
    前記管理ドメイン部は、
    別の管理ドメイン部と前記基本ドメイン部に代替する別の基本ドメイン部とを有する別の電子制御ユニットにおける前記別の管理ドメイン部に、前記ハイパーバイザ部を介する独立の仮想ネットワークで接続しており、前記基本ドメイン部の異常を検出した場合に、前記基本ドメイン部の動作を停止し、前記別の電子制御ユニットの有する前記別の管理ドメイン部に、前記別の基本ドメイン部の動作を開始させる電子制御ユニット。
  2. 前記管理ドメイン部は、
    前記基本ドメイン部の前記異常が解消した場合、前記基本ドメイン部を再起動する請求項1に記載の電子制御ユニット。
  3. 前記管理ドメイン部は、
    前記別の管理ドメイン部との間で、故障が発生しているかどうかを確認する生存確認を実施する請求項1または請求項2に記載の電子制御ユニット。
  4. 前記管理ドメイン部は、
    前記異常を、前記ハイパーバイザ部との通信によって検出する請求項1から請求項3のいずれか1項に記載の電子制御ユニット。
  5. 前記管理ドメイン部は、
    前記拡張ドメイン部の前記異常が解消した場合、前記拡張ドメイン部を再起動する請求項1から請求項4のいずれか1項に記載の電子制御ユニット。
  6. 前記異常は、
    サイバー攻撃による感染である請求項1から請求項5のいずれか1項に記載の電子制御ユニット。
  7. 前記異常は、
    故障である請求項1から請求項5のいずれか1項に記載の電子制御ユニット。
  8. 前記管理ドメイン部は、
    前記拡張ドメイン部と前記基本ドメイン部との少なくともいずれかの動作変更を指示する動作変更通知を、前記ハイパーバイザ部に通知し、
    前記ハイパーバイザ部は、
    前記動作変更通知に従って、前記拡張ドメイン部と前記基本ドメイン部との少なくともいずれかに、動作を変更させる請求項1から請求項7のいずれか1項に記載の電子制御ユニット。
  9. 電子制御ユニットであるコンピュータに、
    第1のオペレーティングシステムの元で動作し、車外ネットワークと接続し、異常の発生時に停止可能である拡張機能処理と、
    第2のオペレーティングシステムの元で動作し、前記拡張機能処理と通信し、異常の発生時に動作の継続を要する基本機能処理と、
    第3のオペレーティングシステムの元で動作し、前記拡張機能処理の前記異常を検出した場合に、前記拡張機能処理の動作を停止する管理機能処理と、
    第1のオペレーティングシステムと、前記第2のオペレーティングシステムと、前記第3のオペレーティングシステムとを動作させるハイパーバイザ処理と、
    を実行させ、
    前記管理機能処理は、
    別の管理機能処理と前記基本機能処理に代替する別の基本機能処理とを有する別の電子制御ユニットにおける前記別の管理機能処理に、前記ハイパーバイザ処理を介する独立の仮想ネットワークで接続しており、前記基本機能処理の異常を検出した場合に、前記基本機能処理の動作を停止し、前記別の電子制御ユニットの有する前記別の管理機能処理に、前記別の基本機能処理の動作を開始させるプログラム。
JP2021528812A 2019-06-27 2019-06-27 電子制御ユニット及びプログラム Active JP6972437B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/025741 WO2020261519A1 (ja) 2019-06-27 2019-06-27 電子制御ユニット及びプログラム

Publications (2)

Publication Number Publication Date
JPWO2020261519A1 JPWO2020261519A1 (ja) 2021-11-18
JP6972437B2 true JP6972437B2 (ja) 2021-11-24

Family

ID=74061536

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021528812A Active JP6972437B2 (ja) 2019-06-27 2019-06-27 電子制御ユニット及びプログラム

Country Status (5)

Country Link
US (1) US20220055637A1 (ja)
JP (1) JP6972437B2 (ja)
CN (1) CN113993752B (ja)
DE (1) DE112019007432B4 (ja)
WO (1) WO2020261519A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022168453A1 (ja) * 2021-02-08 2022-08-11 パナソニックIpマネジメント株式会社 車両制御システム、車両制御システムの制御方法及びプログラム
JP2024070327A (ja) * 2022-11-11 2024-05-23 パナソニックオートモーティブシステムズ株式会社 情報提供方法及び情報処理装置

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4242405B2 (ja) * 2006-09-15 2009-03-25 三菱電機株式会社 車載電子制御装置
JP2008123439A (ja) * 2006-11-15 2008-05-29 Denso Corp オペレーティング・システム、プログラム及び移動体操縦支援装置
JP5045159B2 (ja) * 2007-03-12 2012-10-10 三菱電機株式会社 制御用サブユニットおよび制御用メインユニット
JP4985662B2 (ja) * 2009-01-22 2012-07-25 株式会社デンソー プログラム、及び制御装置
CN102343875A (zh) * 2011-07-13 2012-02-08 武汉市菱电汽车电子有限责任公司 基于整车控制策略的电动汽车驱动器及其控制方法
JP5382084B2 (ja) * 2011-10-07 2014-01-08 株式会社デンソー 車両用装置
US20140309930A1 (en) 2013-04-15 2014-10-16 Flextronics Ap, Llc Automatic camera image retrieval based on route traffic and conditions
CN104781789B (zh) * 2012-12-20 2018-06-05 三菱电机株式会社 车载装置
CN106068501A (zh) 2014-03-07 2016-11-02 三菱电机株式会社 计算机装置和计算机机构
US9571279B2 (en) 2014-06-05 2017-02-14 Cavium, Inc. Systems and methods for secured backup of hardware security modules for cloud-based web services
JP6130612B1 (ja) * 2015-08-25 2017-05-17 株式会社Seltech ハイパーバイザーを有するシステム
JP2018099972A (ja) 2016-12-20 2018-06-28 トヨタ自動車株式会社 車両システム
JP6189004B1 (ja) * 2017-01-24 2017-08-30 三菱電機株式会社 共用バックアップユニットおよび制御システム
CN110192183B (zh) * 2017-01-25 2023-07-07 三菱电机株式会社 计算机装置、任务启动方法以及计算机可读的存储介质
US20200233702A1 (en) * 2017-03-21 2020-07-23 Mitsubishi Electric Corporation Control apparatus and computer readable medium
JP6723955B2 (ja) * 2017-05-12 2020-07-15 日立オートモティブシステムズ株式会社 情報処理装置及び異常対処方法

Also Published As

Publication number Publication date
CN113993752A (zh) 2022-01-28
JPWO2020261519A1 (ja) 2021-11-18
US20220055637A1 (en) 2022-02-24
DE112019007432B4 (de) 2024-02-08
CN113993752B (zh) 2023-09-08
DE112019007432T5 (de) 2022-03-17
WO2020261519A1 (ja) 2020-12-30

Similar Documents

Publication Publication Date Title
US11599349B2 (en) Gateway device, in-vehicle network system, and firmware update method
US8001221B2 (en) Method of building system and management server
US9235484B2 (en) Cluster system
US11842185B2 (en) Gateway device, in-vehicle network system, and firmware update method
WO2015169199A1 (zh) 分布式环境下虚拟机异常恢复方法
JP4529767B2 (ja) クラスタ構成コンピュータシステム及びその系リセット方法
JP6972437B2 (ja) 電子制御ユニット及びプログラム
JP2010044613A (ja) ウイルス対策方法、コンピュータ、及びプログラム
US20190018964A1 (en) Secure Persistent Software Updates
JP2015524128A5 (ja)
US9479478B2 (en) Method for operating a communication module, and communication module
CN115904793B (zh) 一种基于多核异构系统的内存转存方法、系统及芯片
US10089200B2 (en) Computer apparatus and computer mechanism
EP4042306B1 (en) Secure installation of baseboard management controller firmware via a physical interface
CN107179980B (zh) 用于监视计算系统的方法和相应的计算系统
CN107423113B (zh) 一种管理虚拟设备的方法、带外管理设备及备用虚拟设备
WO2023042426A1 (ja) 車載装置及びプログラム更新システム
JPWO2015072004A1 (ja) 計算機、計算機制御方法、および計算機制御プログラム
US20220080989A1 (en) Information processing apparatus, information processing method, and recording medium
EP4318242A1 (en) Dynamic configuration of reaction policies in virtualized fault management system
US20220414207A1 (en) Electronic device and attack detection method of electronic device
US11632400B2 (en) Network device compliance
JP2017092933A (ja) コントローラおよび制御システム
CN115828230A (zh) 用于内核保护的系统、命令集线器以及主虚拟机
KR20040093835A (ko) 워치독 타이머를 구비한 마이크로 컴퓨터

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210721

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20210721

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20211005

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211102

R150 Certificate of patent or registration of utility model

Ref document number: 6972437

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150