(57)【要約】【課題】複数のオペレーティングシステムが動作する環境において、バックアップされるデータの整合性を取ることができる車両用装置を提供する。【解決手段】実施形態の車両用装置１は、複数のＯＳ１３が動作する制御部１０と、書き換え回数の制限がある不揮発性の第１の記憶部としてのフラッシュメモリ１１と、書き換え回数の制限がない第２の記憶部としてのメインメモリ１２と、車両用装置１の電源状態の変化を通知する通知アプリ２３と、複数のＯＳ１３にそれぞれ設けられ、メインメモリに一時的に記憶された一時データ１６をフラッシュメモリ１１に保存データ１７としてバックアップするバックアップ部２４とを備え、バックアップ部２４は、通知部によって電源状態の変化が通知されたタイミングでデータをバックアップする。【選択図】図１
2020194333.tif 000002
【特許請求の範囲】
【請求項１】
複数のオペレーティングシステム（１３）が動作する制御部（１０）と、
書き換え回数の制限がある不揮発性の第１の記憶部（１１）と、
書き換え回数の制限がない第２の記憶部（１２）と、
車両用装置（１）の電源状態の変化を通知する通知部（２３）と、
複数のオペレーティングシステムにそれぞれ設けられ、前記第２の記憶部に一時的に記憶されたデータを前記第１の記憶部にバックアップするバックアップ部（２４）と、を備え、
前記バックアップ部は、前記通知部によって電源状態の変化が通知されたタイミングでデータを前記記憶部にバックアップする車両用装置。
【請求項２】
前記バックアップ部は、自身が動作するオペレーティングシステム側においてバックアップの対象となるデータまたは当該データを特定可能な情報を、他のオペレーティングシステム側の前記バックアップ部に受け渡し、
他のオペレーティングシステム側の前記バックアップ部は、データまたは当該データを特定可能な情報を受け渡された場合において送信元のオペレーティングシステムに不具合が生じた場合、当該不具合が生じたオペレーティングシステム側のデータまたは当該データを特定可能な情報をバックアップする請求項１記載の車両用装置。
【請求項３】
前記バックアップ部は、他のオペレーティングシステム側の不具合が解消された場合、バックアップしたデータまたは当該データを特定可能な情報を、不具合が解消された他のオペレーティングシステムに受け渡す請求項２記載の車両用装置。
【請求項４】
複数のオペレーティングシステムは、相対的に安定性が高い第１のオペレーティングシステム（１３Ａ）と、相対的に安定性が低い第２のオペレーティングシステム（１３Ｂ）と、を含み、
前記第１のオペレーティングシステムに設けられている前記バックアップ部（２４Ａ）は、前記第２のオペレーティングシステムの不具合を監視するとともに、前記第２のオペレーティングシステムに不具合が生じた際、前記第２のオペレーティングシステム側のデータまたは当該データを特定可能な情報をバックアップする請求項１から３のいずれか一項記載の車両用装置。
【請求項５】
前記バックアップ部は、バックアップの対象となるデータを絞り込んで、または、バックアップの対象となるデータに優先順位を設定して、他のオペレーティングシステムに設けられている前記バックアップ部に受け渡す請求項２から４のいずれか一項記載の車両用装置。
【請求項６】
前記バックアップ部は、データをバックアップする際、他の機能部によるデータの書き換えを停止させる請求項１から５のいずれか一項記載の車両用装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両用装置に関する。
【背景技術】
【０００２】
近年、メータパネル付近に表示器を設けて速度などの車両に関する情報を表示したり、メータパネル全体を表示器で構成して速度計などをグラフィック表示したりする車両用装置がある。また、例えばナビゲーション画面など、いわゆるマルチメディア系の情報を表示するための表示器を備えた車両用装置もある。そして、例えば特許文献１には、これら車両に関する情報やマルチメディア系の情報の表示などの複数の機能を統合した車両用装置が開示されている。以下、複数の機能を統合した車両用装置を、便宜的に統合型の車両用装置と称する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１９−０１８８４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
さて、統合型の車両用装置では、多くのデータが利用されている。そして、各データは、起動の高速化のためや、次回に利用するために、不揮発性の記憶部に記憶される。ただし、不揮発性の記憶部は、例えばｅＭＭＣなどが利用されるものの、書き換え回数に制限がある。そのため、一般的には、メインメモリなどの書き換え回数に制限がない記憶部にデータを一時的に記憶しておき、電源をオフする際に不揮発性の記憶部にバックアップを行っている。
【０００５】
しかしながら、統合型の車両用装置の場合、複数の機能を実現するために、複数のオペレーティングシステムと、そのオペレーティングシステム上で動作する複数のアプリケーションプログラムが動作している。以下、オペレーティングシステムをＯＳと称し、アプリケーションプログラムをアプリと称する。そして、各ＯＳ側でそれぞれ個別にバックアップを行うと、データの整合性が取れなくなるおそれがある。
【０００６】
本発明の目的は、複数のオペレーティングシステムが動作する環境において、バックアップされるデータの整合性を取ることができる車両用装置を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明では、車両用装置（１）は、複数のオペレーティングシステム（１３）が動作する制御部（１０）と、書き換え回数の制限がある不揮発性の第１の記憶部（１１）と、書き換え回数の制限がない第２の記憶部（１２）と、車両用装置（１）の電源状態の変化を通知する通知部（２３）と、複数のオペレーティングシステムにそれぞれ設けられ、第２の記憶部に一時的に記憶されたデータを第１の記憶部にバックアップするバックアップ部（２４）と、を備え、バックアップ部は、通知部によって電源状態の変化が通知されたタイミングでデータをバックアップする。これにより、複数のオペレーティングシステムにおいてデータがバックアップされるタイミングを同期させることが可能となり、複数のオペレーティングシステムが動作する環境において、バックアップされるデータの整合性を取ることができる。
【図面の簡単な説明】
【０００８】
【図１】実施形態による車両用装置の構成を模式的に示す図
【図２】ＯＳＢ側の通常時の処理の流れを示す図
【図３】ＯＳＡ側の通常時の処理の流れを示す図
【図４】ＯＳＡ側の起動時の処理の流れを示す図
【図５】ＯＳＢ側の起動時の処理の流れを示す図
【図６】ＯＳＡ側の不具合対処時の処理の流れを示す図
【発明を実施するための形態】
【０００９】
以下、実施形態について説明する。図１に示すように、車両用装置１は、例えばメータディスプレイ２やセンターディスプレイ３などの複数の表示器、ユーザが所有する携帯端末などの外部装置４、車両用装置１の電源を制御する電源制御部５などに接続されている。この車両用装置１は、後述するように車両に関する情報の提示とマルチメディア系の情報の提示とを行うことができるいわゆる車両インフォテイメント装置である。なお、図１に示す構成は一例であり、これに限定されない。
【００１０】
メータディスプレイ２は、例えば液晶ディスプレイや有機ＥＬディスプレイで構成されており、運転者の正面付近に位置するメータパネルに設けられている。このメータディスプレイ２には、例えば速度、警告、法規により定められている情報、燃料の残量やシートベルト装着の有無など、主として車両の状態に関する情報や車両の走行あるいは安全に関する情報がフルグラフィックで示される。以下、これらの情報を便宜的に車両情報と称する。なお、メータパネルの例えば中央部分にメータディスプレイ２を設け、速度計や回転数計あるいは警告灯などはいわゆるアナログ式のものを設ける構成とすることもできる。
【００１１】
センターディスプレイ３は、例えば液晶ディスプレイや有機ＥＬディスプレイで構成されており、いわゆるセンターコンソール付近に設けられている。このセンターディスプレイ３には、例えばナビゲーション画面やメニュー画面などが表示される。また、センターディスプレイ３は、テレビ放送や再生している楽曲の情報などを表示することもできる。
【００１２】
これらメータディスプレイ２やセンターディスプレイ３は、互いにシームレスに連係した表示が可能となっている。そのため、例えばナビゲーション画面をメータディスプレイ２に表示したり、速度をセンターディスプレイ３に表示したりすることができる。
【００１３】
つまり、車両用装置１は、車両情報を表示する機能とマルチメディア系の情報を表示する機能とを含む複数の機能が統合され、各種の情報を運転者に対して視覚的あるいは聴覚的に提示可能な統合型の構成となっている。
【００１４】
この車両用装置１は、１つの制御部１０によって制御されている。制御部１０は、図示しないＣＰＵを有するいわゆるマイクロコンピュータで構成されている。そして、制御部１０は、フラッシュメモリ１１に記憶しているコンピュータプログラムを実行することにより、車両用装置１を制御する。このとき、各プログラムは、メインメモリ１２上に展開されて実行される。
【００１５】
フラッシュメモリ１１は、ｅＭＭＣのような不揮発性の半導体素子で構成されており、コンピュータプログラム以外にも、制御部１０が備える各種の機能部によって利用されるデータも記憶する。ただし、フラッシュメモリ１１は、書き換え回数に制限がある。このフラッシュメモリ１１は、第１の記憶部に相当する。
【００１６】
一方、メインメモリ１２は、ＤＲＡＭなどの半導体素子で構成されている。このメインメモリ１２は、書き換え回数の制限はないものの、電源がオフされるとデータが消える不揮発性のものである。このメインメモリ１２は、第２の記憶部に相当する。
【００１７】
そのため、車両用装置１は、制御部１０が利用するデータについて、通常の動作中にはメインメモリ１２上に一時的に記憶し、車両用装置１の電源がオフされるタイミングでフラッシュメモリ１１にバックアップする。これにより、フラッシュメモリ１１への書き換え回数を削減している。
【００１８】
制御部１０上では、複数のオペレーティングシステム１３が動作可能な仮想化環境が構築されている。以下、オペレーティングシステム１３をＯＳ１３と称する。本実施形態の場合、制御部１０上ではＯＳ１３ＡとＯＳ１３Ｂの２つが動作している。つまり、車両用装置１には、１つのハードウェア上で複数のシステムが動作し、統合型の車両用装置１の多数の処理を分担している。
【００１９】
これらＯＳ１３ＡとＯＳ１３Ｂとの間は、データパス１４によって通信可能に接続されている。また、車両用装置１に設けられているフラッシュメモリ１１やメインメモリ１２あるいは図示しない表示回路や通信回路などのデバイスは、ＯＳ１３ＡとＯＳ１３Ｂとによって共有されている。
【００２０】
各ＯＳ１３は、ハイパーバイザ１５上で動作している。本実施形態の場合、ハイパーバイザ１５は、ＯＳ１３Ａが備える機能として提供されている。なお、ハイパーバイザ１５を専用に設け、そのハイパーバイザ１５上でＯＳ１３ＡおよびＯＳ１３Ｂの双方を動作させる構成とすることもできる。
【００２１】
ＯＳ１３Ａは、いわゆるリアルタイムＯＳであり、ＯＳ１３Ｂに比べてリアルタイム性が要求される処理、例えば、車両の走行あるいは安全に関係する処理などを主に実行する機能部が設けられている。このようなリアルタイムＯＳは、一般的に、ＯＳ１３Ａ自体に不具合が起きにくく、また、アプリケーションプログラムの実行時間などを予測あるいは制限できる等、汎用ＯＳに比べて相対的に安定性が高い設計となっている。このＯＳ１３Ａは、第１のオペレーティングシステムに相当する。以下、アプリケーションプログラムをアプリと称する。
【００２２】
ＯＳ１３Ｂは、いわゆる汎用ＯＳであり、ＯＳ１３Ａに比べるとリアルタイム性能や安定性は相対的に低いことが多いものの、マルチメディア機能のような汎用的な処理を容易に実行できるというメリットがある。このＯＳ１３Ｂは、第２のオペレーティングシステムに相当する。
【００２３】
各ＯＳ１３は、それぞれアプリを実行することにより、各種の機能部をソフトウェアで実現している。制御部１０が備える機能部としては、例えばメータ表示アプリ２０、ナビアプリ２１、通信アプリ２２、通知アプリ２３、およびバックアップ部２４などがある。なお、図１に示す機能部の数や種類あるいは機能部を実装するＯＳ１３は一例であり、これらに限定されない。
【００２４】
このとき、各ＯＳ１３では、ＯＳ１３自身またはＯＳ１３上で動作するアプリが利用するデータを、矢印Ｆ１Ａにて示すようにメインメモリ１２に一時データ１６として記憶する。そして、この一時データ１６は、詳細は後述するが、矢印Ｆ１Ｂとして示すようにフラッシュメモリ１１に保存データ１７として一括して記憶される。以下、メインメモリ１２に一時的に記憶したデータを一括してフラッシュメモリ１１にバックアップするする処理を一括処理と称する。
【００２５】
また、各ＯＳ１３は、矢印Ｆ２にて示すように、データをメインメモリ１２に記憶することなくフラッシュメモリ１１に保存データ１７として記憶することもある。以下、フラッシュメモリ１１に直接的にバックアップする処理を逐次処理と称する。
【００２６】
一括処理が行われるデータとしては、例えばナビアプリ２１が利用するマッチング情報、ロケーション情報および走行軌跡情報などのデータ、楽曲の再生位置などのデータ、故障診断用のいわゆるダイアグシスコードのようなデータ、ＯＳ１３のｄｕｍｐメモリのデータなどが考えられる。これらのデータは、例えば１秒に１回程度以上の頻度で更新されるため、更新されるごとにフラッシュメモリ１１に書き込むことが推奨されないと考えられる。
【００２７】
逐次処理が行われるデータとしては、例えば車両用装置を起動した時間や受信しているラジオ放送のチャンネルなどのデータが考えられる。これらのデータは、更新される頻度が少ないことから、更新されるごとにフラッシュメモリ１１に書き込んだとしても問題が少ないと考えられる。
【００２８】
メータ表示アプリ２０は、主としてメータディスプレイ２への表示を行う機能部として設けられている。このメータ表示アプリ２０は、速度計のように車両の走行に必要な情報を表示するものであるとともに、例えば１／６０秒程度の比較的短い周期で表示を更新する。そのため、メータ表示アプリ２０は、ＯＳ１３Ａに設けられている。このメータ表示アプリ２０が表示する画像は、例えばＬＶＤＳ形式の描画データとしてメータディスプレイ２に送信される。
【００２９】
ナビアプリ２１は、主としてセンターディスプレイ３への表示を行う機能部として設けられている。このナビアプリ２１は、例えばナビゲーション画面の生成および表示や経路案内の音声出力などのマルチメディア系の処理を行っている。そのため、ナビアプリ２１は、ＯＳ１３Ｂに設けられている。このナビアプリ２１が表示する画像は、例えばＬＶＤＳ形式の描画データとしてセンターディスプレイ３に送信される。
【００３０】
通信アプリ２２は、車両用装置１に接続されている外部装置４との間で通信を行う機能部として設けられている。通信アプリ２２は、例えばＵＳＢ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｗｉ−Ｆｉなどの既知の通信方式を利用して外部装置４と通信を行うものを採用することができる。外部装置４は、上記した携帯端末以外にも、タブレット、ＵＳＢメモリ、あるいはインターネット上のサーバなどを対象とすることができる。
【００３１】
通知アプリ２３は、車両用装置１の電源状態の変化を通知するバックアップ部２４に通知する。より詳細には、車両用装置１には、エンジン始動時のクランキングによる電圧低下に対応できる低電圧対応の電源回路が設けられており、その電源回路から制御部１０、記憶部１１およびメインメモリ１２に対して電源供給されている。そして、通知アプリ２３は、この低電圧対応の電源回路における電源状態の変化を通知する。このとき、通知アプリ２３は、車両用装置１の電源を制御する電源制御部５から電源状態を取得してバックアップ部２４に通知する。電源制御部５は、電源電圧の変化を取得しており、その取得結果を通知アプリ２３に通知する。これにより、通知アプリ２３は、電源状態の変化を取得することができる。
【００３２】
なお、電源制御部５は、図示しないＥＣＵから車両の状態を示す信号を受信可能に構成されている。そのため、車両用装置１を停止させてもよい状態になったことを示す停止信号が他のＥＣＵから送信され、その停止信号を制御部１０で受信したことをもって、電源状態が変化すると判定してバックアップ部２４に通知する構成とすることもできる。
【００３３】
このとき、通知アプリ２３は、電源制御部５を介して車両用装置１の動作を停止してもよい状態であることを示す信号を取得したことをもって、電源状態が変化したと判定する。本実施形態の場合、通知アプリ２３は、安定性が高いＯＳ１３Ａ上に設けられている。つまり、車両用装置１は、ＯＳ１３Ａ側をマスターとして、ＯＳ１３Ｂ側でバックアップを行うタイミングを制御している。この通知アプリ２３は、通知部に相当する。
【００３４】
バックアップ部２４は、通知アプリ２３によって電源状態の変化が通知されたタイミングで、制御部１０が利用するデータをフラッシュメモリ１１にバックアップする機能部である。本実施形態の場合、バックアップ部２４は、メインメモリ１２に記憶された一時データ１６をフラッシュメモリ１１にバックアップする。なお、図１ではバックアップ部２４を個別に設ける構成を示しているが、バックアップ部２４の機能を各アプリに実装する構成とすることもできる。このバックアップ部２４は、いわゆるミドルウェアとして実装されている。
【００３５】
また、バックアップ部２４は、自身が動作するＯＳ１３側においてバックアップの対象となるデータまたは当該データを特定可能な情報を、他のＯＳ１３側のバックアップ部２４に受け渡す。そして、バックアップ部２４は、データまたは当該データを特定可能な情報を受け渡された場合において受け渡し元のＯＳ１３に不具合が生じた場合、当該不具合が生じたＯＳ１３側のデータまたは当該データを特定可能な情報をフラッシュメモリ１１にバックアップする。
【００３６】
そして、バックアップ部２４は、他のＯＳ１３側の不具合が解消された場合、フラッシュメモリ１１にバックアップしたデータまたは当該データを特定可能な情報を、不具合が解消された他のＯＳ１３に受け渡す。また、バックアップ部２４は、フラッシュメモリ１１にバックアップする際、他の機能部によるデータの書き換えを停止させる。
【００３７】
このとき、各ＯＳ１３は、独自のデータあるいはＯＳ１３間で依存性のあるデータをそれぞれ利用している。そのため、バックアップ部２４は、各ＯＳ１３にそれぞれ設けられている。ＯＳ１３間で依存性のあるデータとしては、例えばメータディスプレイ２やセンターディスプレイ３をシームレスに連係させる際に必要になるデータなどが考えられる。
【００３８】
次に、上記した構成の車両用装置１の作用について説明する。
上記したように、統合型の車両用装置１の場合、複数のＯＳ１３上で各種の機能部がそれぞれ独自に動作している。そして、各ＯＳ１３にはそれぞれ独自に必要とするデータが存在することから、各ＯＳ１３にはそれぞれバックアップ部２４が設けられている。以下、ＯＳ１３Ａ側に設けられているバックアップ部２４を便宜的にバックアップ部２４Ａと称し、ＯＳ１３Ｂ側に設けられているバックアップ部２４を便宜的にバックアップ部２４Ｂと称する。
【００３９】
しかし、各ＯＳ１３側で個別にバックアップを行うと、各ＯＳ１３間で依存性のあるデータをバックアップする際に整合性が取れなくなるおそれがある。そこで、車両用装置１は、以下のようにして、複数のＯＳ１３動作する環境において、バックアップされるデータの整合性を取っている。
【００４０】
車両用装置１では、通常の動作中に各ＯＳ１３や各アプリによってデータが利用されている。そのとき、一部のデータは、次回起動された時などに用いるため、フラッシュメモリ１１に保存データ１７として記憶される。
【００４１】
さて、バックアップ部２４Ｂは、図２に示す処理を実行しており、ステップＳ１において、記憶するデータが一括処理のデータであるかを判定している。この場合、ＯＳ１３Ｂや各アプリからバックアップ部２４Ｂにデータを受け渡すこともできるし、ＯＳ１３Ｂや各アプリにバックアップ部２４Ｂの機能を実装し、ＯＳ１３Ｂや各アプリが自身で判定する構成とすることができる。以下、説明の簡略化のために、いずれの構成の場合についてもバックアップ部２４Ｂを主体として説明する。
【００４２】
バックアップ部２４Ｂは、一括処理の対象となるデータであると判定すると、ステップＳ１においてＹＥＳとなることから、データをバイパスする。このバイパスとは、メインメモリ１２に記憶するデータをバックアップ部２４Ａに受け渡す処理である。つまり、ＯＳ１３Ｂ側のバックアップ部２４Ｂは、通常の動作時において、一括処理の対象となるデータをＯＳ１３Ａ側に受け渡している。なお、バックアップ部２４Ｂは、一括処理の対象となるデータではないと判定すると、ステップＳ１においてＮＯとなることから、次のデータを待機する。
【００４３】
一方、ＯＳ１３Ａ側のバックアップ部２４Ａは、図３に示す処理を実行しており、ステップＳ１１において、ＯＳ１３Ｂ側からデータを受け渡された判定している。つまり、バックアップ部２４Ａは、データがバイパスされたかを判定している。バックアップ部２４Ａは、データを受け渡されていないと判定した場合には、ステップＳ１１においてＮＯとなることから、ステップＳ１３に移行して電源状態が通知されたかを判定する。そして、バックアップ部２４Ａは、電源状態が通知されていないと判定した場合には、ステップＳ１３においてＮＯとなることから、ステップＳ１１の判定およびステップＳ１３の判定を繰り返す。
【００４４】
これに対して、バックアップ部２４は、データを受け渡されたと判定した場合には、ステップＳ１１においてＹＥＳとなることから、ステップＳ１２において、受け渡されたデータをメインメモリ１２上の所定の領域に一時データ１６Ｂとして記憶する。なお、ＯＳ１３Ａ側のデータは、バックアップ部２４Ａを介して、または、ＯＳ１３Ａや各アプリに実装されたバックアップ部２４Ａの機能によって、メインメモリ１２に一時的に、あるいは、フラッシュメモリ１１に逐次記憶されている。
【００４５】
さて、バックアップ部２４Ａは、電源状態が通知されると、ステップＳ３においてＹＥＳとなることから、ステップＳ１４において他の機能部によるデータの書き換えを停止する。これにより、バックアップの最中にデータが更新されて整合性が取れなくなることを防止できる。
【００４６】
続いて、バックアップ部２４Ａは、ステップＳ１５において、バックアップを開始する。このとき、バックアップ部２４Ａは、メインメモリ１２上に記憶した一時データ１６Ａおよび一時データ１６Ｂを、フラッシュメモリ１１上に保存データ１７Ａおよび保存データ１７Ｂとして記憶する。つまり、バックアップ部２４Ａは、ＯＳ１３Ｂ側の一括処理の対象となるデータのバックアップを代行している。
【００４７】
これにより、ＯＳ１３Ａ側とＯＳ１３Ｂ側の一括処理の対象となるデータを、電源状態が通知されたタイミングでバックアップすることができ、データの整合性が崩れることが防止される。その後、バックアップ部２４Ａは、処理を終了する。なお、本実施形態では電源状態が通知されるのは車両用装置１を停止させる際であるため、バックアップが完了した時点で車両用装置１自体が終了シーケンスを開始し、その後停止することになる。
このように、車両用装置１では、通常の終了時においてデータの整合性が取れるようにしている。
【００４８】
ところで、バックアップ部２４Ａでバックアップした場合、次回の起動時にそのデータを受け渡す必要がある。そのため、バックアップ部２４Ａは、起動時に図４に示す処理を実行し、ステップＳ２１において、バイパスしたデータがあるかを判定している。つまり、バックアップ部２４Ａは、バックアップを代行したデータがあるかを判定している。
【００４９】
バックアップ部２４Ａは、バイパスしたデータがあると判定した場合には、ステップＳ２１においてＹＥＳとなることから、ステップＳ２２においてデータをＯＳ１３Ｂ側に受け渡す。なお、バックアップ部２４Ａは、バイパスしたデータがないと判定した場合には、ステップＳ２１においてＮＯとなることから、処理を終了する。
【００５０】
一方、バックアップ部２４Ｂは、起動時に図５に示す処理を実行し、ステップＳ３１において、データの受け渡しがあるかを判定している。バックアップ部２４Ｂは、データの受け渡しがあると判定した場合には、ステップＳ３１においてＹＥＳとなることから、受け渡されたデータを利用する。これにより、ＯＳ１３Ｂ側は、前回のデータを利用して動作することができる。
【００５１】
一方、バックアップ部２４Ｂは、データの受け渡しがないと判定した場合には、ステップＳ３１においてＮＯとなることから、ステップＳ３３において、例えば初期値などの所定のデータを利用する。これにより、ＯＳ１３Ｂは、初期値のデータに基づいて動作する。
【００５２】
ところで、ここまでは通常の動作について説明してきたが、車両用装置１には、データの整合性をとる以外にも重要なポイントがある。それは、データの適切な保持である。車両用装置１は、ＯＳ１３ＡとＯＳ１３Ｂが動作している統合型のものであり、複雑なシステム構成となっている。そして、ＯＳ１３Ｂは、上記したようにＯＳ１３Ａに比べると安定性が低く、また、外部装置４に接続されることから、相対的に不具合が生じるリスクが高いと考えられる。
【００５３】
そして、ＯＳ１３Ｂに不具合が生じた場合には、例えばＯＳ１３Ｂをリセットするなどして不具合を解消する必要がある。不具合としては、状態監視によるリセットやユーザの操作によるリセットなどが考えられる。その場合、ＯＳ１３Ａの動作が継続されたままでＯＳ１３Ｂだけが再起動することから、そのままでは、再起動する前と同じ状態ではなく、過去に記憶されたデータに基づいて動作することになり、再起動する前と同じ状態に復帰することが困難である。
【００５４】
そこで、バックアップ部２４Ａは、図６に示す処理を実行しており、ステップＳ４１において、ＯＳＢに不具合があるかを監視している。バックアップ部２４Ａは、ＯＳ１３Ｂに不具合がないと判定した場合には、ステップＳ４１においてＮＯとなることから、待機する。一方、バックアップ部２４Ａは、ＯＳＢに不具合があると判定した場合には、ステップＳ４１においてＹＥＳとなることから、ＯＳ１３Ｂをリセットする。
【００５５】
続いて、バックアップ部２４Ａは、ステップＳ４３においてＯＳ１３Ｂのリセットが完了したかを判定する。バックアップ部２４Ａは、ＯＳ１３Ｂのリセットが完了していなければ、ステップＳ４３においてＮＯとなることから、完了を待機する。
【００５６】
これに対して、バックアップ部２４Ａは、ＯＳ１３Ｂのリセットが完了したと判定すると、ステップＳ４３においてＹＥＳとなることから、ステップＳ４４においてバイパスしたデータがあるかをさらに判定する。バックアップ部２４は、バイパスしたデータがあると判定した場合には、ステップＳ４４においてＹＥＳとなることから、バイパスしたデータをＯＳ１３Ｂ側に受け渡す。
【００５７】
これにより、不具合が生じてＯＳ１３Ｂリセットされた場合であっても、リセット後には、バイパスしたデータつまりはリセットの直前まで利用していたデータを用いて、ＯＳ１３Ｂが動作することが可能になる。すなわち、リセットの前後においてデータを保持することができる。
このように、バックアップ部２４は、各ＯＳ１３において、電源状態の変化が通知されたタイミングでデータのバックアップを行っている。
【００５８】
以上説明した実施形態によれば、次のような効果を得ることができる。
車両用装置１は、複数のＯＳ１３が動作する制御部１０と、制御部１０が利用するデータを記憶するものであって書き換え回数の制限がある不揮発性の第１の記憶部としてのフラッシュメモリ１１と、制御部１０が利用するデータを一時的に記憶するものであって書き換え回数の制限がない第２の記憶部としてのメインメモリ１２とを備えている。また、車両用装置１は、複数のＯＳ１３にそれぞれ設けられ、制御部１０が利用するデータをフラッシュメモリ１１にバックアップするバックアップ部２４としてのバックアップ部２４と、電源状態の変化を通知する通知部としての通知アプリ２３とを備えている。
【００５９】
そして、バックアップ部２４は、通知アプリ２３から電源状態の変化が通知されたタイミングでデータをフラッシュメモリ１１にバックアップする。これにより、個別に動作している各ＯＳ１３におけるバックアップのタイミングを同期させることが可能となる。したがって、例えば各ＯＳ１３間で依存性のあるデータをバックアップする場合であっても、それらのデータの整合性をとることができる。
【００６０】
車両用装置１では、バックアップ部２４は、自身が動作するＯＳ１３側においてバックアップの対象となるデータを、他のＯＳ１３側のバックアップ部２４に受け渡し、他のＯＳ１３側のバックアップ部２４は、データを受け渡された場合において送信元のＯＳ１３に不具合が生じた場合、当該不具合が生じたＯＳ１３側のデータをフラッシュメモリ１１にバックアップする。これにより、ＯＳ１３に不具合が生じた場合であっても、データの保持ならびにデータの整合性をとることができる。
【００６１】
車両用装置１では、バックアップ部２４は、他のＯＳ１３側の不具合が解消された場合、フラッシュメモリ１１にバックアップしたデータを、不具合が解消された他のＯＳ１３に受け渡す。これにより、不具合の発生前と発生後とで整合性が取れた状態でデータを保存でき、同じデータを利用して動作することができる。
【００６２】
車両用装置１では、複数のＯＳ１３は、相対的に安定性が高い第１のＯＳ１３と、相対的に安定性が低い第２のＯＳ１３とを含んでいる。そして、第１のＯＳ１３Ａに設けられているバックアップ部２４は、第２のＯＳ１３Ｂの不具合を監視するとともに、第２のＯＳ１３Ｂに不具合が生じた際、第２のＯＳ１３Ｂ側のデータをフラッシュメモリ１１にバックアップする。これにより、不具合が相対的に生じやすいＯＳ１３Ｂ側のデータの保持と整合性の確保とを行うことができる。
【００６３】
車両用装置１では、バックアップ部２４は、フラッシュメモリ１１にデータをバックアップする際、他の機能部によるデータの書き換えを停止させる。これにより、バックアップ中にデータが更新されて整合性が取れなくなることを防止できる。
【００６４】
実施形態ではデータ自体を他のＯＳ１３に受け渡す構成を例示したが、バックアップ部２４は、例えばメインメモリ１２上の一時データ１６のアドレスなど、データを特定可能な情報を他のＯＳ１３に受け渡す構成とすることができる。このような構成によっても、不具合が生じてバックアップを代行することができる。
【００６５】
また、バックアップ部２４は、バックアップの対象となるデータを絞り込んで、または、バックアップの対象となるデータに優先順位を設定して、他のＯＳ１３に設けられているバックアップ部２４に受け渡す構成とすることができる。これにより、バックアップやバイパスに要する負荷を低減することができる。
【００６６】
実施形態ではデータを他のＯＳ１３に受け渡す構成を例示したが、データを受け渡すことなく、電源状態が通知されたタイミングで各ＯＳ１３上のバックアップ部２４がそれぞれ一括処理を行う構成とすることができる。このような構成によっても、一括処理を行うタイミングを同期させることができ、データの整合性をとることができる。
【００６７】
実施形態ではバックアップ部２４またはＯＳ１３Ｂや各アプリに実装したバックアップ部２４の機能によって一括処理の対象となるデータであるかを判定する構成を例示したが、メインメモリ１２への記憶はＯＳ１３Ｂや各アプリが行い、一括処理の対象となるデータであること、ならびに、そのデータを特定可能なメインメモリ１２上のアドレスなどの情報を個別に設けたバックアップ部２４に通知する構成とすることができる。
【００６８】
実施形態では通知アプリ２３をＯＳ１３Ａに設ける構成を例示したが、各ＯＳ１３に設ける構成とすることができる。また、通知アプリ２３をハイパーバイザ１５に設ける構成とすることができる。
【００６９】
本開示は、実施例に準拠して記述されたが、本開示は当該実施例や構造に限定されるものではないと理解される。本開示は、様々な変形例や均等範囲内の変形をも包含する。加えて、様々な組み合わせや形態、さらには、それらに一要素のみ、それ以上、あるいはそれ以下、を含む他の組み合わせや形態をも、本開示の範疇や思想範囲に含まれるものである。
【００７０】
本開示に記載の制御部及びその手法は、コンピュータプログラムにより具体化された一つ乃至は複数の機能を実行するようにプログラムされたプロセッサ及びメモリを構成することによって提供された専用コンピュータにより、実現されてもよい。あるいは、本開示に記載の制御部及びその手法は、一つ以上の専用ハードウェア論理回路によってプロセッサを構成することによって提供された専用コンピュータにより、実現されてもよい。もしくは、本開示に記載の制御部及びその手法は、一つ乃至は複数の機能を実行するようにプログラムされたプロセッサ及びメモリと一つ以上のハードウェア論理回路によって構成されたプロセッサとの組み合わせにより構成された一つ以上の専用コンピュータにより、実現されてもよい。また、コンピュータプログラムは、コンピュータにより実行されるインストラクションとして、コンピュータ読み取り可能な非遷移有形記録媒体に記憶されていてもよい。
【符号の説明】
【００７１】
図面中、１は車両用装置、１０は制御部、１１はフラッシュメモリ（第１の記憶部）、１２はメインメモリ（第２の記憶部）、１３、１３Ａ、１３Ｂはオペレーティングシステム、１３Ａは第１のオペレーティングシステム、１３Ｂは第２のオペレーティングシステム、２０はメータ表示アプリ（機能部）、２１はナビアプリ（機能部）、２２は通信アプリ（機能部）、２３は通知アプリ（通知部）、２４、２４Ａ、２４Ｂはバックアップ部を示す。
【図１】
2020194333.tif 000003
【図２】
2020194333.tif 000004
【図３】
2020194333.tif 000005
【図４】
2020194333.tif 000006
【図５】
2020194333.tif 000007
【図６】
2020194333.tif 000008