JP7151631B2 - 車両用制御装置、車両用表示システム、及び車両用表示制御方法 - Google Patents
車両用制御装置、車両用表示システム、及び車両用表示制御方法 Download PDFInfo
- Publication number
- JP7151631B2 JP7151631B2 JP2019108849A JP2019108849A JP7151631B2 JP 7151631 B2 JP7151631 B2 JP 7151631B2 JP 2019108849 A JP2019108849 A JP 2019108849A JP 2019108849 A JP2019108849 A JP 2019108849A JP 7151631 B2 JP7151631 B2 JP 7151631B2
- Authority
- JP
- Japan
- Prior art keywords
- operating system
- control device
- vehicle
- allocation
- rtos
- 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
Links
- 238000000034 method Methods 0.000 title claims description 16
- 230000004913 activation Effects 0.000 claims description 33
- 238000002360 preparation method Methods 0.000 claims description 30
- 238000005516 engineering process Methods 0.000 claims description 23
- 238000001514 detection method Methods 0.000 claims description 7
- 230000006870 function Effects 0.000 description 28
- 238000010276 construction Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 6
- 238000004378 air conditioning Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000002485 combustion reaction Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000002699 waste material 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60K—ARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
- B60K35/00—Instruments specially adapted for vehicles; Arrangement of instruments in or on vehicles
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R16/00—Electric 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/02—Electric 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
-
- 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/4401—Bootstrapping
- G06F9/4406—Loading of operating system
-
- 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
- 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- 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/45575—Starting, stopping, suspending or resuming virtual machine instances
-
- 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
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5021—Priority
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mechanical Engineering (AREA)
- Combustion & Propulsion (AREA)
- Transportation (AREA)
- Chemical & Material Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Controls And Circuits For Display Device (AREA)
- Stored Programmes (AREA)
Description
本開示は、車両用制御装置、車両用表示システム、及び車両用表示制御方法に関するものである。
従来、複数のオペレーティングシステム(OS:Operating System)を並列に実行可能な技術が知られている。例えば、特許文献1には、2つのOSを実プロセッサにより論理的に実現される複数の仮想プロセッサ上で並列に動作可能とする技術が開示されている。このような技術は仮想化技術と呼ばれている。仮想化技術によれば、複数のOSが同じ物理的なプロセッサコアを共用することも可能になる。
複数のOSを並列に動作可能とする技術を、車両の室内のディスプレイに表示を行わせる車両用制御装置(以下、単に車両用制御装置)に用いる場合に、以下のような問題が考えられる。
例えば、複数のOSが同じ物理的なプロセッサコア(以下、物理コア)を共用して並列に動作している状況において一部のOSがフリーズする場合に、フリーズしたOSがアクセスしていた物理コアが開放されなくなり、この物理コアを共用していた他のOSが動作できなくなるおそれがある。車両用制御装置では、メータ描画を行うアプリケーションといった特に高い信頼性を要求されるアプリケーションを実行するOSの動作について高い信頼性が要求される。そこで、複数のOSごとに固有の物理コアを割り当てることで、信頼性を向上させることが考えられる。
しかしながら、特に高い信頼性を要求されるアプリケーションを実行するOSは、車両用制御装置の起動時に、このアプリケーションをより迅速に実行する起動性能も併せて求められる。例えば、車両用制御装置の起動時に、メータ表示を行うアプリケーションをより迅速に実行してメータ表示を行うこと等が求められる。
この開示のひとつの目的は、複数のオペレーティングシステムを並列に動作可能とする技術を車両の室内のディスプレイに表示を行わせる車両用制御装置に用いる場合に、これらのオペレーティングシステムの信頼性を向上させつつ、車両用制御装置の起動時に迅速に表示すべき表示コンテンツをより迅速に表示させることを可能にする車両用制御装置、車両用表示システム、及び車両用表示制御方法を提供することにある。
上記目的は独立請求項に記載の特徴の組み合わせにより達成され、また、下位請求項は、開示の更なる有利な具体例を規定する。特許請求の範囲に記載した括弧内の符号は、ひとつの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、本開示の技術的範囲を限定するものではない。
上記目的を達成するために、本開示の車両用制御装置は、車両の室内に設けられるディスプレイ(20,30)に表示を行わせる車両用制御装置であって、仮想化技術によって仮想化ソフトウェア上で複数のオペレーティングシステム(103,103a,104)を並列に動作させることが可能な物理プロセッサ(101)を備え、物理プロセッサに含まれる複数の物理プロセッサコア(1011,1012,1013,1014)は、仮想化技術によって仮想プロセッサコアに抽象化されるものであり、車両用制御装置の起動トリガを検出するトリガ検出部(110)と、トリガ検出部で起動トリガを検出して、複数のオペレーティングシステムのうちの、車両用制御装置の起動時に優先して表示すべき表示コンテンツを表示させるアプリケーションである優先アプリケーションを実行するオペレーティングシステムである第1オペレーティングシステム(103,103a)と、他方のオペレーティングシステムである第2オペレーティングシステム(104)とを起動させる場合に、第1オペレーティングシステムに、第1オペレーティングシステムの起動完了後の割り当て量として予め設定されている仮想プロセッサコアの割り当て量よりも多くの仮想プロセッサコアを一時的に割り当てる一時割り当てを行う割当部(1021)とを備える。
また、上記目的を達成するために、本開示の車両用表示制御方法は、車両の室内に設けられるディスプレイ(20,30)に車両用制御装置(10)によって表示を行わせる車両用表示制御方法であって、車両用制御装置の起動トリガを検出し、仮想化技術によって仮想化ソフトウェア(102,102a)上で複数のオペレーティングシステム(103,103a,104)を並列に動作させることが可能な物理プロセッサ(101)に含まれる複数の物理プロセッサコア(1011,1012,1013,1014)を、仮想化技術によって仮想プロセッサコアに抽象化し、起動トリガを検出して、複数のオペレーティングシステムのうちの、車両用制御装置の起動時に優先して表示すべき表示コンテンツを表示させるアプリケーションである優先アプリケーションを実行するオペレーティングシステムである第1オペレーティングシステム(103,103a)と、他方のオペレーティングシステムである第2オペレーティングシステム(104)とを起動させる場合に、第1オペレーティングシステムに、第1オペレーティングシステムの起動完了後の割り当て量として予め設定されている仮想プロセッサコアの割り当て量よりも多くの仮想プロセッサコアを一時的に割り当てる一時割り当てを行う。
これらによれば、車両用制御装置の起動トリガを検出して、仮想化ソフトウェア上で並列に動作させることが可能な第1オペレーティングシステムと第2オペレーティングシステムとを起動させる場合に、第1オペレーティングシステムに、第1オペレーティングシステムの起動完了後の割り当て量として予め設定されている仮想プロセッサコアの割り当て量よりも多くの仮想プロセッサコアを一時的に割り当てる一時割り当てを行う。よって、一時割り当てを行わない場合に比べて、第1オペレーティングシステムの起動完了にかかる時間を短縮することが可能になる。従って、車両用制御装置の起動時に、第1オペレーティングシステムで実行する、車両用制御装置の起動時に優先して表示すべき表示コンテンツを表示させる優先アプリケーションを、より迅速に実行させることが可能になる。
物理プロセッサに含まれる複数の物理プロセッサコアは、仮想化技術によって仮想プロセッサコアに抽象化されるものであるので、割り当て量を一時的に変更することができる。一時割り当ては、一時的なものであるので、第1オペレーティングシステムと第2オペレーティングシステムとの起動完了後の動作時には、オペレーティングシステムごとに固有の物理コアを割り当てることが可能である。よって、オペレーティングシステムごとの信頼性を向上させることも可能になる。
その結果、複数のオペレーティングシステムを並列に動作可能とする技術を車両の室内のディスプレイに表示を行わせる車両用制御装置に用いる場合に、これらのオペレーティングシステムの信頼性を向上させつつ、車両用制御装置の起動時に迅速に表示すべき表示コンテンツをより迅速に表示させることが可能になる。
また、上記目的を達成するために、本開示の車両用表示システムは、車両の室内に設けられるディスプレイ(20,30)と、ディスプレイに表示を行わせる、前述の車両用制御装置(10)とを含む。
これによれば、前述の車両用制御装置を含むので、複数のオペレーティングシステムを並列に動作可能とする技術を車両の室内のディスプレイに表示を行わせる車両用制御装置に用いる場合に、これらのオペレーティングシステムの信頼性を向上させつつ、車両用制御装置の起動時に迅速に表示すべき表示コンテンツをより迅速に表示させることが可能になる。
図面を参照しながら、開示のための複数の実施形態を説明する。なお、説明の便宜上、複数の実施形態の間において、それまでの説明に用いた図に示した部分と同一の機能を有する部分については、同一の符号を付し、その説明を省略する場合がある。同一の符号を付した部分については、他の実施形態における説明を参照することができる。
(実施形態1)
<車両用表示システム1の概略構成>
以下、本実施形態について図面を用いて説明する。まず、図1を用いて、車両用表示システム1の説明を行う。車両用表示システム1は、車両で用いられる。以下では、車両用表示システム1が自動車で用いられる場合を例に挙げて説明を行う。図1に示すように、車両用表示システム1は、統合ECU10、センターインフォメーションディスプレイ(以下、CID)20、及びメータマルチインフォメーションディスプレイ(以下、メータMID)30を含む。
<車両用表示システム1の概略構成>
以下、本実施形態について図面を用いて説明する。まず、図1を用いて、車両用表示システム1の説明を行う。車両用表示システム1は、車両で用いられる。以下では、車両用表示システム1が自動車で用いられる場合を例に挙げて説明を行う。図1に示すように、車両用表示システム1は、統合ECU10、センターインフォメーションディスプレイ(以下、CID)20、及びメータマルチインフォメーションディスプレイ(以下、メータMID)30を含む。
CID20は、車両の室内のうちのセンタクラスタに設けられるディスプレイである。CID20としては、画像を描画できるディスプレイを用いればよい。CID20としては、液晶ディスプレイ、有機ELディスプレイ等を用いることができる。CID20には、主に安全性及び安心性よりも利便性及び快適性が要求される特性を有する機能の情報が表示される。一例として、CID20には、主にナビ情報,オーディオ情報,空調情報等のインフォテインメント機能の情報が表示される。ここで言うところのインフォテインメント機能とは、安全性及び安心性以外の利便性及び快適性に関する機能である。
ナビ情報は、ナビゲーション機能に関する情報であって、例えば経路案内画像等である。オーディオ情報は、オーディオ機器の操作に関する画像等である。空調情報は、空調機器の操作に関する画像等である。CID20には、インフォテインメント機能の情報以外にも、起動画面の情報も表示される。起動画面の情報は、例えば車両ドア開扉時のおもてなし演出に関する画像(以下、ウェルカム画像),車両起動時のオープニング演出に関する画像(以下、オープニング画像)等である。ウェルカム画像は、車両ドア開扉時に表示される画像であって、車両起動よりも前に表示される画像である。オープニング画像は、車両起動時に表示される画像である。ウェルカム画像,オープニング画像は、複数コマの静止画像を時系列順に表示させることで例えばアニメーション表示される構成とすればよい。空調情報は、空調機器の操作に関する画像等である。
メータMID30は、車両の室内のうちの運転席の正面に設けられるディスプレイである。一例として、メータMID30は、メータパネルに設けられる構成とすればよい。メータMID30としては、画像を描画できるディスプレイを用いればよい。メータMID30としては、液晶ディスプレイ、有機ELディスプレイ等を用いることができる。メータMID30には、主に利便性及び快適性よりも安全性及び安心性が要求される特性を有する機能の情報が表示される。一例として、メータMID30には、主にメータ情報等の安全安心機能の情報が表示される。
メータ情報は、メータ表示に関する画像等である。メータMID30には、安全安心機能の情報以外にも、起動画面の情報,簡略化したナビ情報等も表示される。起動画面の情報は、例えば前述のウェルカム画像,オープニング画像等であって、メータMID30に表示されるウェルカム画像,オープニング画像は、CID20に表示されるウェルカム画像,オープニング画像と同一であっても同一でなくてもよい。簡略化したナビ情報は、インフォテインメント機能の情報であって、CID20で表示させるナビ情報よりも簡略化した情報である。例えば次の進行方向を示す表示といった簡略化した経路案内画像等である。
統合ECU10は、CID20を制御する機能とメータMID30を制御する機能とを集約したECU(Electronic Control Unit)である。統合ECU10は、CID20及びメータMID30と接続されており、CID20及びメータMID30に種々の画像を描画して表示させる。統合ECU10は、車内LANにも接続されており、車内LANに接続されるセンサ,他のECU等からの情報が入力される。統合ECU10がCID20及びメータMID30に描画する画像が、統合ECU10の出力情報にあたる。車内LANを介して統合ECU10に入力される情報が、統合ECU10の入力情報にあたる。入力情報には、車速及び走行距離等の車両情報,デジタルテレビの映像情報,スマートフォンと連携するスマートフォン連携情報等が挙げられる。統合ECU10は、入力情報と出力情報とを一括管理する構成であって、各種情報の入力元と出力先とを自由に組み替え可能である。
統合ECU10は、例えばプロセッサ、メモリ、I/O、これらを接続するバスを備えるマイクロコンピュータ(以下、マイコン)を主体として構成される。ここで言うところのプロセッサは、演算ユニット及びレジスタ等からなる物理的なプロセッサ(以下、物理プロセッサ)である。統合ECU10は、不揮発性メモリに記憶された制御プログラムを実行することでCID20及びメータMID30への画像の表示に関する各種の処理を実行する。特に本実施形態では、統合ECU10は、仮想化ソフトウェア上で複数のOSを並列に動作可能とし、複数のOSのそれぞれで画像の表示に関する処理を実行可能とする。この統合ECU10が車両用制御装置に相当する。また、この統合ECU10での処理を実行することが、車両用表示制御方法が実行されることに相当する。ここで言うところのメモリは、コンピュータによって読み取り可能なプログラム及びデータを非一時的に格納する非遷移的実体的記憶媒体(non-transitory tangible storage medium)である。また、非遷移的実体的記憶媒体は、半導体メモリ又は磁気ディスクなどによって実現される。なお、統合ECU10の詳細については以下で述べる。
<統合ECU10の概略構成>
続いて、図2を用いて、統合ECU10の概略構成の一例について説明を行う。図2では、便宜上、CID20及びメータMID30への画像の表示に関する構成の一例について示す。統合ECU10は、メインマイコン100、サブマイコン110、第1画像出力部120、及び第2画像出力部130を備えている。なお、統合ECU10が実行する機能の一部又は全部を、1つ或いは複数のIC等によりハードウェア的に構成してもよい。
続いて、図2を用いて、統合ECU10の概略構成の一例について説明を行う。図2では、便宜上、CID20及びメータMID30への画像の表示に関する構成の一例について示す。統合ECU10は、メインマイコン100、サブマイコン110、第1画像出力部120、及び第2画像出力部130を備えている。なお、統合ECU10が実行する機能の一部又は全部を、1つ或いは複数のIC等によりハードウェア的に構成してもよい。
メインマイコン100は、CID20へ表示させる画像及びメータMID30へ表示させる制御を行う。一例として、メインマイコン100は、統合ECU10の起動時に優先して表示すべきコンテンツ画像(以下、優先画像)の表示を行わせる。ここで言うところの優先とは、例えばインフォテインメント機能の情報を表示させるよりも先に表示させることを示す。優先表示コンテンツの一例としては、メータ表示等の、他の表示に先がけて表示すべき安全安心機能の情報の表示が挙げられる。優先表示コンテンツの表示を行うアプリケーションを、以降では優先アプリケーションと呼ぶ。優先画像の例としては、リアビューカメラの撮像画像等も挙げられるが、以降ではメータ表示を例に挙げて説明を行う。
サブマイコン110は、メインマイコン100のオンオフを制御する機能等を備える。サブマイコン110は、統合ECU10の起動トリガを検出した場合に、メインマイコン100を起動させる。このサブマイコン110がトリガ検出部に相当する。起動トリガの一例としては、電源電圧の一定レベル以上への上昇,車内LANからのウェイクアップ信号の取得等が挙げられる。起動トリガは、ユーザの車両の利用開始時に発生する。ユーザの車両の利用開始時とは、車両の内燃機関又はモータジェネレータを始動させるためのスイッチ(以下、パワースイッチ)がオンになる車両起動時,車両のドアが開扉される車両ドア開扉時等が挙げられる。
第1画像出力部120は、メインマイコン100で生成される、CID20へ表示させる画像を、CID20に出力し、CID20にこの画像を描画する。第1画像出力部120としては、例えばICを用いればよい。第2画像出力部130は、メインマイコン100で生成される、メータMID30へ表示させる画像を、メータMID30に出力し、メータMID30にこの画像を描画する。第2画像出力部130としては、例えばICを用いればよい。
また、統合ECU10は、仮想化技術によってメインマイコン100のハードウェアリソースを抽象化し、単一のメインマイコン100で複数のオペレーティングシステム(以下、OS)を並列に動作可能とする。統合ECU10は、不揮発性メモリに記憶された仮想化ソフトウェアの制御プログラムを実行することでメインマイコン100の物理プロセッサを抽象化し、仮想化ソフトウェア上で複数のOSを並列に動作可能とする。
より詳しくは、統合ECU10は、仮想化技術によって物理プロセッサを複数の仮想プロセッサコアに抽象化し、異なる仮想プロセッサコア(以下、仮想コア)をそれぞれのOSに割り当てることで、それぞれのOSを動作させる。仮想化ソフトウェアは、物理プロセッサのリソースをクロック単位で時分割して使用することで仮想的に複数のコア(つまり、仮想コア)が存在しているように動作させることで、異なる仮想コアでそれぞれOSを動作させればよい。物理プロセッサは、複数の物理的なプロセッサコアである物理プロセッサコア(以下、物理コア)からなるものとする。物理プロセッサに含まれる物理コアの数は複数であればよく、本実施形態では4つであるものとして以降の説明を行う。
仮想化ソフトウェアは、仮想コアを、物理コアで実行する最小の処理単位であるスレッド(以下、論理コア)に紐付けて管理するものとすればよい。例えば、本実施形態の物理コアが、同時マルチスレッディング技術(SMT:Simultaneous Multithreading Technology)を利用することで1つの物理コアで並行して2つのスレッドを実行する場合には、論理コアは8個となる。一方、本実施形態の物理コアが、1つの物理コアで並行して2つのスレッドを実行しない場合には、論理コアは物理コアの数と同じ4個となる。
なお、仮想コアと論理コアとの紐付けは、必ずしも1対1の比率に限らず、1つの論理コアに複数の仮想コアが紐付けられる構成としてもよい。本実施形態では、便宜上、複数の論理コアが1つの仮想コアに紐付けられることのない場合を例に挙げて以降の説明を行う。また、仮想化ソフトウェアがOSに割り当て可能な仮想コアの全量(以下、許容全量)は、物理プロセッサの全リソース量と同じではない。例えば、仮想コアの許容全量には、仮想化ソフトウェアの動作に必要なリソース分は含まれない。また、1つのOSがアクセス可能な論理コアの数を全論理コア数とすることが、仮想コアの許容全量を割り当てることとした場合でも、全論理コアのリソースの使用率が100%に達するものではない。
仮想化ソフトウェアは、仮想プロセッサコアの動作状態を管理して仮想化を実現する仮想化専用のソフトウェアとする。一例として、以下では仮想化ソフトウェアとしてハイパーバイザー(Hypervisor)を用いる場合を例に挙げて説明を行う。以下では、仮想化技術によってハイパーバイザー上で2つのOSを並列に動作可能とする場合を例に挙げて説明を行う。
<メインマイコン100の物理プロセッサ101の概念的な構成>
ここで、図3を用いて、実施形態1におけるメインマイコン100の物理プロセッサ101の概念的な構成の一例について説明を行う。ここでは、2つのOSとして、リアルタイム特性を持つリアルタイムオペレーティングシステム(以下、RTOS)103と、汎用オペレーティングシステム(以下、汎用OS)104とを用いる場合を例に挙げて説明を行う。RTOS103は、例えばQNX(登録商標)とすればよい。汎用OS104は、例えばLinux(登録商標)とすればよい。
ここで、図3を用いて、実施形態1におけるメインマイコン100の物理プロセッサ101の概念的な構成の一例について説明を行う。ここでは、2つのOSとして、リアルタイム特性を持つリアルタイムオペレーティングシステム(以下、RTOS)103と、汎用オペレーティングシステム(以下、汎用OS)104とを用いる場合を例に挙げて説明を行う。RTOS103は、例えばQNX(登録商標)とすればよい。汎用OS104は、例えばLinux(登録商標)とすればよい。
メインマイコン100は、4つの物理コア1011,1012,1013,1014からなる物理プロセッサ101上に、ハイパーバイザー102を搭載している。以降では、本実施形態の物理コア1011~1014が、1つの物理コアで並行して2つのスレッドを実行しない場合を例に挙げて説明を行う。よって、物理コア1011~1014がそれぞれ論理コアとなる。つまり、論理コアは4つである。
ハイパーバイザー102は、物理プロセッサ101を抽出化した仮想コア上で、RTOS103と汎用OS104とを並列動作させることが可能となっている。ハイパーバイザー102とRTOS103とは、マイクロカーネル(以下、カーネル)が共通であるものとする。このRTOS103が第1オペレーティングシステムに相当し、汎用OS104が第2オペレーティングシステムに相当する。
RTOS103は、リアルタイム特性を持つので、前述の安全安心機能に関するアプリケーションを実行する。この安全安心機能に関するアプリケーションのうちには、前述の優先アプリケーションを含むものとする。一方、汎用OS104は、前述のインフォテインメント機能に関するアプリケーションを実行する。RTOS103は、安全安心機能に関するアプリケーションの実行に伴い、安全安心機能に関する画像を生成する。RTOS103は、優先アプリケーションを実行する場合には、メータ表示といった優先画像を生成する。汎用OS104は、インフォテインメント機能に関するアプリケーションの実行に伴い、インフォテインメント機能に関する画像を生成する。
<メインマイコン100の起動時の動作について>
続いて、図4のタイムチャートを用いて、メインマイコン100の起動時の動作について説明を行う。以降では、メータMID30に画像を表示させる場合を例に挙げて説明を行う。
続いて、図4のタイムチャートを用いて、メインマイコン100の起動時の動作について説明を行う。以降では、メータMID30に画像を表示させる場合を例に挙げて説明を行う。
起動トリガを検出したサブマイコン110によってメインマイコン100の起動が開始される。メインマイコン100の起動時には、まず、ハイパーバイザー102の構築が開始される。ここで、RTOS103は、ハイパーバイザー102とカーネルが共通であるので、ハイパーバイザー102の構築とともに、RTOS103の起動準備も開始される。続いて、ハイパーバイザー102の構築が、汎用OS104の起動準備を開始可能な段階まで進むと、汎用OS104の起動準備が開始される。汎用OS104の起動準備は、ハイパーバイザー102の構築が進まないと開始できないため、汎用OS104の起動準備は、RTOS103の起動準備よりも遅れて開始される。
ハイパーバイザー102の構築が進み、RTOS103の起動準備が優先アプリケーションを実行可能な段階まで達すると、ハイパーバイザー102上でRTOS103が優先アプリケーションを実行する。なお、ハイパーバイザー102の構築は、カーネルの起動と複数のドライバの起動完了によって完了する。優先アプリケーションの実行は、ハイパーバイザー102の構築完了前から可能となる。
一例として、RTOS103は、起動完了時には優先アプリケーションを含む複数のアプリケーションが実行可能となるものであって、起動完了前には優先アプリケーションの実行が可能となるものとする。優先アプリケーションの実行が可能となることを、以下では優先アプリケーションの起動完了とする。なお、RTOS103が優先アプリケーション以外を実行しないOSの場合には、優先アプリケーションの起動完了が、RTOS103の起動完了とすればよい。
RTOS103が優先アプリケーションを実行する場合、RTOS103が優先画像を生成する。例えば、第2画像出力部130は、RTOS103が優先画像としてメータ表示を行うための画像を生成すると、この画像をメータMID30に出力し、メータMID30にメータ表示を行うための画像を描画する。
汎用OS104の起動準備は、RTOS103の起動準備よりも遅れて開始されるため、RTOS103が優先画像を生成するよりも遅れて、汎用OS104でアプリケーションを実行することが可能になる。汎用OS104は、インフォテインメント機能の情報の表示を行うアプリケーションを実行し、インフォテインメント機能の情報の表示を行うための画像(以下、インフォテインメント系画像)を生成する。
例えば、第1画像出力部120は、汎用OS104がインフォテインメント系画像を生成すると、このインフォテインメント系画像をCID20に出力し、CID20にインフォテインメント系画像を描画する。なお、メータMID30に表示するインフォテインメント系画像については、例えばRTOS103が、RTOS103で生成した画像と、汎用OS104で生成したインフォテインメント系画像とを合成し、第2画像出力部130に出力させればよい。
<ハイパーバイザー102の概略構成>
メインマイコン100では、RTOS103及び汎用OS104を起動させる場合に、ハイパーバイザー102がRTOS103に割り当てる仮想コアの量を一時的に増やす一時割り当てを行うことにより、RTOS103の起動準備の進行を早める。ここで、図4を用いて、一時割り当てに関するハイパーバイザー102の構成について説明を行う。ハイパーバイザー102は、図4に示すように、割当部1021及び起動指示部1022を機能ブロックとして備える。
メインマイコン100では、RTOS103及び汎用OS104を起動させる場合に、ハイパーバイザー102がRTOS103に割り当てる仮想コアの量を一時的に増やす一時割り当てを行うことにより、RTOS103の起動準備の進行を早める。ここで、図4を用いて、一時割り当てに関するハイパーバイザー102の構成について説明を行う。ハイパーバイザー102は、図4に示すように、割当部1021及び起動指示部1022を機能ブロックとして備える。
割当部1021は、RTOS103に、RTOS103の起動完了後の割り当て量として予め設定されている仮想コアの割り当て量よりも多くの仮想コアを一時的に割り当てる一時割り当てを行う。これにより、一時割り当てを行わない場合よりもRTOS103の起動完了にかかる時間を短縮することが可能になる。よって、RTOS103で実行する優先アプリケーションで表示させる優先画像をより迅速に表示させることが可能になる。その結果、統合ECU10の起動時に迅速に表示すべき表示コンテンツをより迅速に表示させることが可能になる。例えば、割当部1021は、OSと仮想コアとの紐付けを変更することで、OSへの仮想コアの割り当てを変更する構成とすればよい。なお、本実施形態では、ハイパーバイザー102とRTOS103とのカーネルが共通であるため、RTOS103が割当部1021を制御する構成とすればよい。
RTOS103及び汎用OS104の起動完了後の割り当て量(以下、動作時割り当て量)は、RTOS103及び汎用OS104のそれぞれに異なる物理コア1011~1014が1つ以上割り当てられるように予め固定して設定されていることが好ましい。本実施形態の例では、RTOS103に割り当てる仮想コアは、物理コア1011,1012に対応する論理コアに紐付くが物理コア1013,1014に対応する論理コアには紐付かない仮想コアに予め固定して設定されていればよい。一方、汎用S104に割り当てる仮想コアは、物理コア1013,1014に対応する論理コアに紐付くが物理コア1011,1012に対応する論理コアには紐付かない仮想コアに予め固定して設定されていればよい。
これによれば、RTOS103及び汎用OS104の起動完了後の動作時は、RTOS103及び汎用OS104ごとに固有の物理コアを割り当てることで、RTOS103及び汎用OS104の信頼性を向上させることが可能になる。その結果、RTOS103及び汎用OS104の信頼性を向上させつつ、統合ECU10の起動時に迅速に表示すべき表示コンテンツをより迅速に表示させることが可能になる。
また、動作時割り当て量は、RTOS103及び汎用OS104のそれぞれに異なる物理コア1011~1014が1つ以上、キャッシュを共有する物理コア同士は同じOSに割り当てられるように予め固定して設定されていることがさらに好ましい。これは、キャッシュを共有する物理コアがそれぞれ異なるOSに割り当てられる場合、フリーズしたOSがアクセスしていた物理コアが開放されなくなり、この物理コアとキャッシュを共用していた物理コアが割り当てられる他のOSも動作できなくなるおそれがあるためである。
例えば本実施形態の例において、物理コア1011と物理コア1002とがキャッシュを共有しており、物理コア1013と物理コア1014とがキャッシュを共有している場合は、以下のようにすればよい。物理コア1011に対応する論理コアに紐付く仮想コアと物理コア1012に対応する論理コアに紐付く仮想コアとを異なるOSに割り当てないようにすればよい。また、物理コア1013に対応する論理コアに紐付く仮想コアと物理コア1014に対応する論理コアに紐付く仮想コアとを異なるOSに割り当てないようにすればよい。
これによれば、RTOS103及び汎用OS104の信頼性をさらに向上させることが可能になる。その結果、RTOS103及び汎用OS104の信頼性をさらに向上させつつ、統合ECU10の起動時に迅速に表示すべき表示コンテンツをより迅速に表示させることが可能になる。
ここで、図5を用いて、動作時割り当て量の一例について説明を行う。図5では、物理コア1011~1014のそれぞれに1つずつ論理コアL1~L4が対応する場合を例に挙げる。図5では、論理コアL1~L4のそれぞれに2つずつ仮想コアV1~V8が対応する場合を例に挙げる。物理コア1011には論理コアL1が対応し、論理コアL1には仮想コアV1,V2が紐付けられる。物理コア1012には論理コアL2が対応し、論理コアL2には仮想コアV3,V4が紐付けられる。物理コア1013には論理コアL3が対応し、論理コアL3には仮想コアV5,V6が紐付けられる。物理コア1014には論理コアL4が対応し、論理コアL4には仮想コアV7,V8が紐付けられる。図5では、物理コア1011と物理コア1012との間,物理コア1013と物理コア1014との間でキャッシュを共有しているものとする。
図5の例では、仮想コアV1,V2の組、仮想コアV3,V4の組、仮想コアV5,V6の組、仮想コアV7,V8の組といった組内の仮想コアを異なるOSに割り当てない割り当てが、RTOS103及び汎用OS104のそれぞれに異なる物理コア1011~1014が1つ以上割り当てられる仮想コアの割り当てとなる。また、図5の例では、仮想コアV1~V4の組、仮想コアV5~V8の組といった組内の仮想コアを異なるOSに割り当てない割り当てが、RTOS103及び汎用OS104のそれぞれに異なる物理コア1011~1014が1つ以上、キャッシュを共有する物理コア同士は同じOSに割り当てられる仮想コアの割り当てとなる。
割当部1021は、一時割り当て時に、RTOS103及び汎用OS104に割り当て可能な仮想コアの全量をRTOS103に割り当てることが好ましい。ここで言うところのRTOS103及び汎用OS104に割り当て可能な仮想コアの全量を割り当てるとは、物理プロセッサ101のリソースの全量を割り当てることを示すものではない。物理プロセッサ101のリソースのうち、ハイパーバイザー102の動作に用いる分といったRTOS103及び汎用OS104以外で必要な分を除いたものを割り当てることを示す。一例としては、RTOS103に全ての論理コアを使用させる一方、汎用OS104には論理コアを1つも使用させないように仮想コアを割り当てる構成とすればよい。なお、RTOS103に全ての論理コアを使用させる場合であっても、全論理コアのリソースの使用率が100%に達するものではない。
これによれば、ハイパーバイザー102上で動作させるOSに割くことのできる物理プロセッサ101のリソースをRTOS103の起動準備に割くことが可能になる。よって、RTOS103の起動完了にかかる時間をさらに短縮することが可能になる。従って、RTOS103で実行する優先アプリケーションで表示させる優先画像をさらに迅速に表示させることが可能になる。その結果、統合ECU10の起動時に迅速に表示すべき表示コンテンツをさらに迅速に表示させることが可能になる。
割当部1021は、一時割り当てを、汎用OS104の起動準備が開始されるよりも前に開始することが好ましい。これによれば、ハイパーバイザー102上で動作させるOSに割くことのできる物理プロセッサ101のリソースをRTOS103の起動準備に無駄なく集中させることが可能になる。よって、RTOS103の起動完了にかかる時間をより短縮することが可能になる。
割当部1021は、一時割り当てを、遅くともRTOS103の起動完了時には終了することが好ましい。これによれば、統合ECU10の起動時に迅速に表示すべき表示コンテンツをより迅速に表示させた後は、一時割り当てを終了して汎用OS104に割り当てる物理プロセッサ101のリソースを増やし、汎用OS104の起動完了にかかる時間を短縮することが可能になる。
割当部1021は、一時割り当てを、優先アプリケーションの起動が完了する場合に終了することが好ましい。これによれば、統合ECU10の起動時に迅速に表示すべき表示コンテンツをより迅速に表示させた後、より迅速に一時割り当てを終了して汎用OS104に割り当てる物理プロセッサ101のリソースを増やし、汎用OS104の起動完了にかかる時間をより短縮することが可能になる。
割当部1021は、RTOS103及び汎用OS104の起動完了後には、RTOS103及び汎用OS104の起動完了後の割り当て量としてそれぞれ予め固定して設定されている前述の動作時割り当て量を、RTOS103及び汎用OS104にそれぞれ割り当てていることが好ましい。これによれば、RTOS103及び汎用OS104の起動完了後の動作時は、RTOS103及び汎用OS104ごとに固有の物理コアを割り当てることで、RTOS103及び汎用OS104の信頼性を向上させることが可能になる。
割当部1021は、優先アプリケーションの起動完了後は、RTOS103及び汎用OS104の起動完了後の割り当て量としてそれぞれ予め固定して設定されている前述の動作時割り当て量を、RTOS103及び汎用OS104にそれぞれ割り当てることが好ましい。これによれば、RTOS103で実行するアプリケーションの起動完了後は、RTOS103及び汎用OS104ごとに固有の物理コアを割り当てることで、RTOS103でのアプリケーション実行時の信頼性を向上させることが可能になる。
起動指示部1023は、ハイパーバイザー102の構築が進み、汎用OS104の起動準備が開始可能となったことをもとに、汎用OS104の起動準備を開始させる。なお、起動指示部1023は、RTOS103の起動準備が所定段階に達するまでは、汎用OS104の起動準備を開始させないことが好ましい。ここで言うところの所定段階とは、例えばRTOS103での優先アプリケーションの実行が可能となる段階とすればよい。これによれば、RTOS103の起動準備が所定段階に達するまでは、物理プロセッサ101のハードウェアリソースをRTOS103の起動準備に集中させることが可能となり、RTOS103での優先アプリケーションの実行をより迅速に行わせることが可能になる。
<ハイパーバイザー102での一時割り当て関連処理>
ここで、図6のフローチャートを用いて、ハイパーバイザー102での一時割り当てに関連する処理(以下、一時割り当て関連処理)の流れの一例について説明を行う。また、図7のタイムチャートを用いて、RTOS103及び汎用OS104の動作状態とハイパーバイザー102での仮想コアの割り当ての変化との関係についての説明も行う。図6のフローチャートは、起動トリガを検出したサブマイコン110によってメインマイコン100の起動が開始された場合に開始する構成とすればよい。
ここで、図6のフローチャートを用いて、ハイパーバイザー102での一時割り当てに関連する処理(以下、一時割り当て関連処理)の流れの一例について説明を行う。また、図7のタイムチャートを用いて、RTOS103及び汎用OS104の動作状態とハイパーバイザー102での仮想コアの割り当ての変化との関係についての説明も行う。図6のフローチャートは、起動トリガを検出したサブマイコン110によってメインマイコン100の起動が開始された場合に開始する構成とすればよい。
まず、ステップS1では、ハイパーバイザー102の構築及びRTOS103の起動準備が開始される。ステップS2では、割当部1021が、RTOS103及び汎用OS104に割り当て可能な仮想コアの全量をRTOS103に割り当てる。本実施形態の例では、RTOS103に4つ全ての論理コアを使用させる一方、汎用OS104には論理コアを1つも使用させないように仮想コアを割り当てる一時割り当てを開始する。つまり、RTOS103:汎用OS104=4:0に仮想コアを割り当てる。
図7に示すように、ハイパーバイザー102の構築開始とともにRTOS103の起動準備が開始される。そして、RTOS103の起動準備が開始される場合に、一時割り当てが開始される。
ステップS3では、RTOS103での優先アプリケーションの起動が完了した場合(S3でYES)には、ステップS4に移る。一方、RTOS103での優先アプリケーションの起動が完了していない場合(S3でNO)には、S3の処理を繰り返す。
図7に示すように、RTOS103での優先アプリケーションの起動が完了するのは、RTOS103の起動準備が開始した後であって、RTOS103の起動が完了する前である。図7では、RTOS103の起動完了時に、優先アプリケーションを含む複数のアプリケーションが実行可能となる構成を例に挙げて説明を行っている。RTOS103が優先アプリケーション以外を実行しないOSの場合には、優先アプリケーションの起動完了が、RTOS103の起動完了とすればよい。
ステップS4では、割当部1021が一時割り当てを終了する。ステップS5では、割当部1021が、RTOS103及び汎用OS104のそれぞれに、RTOS103及び汎用OS104の起動完了後の仮想コアの割り当て量である動作時割り当て量を割り当てる動作時割り当てを開始する。本実施形態の例では、RTOS103に2つの論理コアを使用させる一方、汎用OS104にはRTOS103に使用させない2つの論理コアを使用させるように仮想コアを割り当てる。つまり、RTOS103:汎用OS104=2:2に仮想コアを割り当てる。
ステップS6では、起動指示部1022が、汎用OS104の起動準備を開始させる。ステップS7では、RTOS103及び汎用OS104の両方の起動が完了して一時割り当て関連処理を終了する。
図7に示すように、優先アプリケーションの起動が完了した場合に、汎用OS104の起動準備が開始される。また、優先アプリケーションの起動が完了した場合に、一時割り当てが終了し、動作時割り当てが開始される。例えば汎用OS104の起動準備は、動作時割り当てが開始されてから開始される構成とすればよい。また、優先アプリケーションの起動が完了し、この優先アプリケーションによる優先画像の表示が、統合ECU10の起動時においてメータMID30に最初に開始される場合に、一時割り当てを終了する構成としてもよい。例えば、この優先画像の表示が行われた時点では、一時割り当ては終了している構成とすればよい。
RTOS103の起動完了後、遅れて汎用OS104の起動が完了する。起動が完了した汎用OS104では、インフォテインメント系画像の表示を行わせることになる。なお、動作時割り当て量は、一時割り当ての終了後に動作時割り当てが行われた後、RTOS103及び汎用OS104の両方の起動が完了した後も変動させない。動作時割り当て量は、RTOS103及び汎用OS104の動作中、予め固定して設定された割り当てを維持する。これにより、RTOS103及び汎用OS104の動作中も、RTOS103及び汎用OS104ごとに固有の物理コアを割り当て続けることで、RTOS103及び汎用OS104の信頼性を向上させる。RTOS103及び汎用OS104の動作中におけるRTOS103及び汎用OS104の信頼性を向上させるためには、一時割り当てをRTOS103及び汎用OS104の両方の動作中にまで継続することは好ましくない。
なお、本実施形態では、優先画像としてメータ表示,リアビューカメラの撮像画像を例に挙げたが、車両の利用開始時にCID20,メータMID30に表示させるオープニング画像等の起動画面も含む構成としてもよい。
<実施形態1のまとめ>
実施形態1の構成によれば、前述したように、一時割り当てを行わない場合に比べて、RTOS103の起動完了にかかる時間を短縮することが可能になる。よって、統合ECU10の起動時に、RTOS103で実行する優先アプリケーションを、より迅速に実行させることが可能になる。従って、統合ECU10の起動時に迅速に表示すべき表示コンテンツをより迅速に表示させることが可能になる。
実施形態1の構成によれば、前述したように、一時割り当てを行わない場合に比べて、RTOS103の起動完了にかかる時間を短縮することが可能になる。よって、統合ECU10の起動時に、RTOS103で実行する優先アプリケーションを、より迅速に実行させることが可能になる。従って、統合ECU10の起動時に迅速に表示すべき表示コンテンツをより迅速に表示させることが可能になる。
また、物理プロセッサ101に含まれる複数の物理コア1011~1014は、仮想化技術によって仮想コアに抽象化されるものであるので、一時割り当てによるRTOS103への物理プロセッサ101のリソースの集中を一時的なものとすることができる。実施形態1の構成によれば、一時割り当ての終了後は、RTOS103と汎用OS104とのそれぞれに固有の物理コアを割り当てるように仮想コアの割り当てを変更するので、OSごとの信頼性を向上させることも可能になる。
その結果、複数のオペレーティングシステムを並列に動作可能とする技術を車両の室内のディスプレイに表示を行わせる車両用制御装置に用いる場合に、これらのオペレーティングシステムの信頼性を向上させつつ、車両用制御装置の起動時に迅速に表示すべき表示コンテンツをより迅速に表示させることが可能になる。
(実施形態2)
実施形態1では、仮想化ソフトウェアであるハイパーバイザー102とハイパーバイザー102上で動作するRTOS103とが用いるカーネルが共通である構成を示したが、必ずしもこれに限らない。例えば、仮想化ソフトウェアが用いるOSが、仮想化ソフトウェア上で動作するいずれのOSが用いるカーネルとも共通でない構成(以下、実施形態2)としてもよい。実施形態2の車両用表示システム1は、物理プロセッサ101の概念的な構成が一部異なる点を除けば、実施形態2の車両用表示システム1と同様である。
実施形態1では、仮想化ソフトウェアであるハイパーバイザー102とハイパーバイザー102上で動作するRTOS103とが用いるカーネルが共通である構成を示したが、必ずしもこれに限らない。例えば、仮想化ソフトウェアが用いるOSが、仮想化ソフトウェア上で動作するいずれのOSが用いるカーネルとも共通でない構成(以下、実施形態2)としてもよい。実施形態2の車両用表示システム1は、物理プロセッサ101の概念的な構成が一部異なる点を除けば、実施形態2の車両用表示システム1と同様である。
ここで、図8を用いて、実施形態2における物理プロセッサ101の概念的な構成の一例について説明を行う。ここでは、仮想化ソフトウェアとしてハイパーバイザー(Hypervisor)を用いるとともに、2つのOSとしてRTOS103aと汎用OS104とを用いる場合を例に挙げて説明を行う。ハイパーバイザー102aは、RTOS103aと汎用OS104とのいずれともカーネルが共通でない。ハイパーバイザー102a及びRTOS103aは、お互いのカーネルが共通でないことによる変更点を除けば、実施形態1のハイパーバイザー102及びRTOS103と同様である。
RTOS103aは、例えばQNXとすればよい。汎用OS104は、例えばLinuxとすればよい。メインマイコン100は、4つの物理コア1011,1012,1013,1014からなる物理プロセッサ101上に、ハイパーバイザー102aを搭載している。本実施形態でも、物理コア1011~1014が、1つの物理コアで並行して2つのスレッドを実行しない場合を例に挙げて説明を行う。よって、物理コア1011~1014がそれぞれ論理コアとなる。
ハイパーバイザー102aは、物理プロセッサ101を抽出化した仮想コア上で、RTOS103aと汎用OS104とを並列動作させることが可能となっている。ハイパーバイザー102aとRTOS103aとは、前述したようにカーネルが共通でないものとする。このRTOS103aも第1オペレーティングシステムに相当する。
実施形態1では、ハイパーバイザー102とRTOS103とはカーネルが共通である一方、ハイパーバイザー102と汎用OS104とはカーネルが共通でないため、統合ECU10の起動時に、RTOS103の起動準備が汎用OS104の起動準備よりも先に開始する構成となっていた。これに対して、実施形態2では、RTOS103a及び汎用OS104のいずれもハイパーバイザー102aとカーネルが共通でないため、統合ECU10の起動時に、RTOS103aの起動準備が汎用OS104の起動準備よりも先に開始するようにする必要がある。
そこで、実施形態2では、ハイパーバイザー102aの起動指示部1022が、ハイパーバイザー102aの構築が進み、RTOS103aの起動準備が開始可能となった場合に、RTOS103aの起動準備を開始させる。また、ハイパーバイザー102aの起動指示部1022が、汎用OS104の起動準備を、RTOS103の起動準備を開始させる前に起動させないようにする。RTOS103aは、自身を動作させる仮想化ソフトウェアとカーネルが共通でない点を除けば、実施形態1のRTOS103と同様である。また、ハイパーバイザー102aの割当部1021は、ハイパーバイザー102aとRTOS103aとのカーネルが共通でないので、RTOS103aの制御によらずに機能を実行する構成とすればよい。
実施形態2の構成によれば、統合ECU10の起動時に、一時割り当てによってRTOS103aへ物理プロセッサ101のリソースを一時的に集中させる点は実施形態1の構成と同様である。よって、実施形態1と同様に、複数のオペレーティングシステムを並列に動作可能とする技術を車両の室内のディスプレイに表示を行わせる車両用制御装置に用いる場合に、これらのオペレーティングシステムの信頼性を向上させつつ、車両用制御装置の起動時に迅速に表示すべき表示コンテンツをより迅速に表示させることが可能になる。
(実施形態3)
前述の実施形態では、CID20とメータMID30との2つのディスプレイを車両用表示システム1に含む構成を示したが、必ずしもこれに限らない。例えば、CID20及びメータMID30以外のディスプレイを車両用表示システム1に含む構成としてもよい。例えば、メータMID30の代わりにヘッドアップディスプレイを用いる構成等としてもよい。
前述の実施形態では、CID20とメータMID30との2つのディスプレイを車両用表示システム1に含む構成を示したが、必ずしもこれに限らない。例えば、CID20及びメータMID30以外のディスプレイを車両用表示システム1に含む構成としてもよい。例えば、メータMID30の代わりにヘッドアップディスプレイを用いる構成等としてもよい。
(実施形態4)
前述の実施形態では、仮想化ソフトウェア上で2つのOSを並列に動作させる場合の例を示したが、必ずしもこれに限らない。並列に動作させるOSが3つ以上であっても構わない。
前述の実施形態では、仮想化ソフトウェア上で2つのOSを並列に動作させる場合の例を示したが、必ずしもこれに限らない。並列に動作させるOSが3つ以上であっても構わない。
なお、本開示は、上述した実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本開示の技術的範囲に含まれる。また、本開示に記載の制御部及びその手法は、コンピュータプログラムにより具体化された1つ乃至は複数の機能を実行するようにプログラムされたプロセッサを構成する専用コンピュータにより、実現されてもよい。あるいは、本開示に記載の装置及びその手法は、専用ハードウェア論理回路により、実現されてもよい。もしくは、本開示に記載の装置及びその手法は、コンピュータプログラムを実行するプロセッサと1つ以上のハードウェア論理回路との組み合わせにより構成された1つ以上の専用コンピュータにより、実現されてもよい。また、コンピュータプログラムは、コンピュータにより実行されるインストラクションとして、コンピュータ読み取り可能な非遷移有形記録媒体に記憶されていてもよい。
1 車両用表示システム、10 統合ECU(車両用制御装置)、20 CID(ディスプレイ)、30 メータMID(ディスプレイ)、100 メインマイコン、101 物理プロセッサ、102,102a ハイパーバイザー(仮想化ソフトウェア)、103,103a RTOS(オペレーティングシステム,第1オペレーティングシステム)、104 汎用OS(オペレーティングシステム,第2オペレーティングシステム)、110 サブマイコン(トリガ検出部)、120 第1画像出力部、130 第2画像出力部、1011~1014 物理コア(物理プロセッサコア)、1021 割当部
Claims (12)
- 車両の室内に設けられるディスプレイ(20,30)に表示を行わせる車両用制御装置であって、
仮想化技術によって仮想化ソフトウェア(102,102a)上で複数のオペレーティングシステム(103,103a,104)を並列に動作させることが可能な物理プロセッサ(101)を備え、
前記物理プロセッサに含まれる複数の物理プロセッサコア(1011,1012,1013,1014)は、前記仮想化技術によって仮想プロセッサコアに抽象化されるものであり、
前記車両用制御装置の起動トリガを検出するトリガ検出部(110)と、
前記トリガ検出部で前記起動トリガを検出して、複数の前記オペレーティングシステムのうちの、前記車両用制御装置の起動時に優先して表示すべき表示コンテンツを表示させるアプリケーションである優先アプリケーションを実行する前記オペレーティングシステムである第1オペレーティングシステム(103,103a)と、他方のオペレーティングシステムである第2オペレーティングシステム(104)とを起動させる場合に、前記第1オペレーティングシステムに、前記第1オペレーティングシステムの起動完了後の割り当て量として予め設定されている前記仮想プロセッサコアの割り当て量よりも多くの前記仮想プロセッサコアを一時的に割り当てる一時割り当てを行う割当部(1021)とを備える車両用制御装置。 - 前記割当部は、前記一時割り当てを、遅くとも前記第1オペレーティングシステムの起動完了時には終了する請求項1に記載の車両用制御装置。
- 前記割当部は、前記一時割り当てを、前記優先アプリケーションの起動が完了する場合に終了する請求項2に記載の車両用制御装置。
- 前記割当部は、前記第1オペレーティングシステム及び前記第2オペレーティングシステムの起動完了後には、前記第1オペレーティングシステム及び前記第2オペレーティングシステムの起動完了後の割り当て量としてそれぞれ予め固定して設定されている前記仮想プロセッサコアの割り当て量である動作時割り当て量を、前記第1オペレーティングシステム及び前記第2オペレーティングシステムにそれぞれ割り当てている請求項2又は3に記載の車両用制御装置。
- 前記割当部は、前記優先アプリケーションの起動完了後は、前記第1オペレーティングシステム及び前記第2オペレーティングシステムの起動完了後の割り当て量としてそれぞれ予め固定して設定されている前記仮想プロセッサコアの割り当て量である動作時割り当て量を、前記第1オペレーティングシステム及び前記第2オペレーティングシステムにそれぞれ割り当てる請求項3に記載の車両用制御装置。
- 前記割当部は、前記動作時割り当て量を前記第1オペレーティングシステム及び前記第2オペレーティングシステムにそれぞれ割り当てる場合に、前記第1オペレーティングシステム及び前記第2オペレーティングシステムに、それぞれ異なる前記物理プロセッサコアが1つ以上割り当てられるように割り当てる請求項4又は5に記載の車両用制御装置。
- 前記割当部は、さらに、前記動作時割り当て量を前記第1オペレーティングシステム及び前記第2オペレーティングシステムにそれぞれ割り当てる場合に、前記第1オペレーティングシステム及び前記第2オペレーティングシステムに、それぞれ異なる前記物理プロセッサコアが1つ以上、キャッシュを共有する前記物理プロセッサコア同士は同じオペレーティングシステムに割り当てられるように割り当てる請求項6に記載の車両用制御装置。
- 前記割当部は、前記一時割り当てを、前記第2オペレーティングシステムの起動準備が開始されるよりも前に開始する請求項1~7のいずれか1項に記載の車両用制御装置。
- 前記第1オペレーティングシステム(103)は、前記仮想化ソフトウェア(102)と共通のカーネルを用いる一方、前記第2オペレーティングシステムは、前記仮想化ソフトウェアと共通のカーネルを用いないものであって、
前記トリガ検出部で前記起動トリガを検出した場合に、前記第1オペレーティングシステムの起動準備が、前記第2オペレーティングシステムの起動準備よりも先に開始される請求項8に記載の車両用制御装置。 - 前記割当部は、前記一時割り当て時に、前記第1オペレーティングシステム及び前記第2オペレーティングシステムに割り当て可能な前記仮想プロセッサコアの全量を前記第1オペレーティングシステムに割り当てる請求項1~9のいずれか1項に記載の車両用制御装置。
- 車両の室内に設けられるディスプレイ(20,30)と、
前記ディスプレイに表示を行わせる、請求項1~10のいずれか1項に記載の車両用制御装置(10)とを含む車両用表示システム。 - 車両の室内に設けられるディスプレイ(20,30)に車両用制御装置(10)によって表示を行わせる車両用表示制御方法であって、
前記車両用制御装置の起動トリガを検出し、
仮想化技術によって仮想化ソフトウェア(102,102a)上で複数のオペレーティングシステム(103,103a,104)を並列に動作させることが可能な物理プロセッサ(101)に含まれる複数の物理プロセッサコア(1011,1012,1013,1014)を、前記仮想化技術によって仮想プロセッサコアに抽象化し、
前記起動トリガを検出して、複数の前記オペレーティングシステムのうちの、前記車両用制御装置の起動時に優先して表示すべき表示コンテンツを表示させるアプリケーションである優先アプリケーションを実行する前記オペレーティングシステムである第1オペレーティングシステム(103,103a)と、他方のオペレーティングシステムである第2オペレーティングシステム(104)とを起動させる場合に、前記第1オペレーティングシステムに、前記第1オペレーティングシステムの起動完了後の割り当て量として予め設定されている前記仮想プロセッサコアの割り当て量よりも多くの前記仮想プロセッサコアを一時的に割り当てる一時割り当てを行う車両用表示制御方法。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019108849A JP7151631B2 (ja) | 2019-06-11 | 2019-06-11 | 車両用制御装置、車両用表示システム、及び車両用表示制御方法 |
PCT/JP2020/018904 WO2020250607A1 (ja) | 2019-06-11 | 2020-05-12 | 車両用制御装置、車両用表示システム、及び車両用表示制御方法 |
DE112020002799.6T DE112020002799T5 (de) | 2019-06-11 | 2020-05-12 | Fahrzeugsteuervorrichtung, fahrzeuganzeigesystem und fahrzeuganzeigesteuerverfahren |
CN202080042290.XA CN113939430B (zh) | 2019-06-11 | 2020-05-12 | 车辆用控制装置、车辆用显示系统和车辆用显示控制方法 |
US17/643,265 US20220100574A1 (en) | 2019-06-11 | 2021-12-08 | Vehicular control device, vehicular display system, and vehicular display control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019108849A JP7151631B2 (ja) | 2019-06-11 | 2019-06-11 | 車両用制御装置、車両用表示システム、及び車両用表示制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020201762A JP2020201762A (ja) | 2020-12-17 |
JP7151631B2 true JP7151631B2 (ja) | 2022-10-12 |
Family
ID=73743432
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019108849A Active JP7151631B2 (ja) | 2019-06-11 | 2019-06-11 | 車両用制御装置、車両用表示システム、及び車両用表示制御方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20220100574A1 (ja) |
JP (1) | JP7151631B2 (ja) |
CN (1) | CN113939430B (ja) |
DE (1) | DE112020002799T5 (ja) |
WO (1) | WO2020250607A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023113078A1 (ko) * | 2021-12-17 | 2023-06-22 | 엘지전자 주식회사 | 신호 처리 장치, 및 이를 구비하는 차량용 디스플레이 장치 |
WO2024085283A1 (ko) * | 2022-10-21 | 2024-04-25 | 엘지전자 주식회사 | 신호 처리 장치, 및 이를 구비하는 차량용 디스플레이 장치 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001143191A (ja) | 1999-11-12 | 2001-05-25 | Yazaki Corp | 車両用情報処理方法、及びその装置、並びに車両 |
JP2016212753A (ja) | 2015-05-12 | 2016-12-15 | 矢崎総業株式会社 | 車両用緊急状態通知装置 |
Family Cites Families (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7099948B2 (en) * | 2001-02-16 | 2006-08-29 | Swsoft Holdings, Ltd. | Virtual computing environment |
US7158972B2 (en) * | 2001-12-11 | 2007-01-02 | Sun Microsystems, Inc. | Methods and apparatus for managing multiple user systems |
US7516252B2 (en) * | 2005-06-08 | 2009-04-07 | Intel Corporation | Port binding scheme to create virtual host bus adapter in a virtualized multi-operating system platform environment |
US7493515B2 (en) * | 2005-09-30 | 2009-02-17 | International Business Machines Corporation | Assigning a processor to a logical partition |
US7945913B2 (en) * | 2006-01-19 | 2011-05-17 | International Business Machines Corporation | Method, system and computer program product for optimizing allocation of resources on partitions of a data processing system |
US7941803B2 (en) * | 2007-01-15 | 2011-05-10 | International Business Machines Corporation | Controlling an operational mode for a logical partition on a computing system |
KR101396831B1 (ko) * | 2007-03-30 | 2014-05-21 | 삼성전자주식회사 | 메모리 접근 제어 방법 |
JP5091655B2 (ja) * | 2007-12-21 | 2012-12-05 | 株式会社日立製作所 | 計算機仮想化装置、そのプログラム、及びその方法 |
JP5125659B2 (ja) * | 2008-03-24 | 2013-01-23 | 富士通株式会社 | 情報処理装置、情報処理方法及びコンピュータプログラム |
JP5343586B2 (ja) * | 2009-01-29 | 2013-11-13 | 富士通株式会社 | 情報処理装置、情報処理方法及びコンピュータプログラム |
JP2010277177A (ja) | 2009-05-26 | 2010-12-09 | Panasonic Corp | マルチオペレーティングシステム制御方法及びプロセッサシステム |
JP5434616B2 (ja) * | 2010-01-15 | 2014-03-05 | 富士通株式会社 | 仮想計算機、仮想計算機モニタ、および計算機の制御方法 |
JP5737050B2 (ja) * | 2011-08-15 | 2015-06-17 | 富士通株式会社 | 情報処理装置、割込み制御方法および割込み制御プログラム |
US9176787B2 (en) * | 2011-08-18 | 2015-11-03 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Preserving, from resource management adjustment, portions of an overcommitted resource managed by a hypervisor |
US8612937B2 (en) * | 2011-08-25 | 2013-12-17 | International Business Corporation | Synchronously debugging a software program using a plurality of virtual machines |
US9116633B2 (en) * | 2011-09-30 | 2015-08-25 | Commvault Systems, Inc. | Information management of virtual machines having mapped storage devices |
DE102012011584A1 (de) * | 2012-06-13 | 2013-12-19 | Robert Bosch Gmbh | Ressourcen-Managementsystem fürAutomatisierungsanlagen |
JP6032176B2 (ja) * | 2012-12-19 | 2016-11-24 | 株式会社デンソー | 車両用表示制御装置 |
US9363468B2 (en) * | 2013-02-19 | 2016-06-07 | American Megatrends, Inc. | Vehicle video display system |
JP6507169B2 (ja) * | 2014-01-06 | 2019-04-24 | ジョンソン コントロールズ テクノロジー カンパニーJohnson Controls Technology Company | 複数のユーザインターフェース動作ドメインを有する車両 |
JP2015176218A (ja) * | 2014-03-13 | 2015-10-05 | 富士通株式会社 | 演算処理装置、演算処理装置の制御方法、及び演算処理装置の制御プログラム |
KR101641489B1 (ko) * | 2014-09-24 | 2016-07-21 | 엘지전자 주식회사 | 이동단말기 및 차량 |
CN105818758B (zh) * | 2015-01-05 | 2018-12-07 | 中华汽车工业股份有限公司 | 车用仪表显示与信息娱乐的控制模块与局域网络系统 |
US10176019B2 (en) * | 2015-03-19 | 2019-01-08 | International Business Machines Corporation | Dynamic management of computing platform resources |
JP6471654B2 (ja) * | 2015-09-04 | 2019-02-20 | 株式会社デンソー | 表示制御装置、表示制御方法 |
US10852954B1 (en) * | 2015-09-23 | 2020-12-01 | EMC IP Holding Company LLC | Running an enterprise storage subsystem as a virtual machine |
US10831556B2 (en) * | 2015-12-23 | 2020-11-10 | Intel IP Corporation | Virtual CPU consolidation to avoid physical CPU contention between virtual machines |
CN106484535A (zh) * | 2016-09-30 | 2017-03-08 | 上汽通用汽车有限公司 | 车辆上的硬件虚拟平台和集成系统 |
US9977898B1 (en) * | 2016-10-31 | 2018-05-22 | International Business Machines Corporation | Identification and recovery of vulnerable containers |
CN107783821A (zh) * | 2017-01-25 | 2018-03-09 | 问众智能信息科技(北京)有限公司 | 车载一体虚拟化方法和装置 |
US11023266B2 (en) * | 2017-05-16 | 2021-06-01 | International Business Machines Corporation | Detecting and counteracting a multiprocessor effect in a virtual computing environment |
US10242179B1 (en) * | 2017-06-08 | 2019-03-26 | Rockwell Collins, Inc. | High-integrity multi-core heterogeneous processing environments |
US20190044809A1 (en) * | 2017-08-30 | 2019-02-07 | Intel Corporation | Technologies for managing a flexible host interface of a network interface controller |
JP6569725B2 (ja) | 2017-12-19 | 2019-09-04 | マツダ株式会社 | 多気筒エンジン |
US10977066B2 (en) * | 2018-04-06 | 2021-04-13 | Red Hat, Inc. | Virtual machine to container conversion and optimization |
US10963294B2 (en) * | 2018-07-02 | 2021-03-30 | International Business Machines Corporation | Cognitive cloud migration optimizer |
US10884863B2 (en) * | 2018-07-20 | 2021-01-05 | Red Hat, Inc. | Client session reclaim for a distributed storage system |
-
2019
- 2019-06-11 JP JP2019108849A patent/JP7151631B2/ja active Active
-
2020
- 2020-05-12 WO PCT/JP2020/018904 patent/WO2020250607A1/ja active Application Filing
- 2020-05-12 DE DE112020002799.6T patent/DE112020002799T5/de active Pending
- 2020-05-12 CN CN202080042290.XA patent/CN113939430B/zh active Active
-
2021
- 2021-12-08 US US17/643,265 patent/US20220100574A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001143191A (ja) | 1999-11-12 | 2001-05-25 | Yazaki Corp | 車両用情報処理方法、及びその装置、並びに車両 |
JP2016212753A (ja) | 2015-05-12 | 2016-12-15 | 矢崎総業株式会社 | 車両用緊急状態通知装置 |
Also Published As
Publication number | Publication date |
---|---|
US20220100574A1 (en) | 2022-03-31 |
CN113939430A (zh) | 2022-01-14 |
CN113939430B (zh) | 2024-07-19 |
WO2020250607A1 (ja) | 2020-12-17 |
DE112020002799T5 (de) | 2022-03-31 |
JP2020201762A (ja) | 2020-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7259571B2 (ja) | 車両用制御装置、車両用表示システム、及び車両用表示制御方法 | |
JP6903784B2 (ja) | 車両システム、車両およびこの種の車両システムの動作方法 | |
US20180203622A1 (en) | Vehicular device | |
US20220100574A1 (en) | Vehicular control device, vehicular display system, and vehicular display control method | |
US8887159B2 (en) | Flexible and scalable operating system achieving a fast boot and reliable operation | |
CN111708587A (zh) | 一种实现车载空调屏显示多模应用的装置及方法 | |
US11853103B2 (en) | Vehicular device | |
US20180293079A1 (en) | Application execution apparatus and application execution method | |
US12008676B2 (en) | Vehicle device, drawing requests using priority queues, and vehicle device control method | |
CN107924317B (zh) | 应用程序执行装置以及应用程序执行方法 | |
US11983575B2 (en) | Cache coherent acceleration function virtualization with hierarchical partition hardware circuity in accelerator | |
US11884283B2 (en) | Vehicle device | |
EP3113169B1 (en) | Method for controlling a graphic processing unit in a control unit, in particular of a vehicle, computer program product and system for an embedded control unit | |
US10810032B2 (en) | System and method for dynamic guest-controlled halt polling using a CPU governor | |
CN116569139A (zh) | 车载计算机、计算机执行方法及计算机程序 | |
CN112764822A (zh) | 操作系统启动方法、装置、设备及介质 | |
JP7439773B2 (ja) | 車載コンピュータ、コンピュータ実行方法及びコンピュータプログラム | |
Kockoth | Integration and Isolation Safety Aspects in the Cockpit of the Future | |
JP2009064388A (ja) | タスク制御システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210714 |
|
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: 20220830 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220912 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 7151631 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |