JP2020009144A - 情報処理装置、移動体、情報処理方法、およびプログラム - Google Patents

情報処理装置、移動体、情報処理方法、およびプログラム Download PDF

Info

Publication number
JP2020009144A
JP2020009144A JP2018129598A JP2018129598A JP2020009144A JP 2020009144 A JP2020009144 A JP 2020009144A JP 2018129598 A JP2018129598 A JP 2018129598A JP 2018129598 A JP2018129598 A JP 2018129598A JP 2020009144 A JP2020009144 A JP 2020009144A
Authority
JP
Japan
Prior art keywords
unit
secure
information
setting
information processing
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.)
Granted
Application number
JP2018129598A
Other languages
English (en)
Other versions
JP6877388B2 (ja
Inventor
竜太 奈良
Ryuta Nara
竜太 奈良
川端 健
Ken Kawabata
健 川端
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2018129598A priority Critical patent/JP6877388B2/ja
Priority to US16/285,271 priority patent/US10909270B2/en
Publication of JP2020009144A publication Critical patent/JP2020009144A/ja
Application granted granted Critical
Publication of JP6877388B2 publication Critical patent/JP6877388B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/74Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2149Restricted operating environment

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】信頼性向上を図る。【解決手段】情報処理装置10は、セキュアモードSとノンセキュアモードNSとを切替えて動作する。セキュアOS部22は、セキュアモードSで動作する。ノンセキュアOS部24は、ノンセキュアモードNSで動作する。取得部22Dは、セキュアモードのときに、セキュアOS部22とノンセキュアOS部24で共有する共有キャッシュ領域19Aに対してノンセキュアOS部24が実行する初期化処理に関する初期化処理情報を自律的に取得する。有効化部22Fは、初期化処理情報に基づいて、共有キャッシュ領域19AをセキュアOS部22とノンセキュアOS部24とで共有して利用可能に有効化する。【選択図】図3

Description

本発明の実施形態は、情報処理装置、移動体、情報処理方法、およびプログラムに関する。
従来より、情報処理装置の仮想化技術が知られている。仮想化技術を用いることにより単一の情報処理装置で複数のオペレーティングシステム(OS)を並行して実行させることができる。また、仮想化技術を用いてOSを切替える技術が開示されている。例えば、よりセキュリティ性の高いセキュアモードで動作するOSとセキュリティ性の低いノンセキュアモードで動作するOSとを切替えて処理を行う技術が知られている。
複数のOSの各々は、起動時には、各々の実行環境の初期化処理や使用するリソースに対する設定を実行する。具体的には、信頼性確保のため、セキュアモードで動作するセキュアOSが初期化処理を実行した後に、ノンセキュアモードで動作するノンセキュアOSが初期化処理を実行する。但し、セキュアOSとノンセキュアOSとで共有する共有リソースの有効化については、セキュアOSは、ノンセキュアOS側が共有リソースを有効化可能な段階に到ったことを示す信号をノンセキュアOSから受付けるまで待機する必要があった。このため、従来では、共有リソースの有効化に関する処理を、セキュリティ性の低いノンセキュアOSから出力される信号に従って実行する必要があり、信頼性低下が発生する場合があった。
特開2017−142722号公報 特許第4806212号公報
本発明が解決しようとする課題は、信頼性の向上を図ることができる、情報処理装置、移動体、情報処理方法、およびプログラムを提供することである。
実施の形態の情報処理装置は、セキュアモードとノンセキュアモードとを切替えて動作する情報処理装置であって、前記セキュアモードで動作するセキュアOS部と、前記ノンセキュアモードで動作するノンセキュアOS部と、を備える。取得部は、前記セキュアモードのときに、前記セキュアOS部と前記ノンセキュアOS部で共有する共有リソースに対して前記ノンセキュアOS部が実行する初期化処理に関する初期化処理情報を自律的に取得する。有効化部は、前記初期化処理情報に基づいて、前記共有リソースを前記セキュアOS部と前記ノンセキュアOS部とで共有して利用可能に有効化する。
情報処理装置のハードウェア構成例の図。 情報処理装置の機能構成の図。 情報処理装置の機能構成の図。 キャッシュ設定情報のデータ構成を示す模式図。 設定管理情報のデータ構成を示す模式図。 情報処理の手順の一例を示すフローチャート。 情報処理装置の機能構成の図。 情報処理の手順のフローチャート。 情報処理システムの模式図。
以下、図面を参照しながら、情報処理装置、移動体、情報処理方法、およびプログラムの一の実施形態を説明する。
(第1の実施の形態)
図1は、本実施の形態に係る情報処理装置10のハードウェア構成例を示す図である。情報処理装置10は、プロセッサ11と、物理メモリ12と、メモリアクセス制御部13と、タイマ14と、を備える。プロセッサ11、メモリアクセス制御部13、およびタイマ14は、バス15を介して接続されている。物理メモリ12は、メモリアクセス制御部13を介してバス15に接続されている。
プロセッサ11は、コンピュータシステムを集積回路として組み込んだものであり、コンピュータシステム上で動作するプログラム(ソフトウェア)に従って、様々な制御を実行する。プロセッサ11は、例えば、CPU(Central Processing Unit)やマイクロプロセッサである。
物理メモリ12は、各種データを記憶する。物理メモリ12は、例えば、DRAM(Dynamic Random Access Memory)、SRAM(Static Randam Access Memory)、MRAM(Magnetoresistive Randam Access Memory)などである。
メモリアクセス制御部13は、物理メモリ12へのアクセスを制御する。タイマ14は、時間カウントを行う機器である。
プロセッサ11は、S−MMU(Memory Management Unit)16と、NS−MMU17と、キャッシュ制御部18と、キャッシュメモリ19と、を含む。
S−MMU16は、セキュアモードで動作するOS(Operating System)による、共有リソースへのアクセスを制御する。NS−MMU17は、ノンセキュアモードで動作するOSによる、共有リソースへのアクセスを制御する。キャッシュ制御部18は、キャッシュメモリ19へのアクセスを制御する。セキュアモード、ノンセキュアモード、共有リソースの詳細は後述する。
図2は、本実施の形態の情報処理装置10の機能構成の概要を示す図である。情報処理装置10は、セキュアOS部22と、ノンセキュアOS部24と、モニタ部26と、ハードウェア部28と、を備える。
ハードウェア部28は、情報処理装置10におけるハードウェアに関する部分であり、プロセッサ11、物理メモリ12、およびタイマ14などを含む。
本実施の形態では、プロセッサ11は、複数のOSを実行する機能を有する。本実施の形態では、プロセッサ11は、セキュアモードとノンセキュアモードと称される二つのモードで、プログラムを分離して実行可能である。すなわち、プロセッサ11は、セキュアモードとノンセキュアモードとで、それぞれ別々のOSやアプリケーションを動作させることが可能である。すなわち、本実施の形態の情報処理装置10は、セキュアモードとノンセキュアモードとを切替えて動作する。
セキュアモードは、脆弱性混入リスクを最小化したOSやアプリケーションを動作させるモードである。すなわち、セキュアモードは、セキュリティ性の高いOSやアプリケーションを動作させるモードである。以下、セキュアモードSと称して説明する。ノンセキュアモードは、セキュアモードSに比べて高機能で利用しやすい一方、コード規模が大きく脆弱性が生じやすいOSやアプリケーションを、動作させるモードである。すなわち、ノンセキュアモードは、セキュアモードSに比べてセキュリティ性の低いOSやアプリケーションを動作させるモードである。以下、ノンセキュアモードNSと称して説明する。
本実施の形態の情報処理装置10は、セキュアモードSで動作するOSとして、セキュアOS部22を備える。セキュアOS部22は、プロセッサ11がセキュアOSを実行することにより機能する。
また、情報処理装置10は、ノンセキュアモードNSで動作するOSとして、ノンセキュアOS部24を備える。ノンセキュアOS部24は、プロセッサ11がノンセキュアOSを実行することにより機能する。
モニタ部26は、プロセッサ11がモニタプログラムを実行することにより機能する。モニタ部26は、セキュアモードSまたはノンセキュアモードNSへモードを切替える。具体的には、モニタ部26は、セキュアOS部22またはノンセキュアOS部24へ仮想マシンを提供し、セキュアOS部22またはノンセキュアOS部24を仮想マシン上で動作させる。すなわち、モニタ部26は、セキュアOS部22およびノンセキュアOS部24の何れか一方が有効となるように切替えて機能させる。モニタ部26は、セキュアOS部22またはノンセキュアOS部24からの呼出や、ハードウェア部28等からの割込みにより、モードの切替えを実行する。
本実施の形態では、情報処理装置10には、共有リソースが予め規定されている。共有リソースは、セキュアOS部22とノンセキュアOS部24で共有するリソースである。共有リソースは、例えば、共有キャッシュ領域や、共有物理メモリ領域や、共有アプリケーションなどである。すなわち、共有リソースは、ハードウェアであってもよいし、ソフトウェアであってもよい。本実施の形態では、共有リソースが、ハードウェアである場合を一例として説明する。また、本実施の形態では、共有リソースが、共有キャッシュ領域である場合を一例として説明する。共有キャッシュ領域は、例えば、L2キャッシュ(level2 cache)などである。
図3は、情報処理装置10の機能構成の一例を示す図である。
情報処理装置10は、セキュアOS部22と、ノンセキュアOS部24と、モニタ部26と、ハードウェア部28と、を備える。
ハードウェア部28は、タイマ14と、物理メモリ12と、メモリアクセス制御部13と、キャッシュ制御部18と、キャッシュメモリ19と、を備える。
キャッシュメモリ19には、共有キャッシュ領域19Aが予め設けられている。共有キャッシュ領域19Aは、共有リソースの一例である。
キャッシュ制御部18は、キャッシュメモリ19へのアクセスを制御する。キャッシュ制御部18は、キャッシュ設定情報18Aを記憶する。キャッシュ設定情報18Aは、共有キャッシュ領域19Aに対する設定項目の設定状況を管理するための情報である。キャッシュ設定情報18Aの詳細は、後述する。
次に、モニタ部26について説明する。モニタ部26は、切替部26Aと、タイマハンドラ部26Bと、切替指示ハンドラ部26Cと、を備える。
タイマハンドラ部26Bは、タイマ14から割込み信号を受付ける。本実施の形態では、タイマ14は、所定時間ごとに、割込み信号をタイマハンドラ部26Bへ通知する。
切替指示ハンドラ部26Cは、モードの切替命令を切替部26Aへ送る。切替命令は、切替指示ハンドラ部26Cから切替部26Aへ出力される命令であり、ノンセキュアモードNSからセキュアモードSへ、または、セキュアモードSからノンセキュアモードNSへ、の切替えを行うための命令である。
切替指示ハンドラ部26Cは、切替指示を受付けたときに、モードの切替命令を切替部26Aへ送る。切替指示は、セキュアモニタコール(SMC)と称される場合がある。切替指示ハンドラ部26Cは、セキュアOS部22およびノンセキュアOS部24から、切替指示を受付ける。
切替指示は、例えば、第1切替指示や、第2切替指示である。第1切替指示は、ノンセキュアモードNSからセキュアモードSへ切替える切替指示である。第2切替指示は、セキュアモードSからノンセキュアモードNSへ切替える切替指示である。
切替指示ハンドラ部26Cは、第1切替指示を受付けたときに、切替部26Aに第1切替命令を送る。第1切替命令は、ノンセキュアモードNSからセキュアモードSへモードを切替える切替命令である。切替部26Aは、第1切替命令を受け付けたときに、ノンセキュアモードNSからセキュアモードSへモードを切替える。モードがセキュアモードSへ切替えられると、セキュアOS部22が動作可能となる。
また、切替指示ハンドラ部26Cは、第2切替指示を受付けたときに、切替部26Aに第2切替命令を送る。第2切替命令は、セキュアモードSからノンセキュアモードNSへモードを切替える切替命令である。切替部26Aは、第2切替命令を受付けたときに、セキュアモードSからノンセキュアモードNSへモードを切替える。ノンセキュアモードNSへ切替えられると、ノンセキュアOS部24が動作可能となる。
なお、切替部26AによるノンセキュアモードNSとセキュアモードSとの切替えは、具体的には、ハードウェア部28の有する少なくとも1bitのフラグを書き換えることにより行われる。例えば、このフラグが“0”である場合、セキュアモードSとなり、このフラグが“1”である場合、ノンセキュアモードNSとなる。
このため、切替部26Aは、第1切替命令を受付けたときに、上記フラグをノンセキュアモードNSを示す“1”からセキュアモードSを示す“0”に書き換えることで、ノンセキュアモードNSからセキュアモードSにモードを切替える。また、切替部26Aは、第2切替命令を受付けたときに、上記フラグをセキュアモードSを示す“0”からノンセキュアモードNSを示す“1”に書き換えることで、セキュアモードSからノンセキュアモードNSにモードを切替える。
なお、フラグが“1”である場合にセキュアモードSとなり、このフラグが“0”である場合にノンセキュアモードNSとしてもよい。
なお、切替部26Aは、更に、タイマハンドラ部26Bから切替命令を受付けてもよい。例えば、タイマハンドラ部26Bは、タイマ14から割込み信号を受付けると、セキュアモードSへの第1切替命令を、切替部26Aへ送ってもよい。すなわち、切替部26Aは、更に、タイマ14による割込み信号に応じて、モードの切替えを行ってもよい。
次に、セキュアOS部22およびノンセキュアOS部24について説明する。情報処理装置10の起動時には、セキュアOS部22およびノンセキュアOS部24の各々が、実行環境の初期化や、使用するリソースの設定などの初期化処理を実行する。本実施の形態では、情報処理装置10の起動時(すなわち初期化処理時)に機能する機能部について説明する。なお、情報処理装置10の初期状態のモードは、セキュアモードSであるものとして説明する。すなわち、情報処理装置10では、まず、セキュアOS部22が初期化処理を実行する。
まず、セキュアOS部22について説明する。セキュアOS部22は、セキュアモードSで動作するOSである。セキュアOS部22は、S−MMU初期化部22Aと、管理部22Bと、取得部22Dと、判定部22Eと、有効化部22Fと、呼出部22Gと、を備える。すなわち、S−MMU初期化部22A、管理部22B、設定管理情報22C、取得部22D、判定部22E、有効化部22F、および呼出部22Gは、セキュアモードSで動作する。
S−MMU初期化部22Aは、S−MMU16(図1参照)を初期化する。詳細には、S−MMU初期化部22Aは、情報処理装置10の起動時に、S−MMU16を初期化する。上述したように、S−MMU16は、セキュアOS部22による共有リソースへのアクセスを制御する機能部である。
上述したように、本実施の形態では、共有リソースが共有キャッシュ領域19Aである場合を一例として説明する。このため、本実施の形態では、S−MMU16は、セキュアOS部22による共有キャッシュ領域19Aへのアクセスを制御する機能部である。S−MMU16は、共有キャッシュ領域19Aに対する1または複数の設定項目の各々に対して、様々な設定を行うことで、セキュアOS部22による共有キャッシュ領域19Aへのアクセスを制御する。
S−MMU初期化部22Aは、共有キャッシュ領域19Aに対する1または複数の設定項目の内、S−MMU16(すなわち、セキュアOS部22)が設定を担当する設定項目に対して、初期設定値として予め定められた設定値を登録することで、S−MMU16を初期化する。初期設定値は、初期化処理時に設定されるべき設定値であり、設定項目ごとに予め値が定められている。なお、以下では、共有キャッシュ領域19Aに対する設定項目の数は、複数である場合を一例として説明する。
詳細には、S−MMU初期化部22Aは、共有キャッシュ領域19Aに対する複数の設定項目の内、セキュアOS部22(S−MMU16)が担当する1または複数の設定項目の各々について、設定項目ごとに予め定められた設定場所に、初期設定値として予め定められた設定値を登録することで、S−MMU16を初期化する。
ここで、ハードウェア部28のキャッシュ制御部18は、キャッシュ設定情報18Aに対する複数の設定項目の各々に対して設定されている、設定値を管理する機能を更に有する。具体的には、ハードウェア部28は、キャッシュ設定情報18Aを用いて、設定項目の各々に対して設定されている設定値を管理する。
図4は、キャッシュ設定情報18Aのデータ構成の一例を示す模式図である。キャッシュ設定情報18Aは、設定項目と、担当情報と、設定場所と、設定値と、を対応付けたデータベースである。なお、キャッシュ設定情報18Aのデータ形式は、データベースに限定されない。
設定項目は、共有リソースに対する設定項目を示す。上述したように、本実施の形態では、共有キャッシュ領域19Aに対する設定項目を示す。
担当情報は、対応する設定項目に対する設定を、セキュアOS部22およびノンセキュアOS部24の何れが担当するかを示す情報である。担当情報“S”は、対応する設定項目に対する設定を、設定をセキュアOS部22が担当することを示す。担当情報“NS”は、対応する設定項目に対する設定を、ノンセキュアOS部24が担当することを示す。
すなわち、共有キャッシュ領域19Aには、セキュアOS部22が担当する設定項目と、ノンセキュアOS部24が担当する設定項目と、が存在する。
設定場所は、対応する設定項目の設定値の格納場所を示す。設定場所は、例えば、物理メモリ12やキャッシュメモリ19における、特定の記憶領域の先頭アドレスなどによって表される。
キャッシュ設定情報18Aにおける設定値は、対応する設定項目の設定場所に、現在登録されている設定値を示す。
キャッシュ制御部18は、所定時間ごとまたは予め定めたタイミング毎に、キャッシュ設定情報18Aに登録されている設定項目の各々に対応する設定場所にアクセスし、該設定場所に登録されている設定値を、キャッシュ設定情報18Aに登録する。このため、キャッシュ設定情報18Aには、キャッシュ設定情報18Aに規定されている設定項目の各々に対応する設定場所に、現在登録されている設定値が、登録される。
このため、S−MMU初期化部22AによるS−MMU16の初期化処理の終了時には、キャッシュ設定情報18Aにおける、担当情報“S”に対応する設定項目に対応する設定値として、初期設定値が登録された状態となる。
図3に戻り説明を続ける。なお、S−MMU初期化部22Aは、S−MMU16の初期化処理の終了時に、S−MMU16の初期化処理の終了を示す信号をキャッシュ制御部18へ通知してもよい。この場合、キャッシュ制御部18は、該通知を受付けたときに、キャッシュ設定情報18Aにおける担当情報“S”に対応する設定場所の各々に設定されている設定値を読取り、キャッシュ設定情報18Aへ登録すればよい。
S−MMU初期化部22Aは、S−MMU16の初期化が終了すると、ノンセキュアモードNSへ切替える第2切替命令を呼出部22Gへ通知する。
呼出部22Gは、S−MMU初期化部22A、判定部22E、または有効化部22Fから第2切替命令を受付けたときに、ノンセキュアモードNSへ切替える第2切替指示を、切替指示ハンドラ部26Cへ通知する。
上述したように、第2切替指示を受付けた切替指示ハンドラ部26Cは、第2切替命令を切替部26Aへ通知する。第2切替命令を受付けた切替部26Aは、セキュアモードSからノンセキュアモードNSへモードを切替える。そして、切替部26Aは、ノンセキュアモードNSへ切替えたことを示す信号を、ノンセキュアOS部24へ通知する。
セキュアOS部22における、管理部22B、設定管理情報22C、取得部22D、判定部22E、および有効化部22Fの詳細は、後述する。
次に、ノンセキュアOS部24について説明する。ノンセキュアOS部24は、ノンセキュアモードNSで動作するOSである。本実施の形態では、ノンセキュアOS部24は、OS初期化部24Aと、モニタ呼出部24Cと、を有する。
OS初期化部24Aは、ノンセキュアOS部24を初期化する。OS初期化部24Aは、情報処理装置10の起動時において、セキュアモードSからノンセキュアモードNSへモードが切替ったときに、ノンセキュアOS部24の初期化を実行する。
OS初期化部24Aは、NS−MMU初期化部24Bを含む。NS−MMU初期化部24Bは、NS−MMU17(図1参照)を初期化する。上述したように、NS−MMU17は、ノンセキュアOS部24による共有キャッシュ領域19Aへのアクセスを制御する機能部である。NS−MMU17は、共有キャッシュ領域19Aに対する複数の設定項目の各々に対して様々な設定を行うことで、ノンセキュアOS部24による共有キャッシュ領域19Aへのアクセスを制御する。
NS−MMU初期化部24Bは、共有キャッシュ領域19Aに対する複数の設定項目の内、NS−MMU初期化部24B(すなわち、ノンセキュアOS部24)が設定を担当する設定項目に対して、初期設定値として予め定められた設定値を登録することで、NS−MMU17を初期化する。
詳細には、NS−MMU初期化部24Bは、共有キャッシュ領域19Aに対する複数の設定項目の内、ノンセキュアOS部24(NS−MMU17)が設定を担当する設定項目に対して、設定項目ごとに予め定められた設定場所に、初期設定値として予め定められた設定値を登録することで、NS−MMU17を初期化する。
このため、NS−MMU初期化部24Bによる初期化処理の進行度合に応じて、ノンセキュアOS部24(NS−MMU17)が設定を担当する設定項目の設定場所には、初期設定値を示す設定値が順次登録されていく。
ここで、上述したように、ハードウェア部28のキャッシュ制御部18は、所定時間ごとまたは予め定めたタイミング毎に、キャッシュ設定情報18Aに登録されている各設定項目の各々に対応する設定場所にアクセスし、該設定場所に登録されている設定値を、キャッシュ設定情報18Aに登録する。
このため、キャッシュ設定情報18Aには、NS−MMU初期化部24BによるNS−MMU17の初期化処理の進行度合に応じて、初期設定値として予め定められた設定値が順次登録されることとなる(図4参照)。
OS初期化部24Aは、ノンセキュアOS部24の初期化処理が終了すると、第1切替命令をモニタ呼出部24Cへ通知する。第1切替命令を受付けたモニタ呼出部24Cは、第1切替指示を切替指示ハンドラ部26Cへ通知する。
なお、NS−MMU初期化部24BによるNS−MMU17の初期化処理中に、切替部26Aが、ノンセキュアモードNSからセキュアモードSへモードを切替える場合がある。例えば、タイマ14による割込み信号に応じて、切替部26AがノンセキュアモードNSからセキュアモードSへモードを切替える場合などである。
この場合、NS−MMU初期化部24Bによる初期化処理の途中、すなわち、初期設定値を未設定の設定項目が存在する場合であっても、ノンセキュアモードNSからセキュアモードSへモードが切替えられる。
次に、セキュアOS部22の取得部22D、判定部22E、有効化部22Fについて説明する。
取得部22Dは、セキュアモードSのときに、初期化処理情報を自律的に取得する。初期化処理情報とは、ノンセキュアOS部24(NS−MMU初期化部24B)が共有キャッシュ領域19Aに対して実行する初期化処理に関する情報である。自律的に取得する、とは、ノンセキュアOS部24から初期化終了に関する信号を受付ける等の何等かの受信信号をトリガとすることなく、取得部22D側のタイミングで初期化処理情報を取得する事を意味する。
例えば、初期化処理情報は、ノンセキュアOS部24による共有キャッシュ領域19Aに対する初期化処理の進行度合を示す。本実施の形態では、取得部22Dは、キャッシュ制御部18から、初期化処理情報を自律的に取得する。
上述したように、キャッシュ設定情報18Aには、NS−MMU初期化部24BによるNS−MMU17の初期化処理の進行度合に応じて、初期設定値として予め定められた設定値が順次登録される。また、キャッシュ設定情報18Aにおける、初期設定値が未設定の設定項目には、初期設定値とは異なる値の設定値が登録されている。
このため、取得部22Dは、キャッシュ制御部18のキャッシュ設定情報18Aから、担当情報“NS”に対応する設定項目の設定値を読取ることで、初期化処理の進行度合を示す初期化処理情報を自律的に取得する。言い換えると、取得部22Dは、共有キャッシュ領域19Aに対する複数の設定項目の内、ノンセキュアOS部24が担当する設定項目の設定場所に設定されている設定値を、初期化処理情報として取得する。
次に、判定部22Eについて説明する。判定部22Eは、取得部22Dで取得した初期化処理情報が、共有キャッシュ領域19A(共有リソース)の有効化条件を満たすか否かを判定する。有効化条件は、セキュアOS部22およびノンセキュアOS部24の双方が利用可能となるように、共有キャッシュ領域19Aを有効化する条件を示す。有効化条件は、予め定めればよい。
例えば、判定部22Eは、ノンセキュアOS部24(NS−MMU初期化部24B)による共有キャッシュ領域19Aに対する初期化処理の進行度合が、有効化条件を満たすか否かを判定する。
本実施の形態では、判定部22Eは、取得部22Dから取得した初期化処理情報と、管理部22Bで管理されている設定管理情報22Cと、を用いて、有効化条件を満たすか否かを判断する。
管理部22Bは、設定管理情報22Cを管理する。設定管理情報22Cは、共有リソースである共有キャッシュ領域19Aの設定項目の各々に対する、初期設定値の設定状況を管理するための情報である。
図5は、設定管理情報22Cのデータ構成の一例を示す模式図である。設定管理情報22Cは、設定項目と、担当情報と、設定場所と、初期設定値と、設定済情報と、を対応付けたデータベースである。なお、設定管理情報22Cのデータ形式は、データベースに限定されない。なお、設定管理情報22Cは、設定項目と、担当情報と、設定場所と、初期設定値と、を対応づけた情報であればよく、設定済情報を含まない形態であってもよい。本実施の形態では、設定管理情報22Cは、設定済情報を含む形態を、一例として説明する。
上述したように、初期設定値は、初期化処理時に設定されるべき設定値であり、設定項目ごとに予め値が定められている。設定管理情報22Cには、共有キャッシュ領域19Aに対する設定項目の各々に対応する、担当情報、設定情報、および初期設定値が予め登録されている。設定管理情報22Cに登録されている初期設定値は、対応する設定項目に対して予め定められた、初期化処理時に設定されるべき設定値である。
設定済情報は、対応する設定項目が初期設定済であるか否かを示す情報である。本実施の形態では、設定済情報として、設定済を示す“済”、または設定未を示す“未”が登録される。設定済情報は、判定部22Eによって更新される。
判定部22Eは、共有キャッシュ領域19Aから取得した初期化処理情報としての設定値が、該設定値の設定項目に対応する初期設定値と同じ値である場合、該設定項目に対応する設定済情報に“済”を登録する。また、判定部22Eは、共有キャッシュ領域19Aから取得した初期化処理情報としての設定値が、該設定値の設定項目に対応する初期設定値と異なる値である場合、該設定項目に対応する設定済情報に“未”を登録する。
このため、進行度合は、設定管理情報22Cにおける、担当情報“NS”に対応する設定項目の内、設定済情報“済”を登録された設定項目の割合によって表される。言い換えると、進行度合は、取得部22Dで取得した初期化処理情報に示される、ノンセキュアOS部24が担当する設定項目の設定場所に設定されている設定値と、設定管理情報22CにおけるノンセキュアOS部24が担当する設定項目に対する初期設定値と、が一致する割合によって表される。
そして、判定部22Eは、この割合によって表される進行度合が有効化条件を満たすか否かを判定する。本実施の形態では、判定部22Eは、この割合によって表される進行度合が閾値以上である場合、有効化条件を満たすと判定する。この閾値は、設定管理情報22Cに登録されている設定項目の内容などに応じて予め定めればよい。例えば、設定管理情報22Cにおける、共有キャッシュ領域19Aの有効化に必要な設定内容を示す設定項目の割合が高いほど、より高い閾値(より100%に近い閾値)を定めればよい。閾値は、具体的には、50%、60%、70%、80%、90%、100%などであるが、これらの値に限定されない。
すなわち、判定部22Eは、取得部22Dで取得した初期化処理情報によって示される進行度合が、設定管理情報22Cにおける、ノンセキュアOS部24が担当する全ての設定項目に対応する初期設定値が設定場所に設定済であることを示す場合、有効化条件を満たすと判定する。
このため、判定部22Eは、NS−MMU初期化部24Bによる初期化処理が終了済である場合に、有効化条件を満たすと判定する。
有効化部22Fは、取得部22Dで取得した初期化処理情報に基づいて、共有キャッシュ領域19AをセキュアOS部22とノンセキュアOS部24とで共有して利用可能に有効化する。詳細には、判定部22Eが初期化処理情報に基づいて有効化条件を満たすと判定したときに、有効化部22Fは、共有キャッシュ領域19Aを有効化する。
具体的には、有効化部22Fは、共有キャッシュ領域19Aの有効化命令をキャッシュ制御部18へ通知する。有効化命令を受付けたキャッシュ制御部18は、キャッシュメモリ19の共有キャッシュ領域19Aを、セキュアOS部22とノンセキュアOS部24で共有して利用可能に有効化する。
有効化部22Fは、共有キャッシュ領域19Aを有効化した後に、第2切替命令を呼出部22Gへ通知してもよい。
次に、本実施の形態の情報処理装置10が実行する情報処理の手順の一例を説明する。
図6は、情報処理装置10が実行する情報処理の手順の一例を示す、フローチャートである。情報処理装置10は、情報処理装置10の起動時に、図6に示す情報処理の手順を実行する。
まず、S−MMU初期化部22Aが、S−MMU16を初期化する(ステップS100)。次に、セキュアOS部22の呼出部22Gが、第2切替指示を切替指示ハンドラ部26Cへ通知する。第2切替指示を受付けた切替指示ハンドラ部26Cは、第2切替命令を切替部26Aへ通知する。
第2切替命令を受付けた切替部26Aは、セキュアモードSからノンセキュアモードNSへモードを切替える(ステップS102)。
次に、NS−MMU初期化部24Bが、NS−MMU17の初期化処理を開始する(ステップS104)。
次に、切替部26Aが、切替指示ハンドラ部26Cから、セキュアモードSへ切替える第1切替命令を受付けたと判断するまで、否定判断を繰返す(ステップS106:No)。上述したように、切替指示ハンドラ部26Cは、呼出部22G、モニタ呼出部24C、およびタイマハンドラ部26Bの何れかから、セキュアモードSへの第1切替指示を受付けたときに、第1切替命令を切替部26Aへ通知する。
ステップS106で肯定判断すると(ステップS106:Yes)、ステップS108へ進む。ステップS108では、切替部26Aが、ノンセキュアモードNSからセキュアモードSへモードを切替える(ステップS108)。
次に、取得部22Dが、初期化処理情報をキャッシュ制御部18から取得する(ステップS110)。
次に、判定部22Eが、ステップS110で取得した初期化処理情報と、設定管理情報22Cと、を用いて、共有キャッシュ領域19Aの有効化条件を満たすか否かを判断する(ステップS112)。
有効化条件を満たさないと判断した場合(ステップS112:No)、上記ステップS102へ戻る。一方、有効化条件を満たすと判断した場合(ステップS112:Yes)、ステップS114へ進む。
ステップS114では、有効化部22Fが、共有キャッシュ領域19Aを有効化する(ステップS114)。そして、本ルーチンを終了する。
以上説明したように、本実施の形態の情報処理装置10は、セキュアモードSとノンセキュアモードNSとを切替えて動作する。情報処理装置10は、セキュアOS部22と、ノンセキュアOS部24と、を備える。セキュアOS部22は、セキュアモードSで動作する。ノンセキュアOS部24は、ノンセキュアモードNSで動作する。取得部22Dは、セキュアモードSのときに、セキュアOS部22とノンセキュアOS部24で共有する共有キャッシュ領域19A(共有リソース)に対してノンセキュアOS部24が実行する初期化処理に関する初期化処理情報を自律的に取得する。有効化部22Fは、初期化処理情報に基づいて、共有キャッシュ領域19A(共有リソース)をセキュアOS部22とノンセキュアOS部24とで共有して利用可能に有効化する。
このように、本実施の形態では、情報処理装置10は、取得部22DがセキュアモードSのときに自律的に取得した初期化処理情報に基づいて、共有リソース(共有キャッシュ領域19A)を有効化する。このため、セキュアOS部22は、共有リソースの有効化に関する処理を、セキュリティ性の低いノンセキュアOS部24からセキュアOS部22へ出力される信号に従って実行する必要が無い。すなわち、情報処理装置10は、セキュアOS部22に比べて脆弱性が生じやすくセキュリティ性の低いノンセキュアOS部24からの信号を待つことなく、セキュアモードSのときに自律的に取得した初期化処理情報に基づいて、共有リソースを有効化することができる。
従って、本実施の形態の情報処理装置10は、信頼性向上を図ることができる。
また、本実施の形態の情報処理装置10は、共有キャッシュ領域19Aを有効にする処理を、セキュアOS部22側で完結することができる。このため、ノンセキュアOS部24からセキュアOS部22へ、共有キャッシュ領域19Aの有効化に関する信号の送信機能を設ける必要がない。よって、本実施の形態の情報処理装置10は、上記効果に加えて、簡易な構成で、信頼性向上を図ることができる。
なお、本実施の形態では、セキュアOS部22が取得部22Dを備える形態を一例として説明した。しかし、取得部22Dは、セキュアモードSのときに上記初期化処理情報を自律的に取得すればよく、セキュアOS部22に設けられた形態に限定されない。例えば、セキュアOS部22は、ハードウェア部28に設けられていてもよい。
また、共有リソースが、セキュアOS部22に上記初期化処理情報を通知してもよい。すなわち、取得部22Dは、共有リソース(すなわちキャッシュ制御部18)から通知された初期化処理情報を、取得してもよい。
この場合、例えば、ノンセキュアOS部24が共有リソースであるキャッシュ設定情報18Aにアクセスしたときに、キャッシュ制御部18が割込みを発生させ、モニタ部26の切替指示ハンドラ部26Cへ通知すればよい。そして、切替指示ハンドラ部26Cは、該割込みを受付けると、ノンセキュアモードNSからセキュアモードSへモードを切替える第1切替命令を切替部26Aへ通知すればよい。これにより、切替部26Aは、ノンセキュアモードNSからセキュアモードSへモードを切替える。これらの処理により、共有リソースが、セキュアOS部22に初期化処理情報を通知することができる。
(変形例1)
なお、本実施の形態では、管理部22Bは、共有キャッシュ領域19Aに対する設定管理情報22Cを管理する場合を一例として説明した。しかし、情報処理装置10が、セキュアOS部22とノンセキュアOS部24とで共有する複数の共有リソースを用いる場合がある。この場合、管理部22Bは、複数の共有リソースの各々に対応する設定管理情報22Cを管理すればよい、また、このとき、キャッシュ制御部18は、複数の共有リソースの各々に対応するキャッシュ設定情報18Aを管理すればよい。
そして、セキュアOS部22では、共有リソースごとに、対応する設定管理情報22Cおよびキャッシュ設定情報18Aを選択し、上記処理を行えばよい。
(変形例2)
また、管理部22Bは、共有リソースを備えるハードウェアの種類に応じて、設定管理情報22Cを管理してもよい。この場合、管理部22Bは、共有リソースを備えるハードウェアの種類ごとに、設定管理情報22Cを管理すればよい。同様に、キャッシュ制御部18は、共有リソースを備えるハードウェアの種類ごとに、キャッシュ設定情報18Aを管理してもよい。
そして、セキュアOS部22では、共有リソースを備えるハードウェアの種類に応じた、設定管理情報22Cおよびキャッシュ設定情報18Aを選択し、上記処理を行えばよい。
(変形例3)
なお、ノンセキュアOS部24が担当する少なくとも1つの設定項目に対する、ノンセキュアOS部24のセキュリティ機能が、設定項目ごとに予め設定された対応するセキュリティレベルを満たさない場合がある。この場合、判定部22Eは、共有キャッシュ領域19Aの有効化を行わず、ノンセキュアOS部24へ動作終了指示を通知してもよい。なお、設定項目に対応するセキュリティレベルは、例えば、設定管理情報22Cに予め登録すればよい。動作終了指示は、例えば、シャットダウン指示である。セキュリティレベルを満たすか否かの判定は、公知方法を用いて行えばよい。
(第2の実施の形態)
本実施の形態では、セキュアOS部22側で、NS−MMU初期化部24Bによる初期化処理を実行する形態を説明する。
図7は、本実施の形態の情報処理装置10Aの機能構成の一例を示す図である。なお、第1の実施の形態の情報処理装置10と同じ機能には、同じ符号を付与し、詳細な説明を省略する。
情報処理装置10Aは、セキュアOS部23と、ノンセキュアOS部25と、モニタ部26と、ハードウェア部28と、を備える。
モニタ部26およびハードウェア部28は、第1の実施の形態の情報処理装置10と同様である。また、情報処理装置10Aのハードウェア構成および機能構成の概要は、第1の実施の形態の情報処理装置10と同様である(図1および図2参照)。
すなわち、情報処理装置10Aは、セキュアOS部22およびノンセキュアOS部24に代えて、セキュアOS部23およびノンセキュアOS部25を備えた点以外は、第1の実施の形態の情報処理装置10と同様の構成である。
ノンセキュアOS部25は、ノンセキュアOS部24と同様に、ノンセキュアモードNSで動作するOSである。ノンセキュアOS部25は、OS初期化部25Aおよびモニタ呼出部25Cを備える。
OS初期化部25Aは、ノンセキュアOS部25を初期化する。OS初期化部25Aは、情報処理装置10Aの起動時において、セキュアモードSからノンセキュアモードNSへモードが切替ったときに、ノンセキュアOS部25の初期化を実行する。
OS初期化部25Aは、第1の実施の形態のOS初期化部24Aと同様である。但し、OS初期化部25Aは、NS−MMU初期化部24Bを含まない構成である。すなわち、OS初期化部25Aは、NS−MMU17(図1参照)を初期化するNS−MMU初期化部24Bを含まない。言い換えると、OS初期化部25Aは、NS−MMU17の初期化処理以外の、ノンセキュアOS部25の初期化を行う。
OS初期化部25Aは、ノンセキュアOS部25の初期化が終了すると、セキュアモードSへ切替える第1切替命令をモニタ呼出部25Cへ通知する。第1切替命令を受付けたモニタ呼出部24Cは、ノンセキュアモードNSからセキュアモードSへモードを切替える第1切替指示を、切替指示ハンドラ部26Cへ通知する。
次に、セキュアOS部23について説明する。セキュアOS部23は、セキュアモードSで動作するOSである。セキュアOS部23は、S−MMU初期化部22Aと、管理部22Bと、取得部23Dと、検証部23Eと、有効化部23Fと、呼出部23Gと、関数実行部23Hと、を備える。すなわち、S−MMU初期化部22A、管理部22B、取得部23D、検証部23E、有効化部23F、呼出部23G、および関数実行部23Hは、セキュアモードSで動作する。
S−MMU初期化部22Aは、S−MMU16(図1参照)を初期化する。S−MMU初期化部22Aは、第1の実施の形態と同様である。
管理部22Bは、シンボル情報23Cを管理する。シンボル情報23Cは、ノンセキュアOS部25が共有キャッシュ領域19Aに対して実行する初期化処理、を実行するための関数の記憶場所を示す情報である。
初期化処理は、第1の実施の形態で説明したように、NS−MMU初期化部24B(第1の実施の形態参照)が実行する初期化処理である。すなわち、初期化処理は、共有キャッシュ領域19Aに対する複数の設定項目の内、ノンセキュアOS部25が設定を担当する設定項目に対して、初期設定値として予め定められた設定値を登録する処理である。
なお、管理部22Bは、ノンセキュアOS部25に設けられていてもよい。
取得部23Dは、初期化処理情報を自律的に取得する。初期化処理情報は、第1の実施の形態で説明したように、初期化処理に関する情報である。
本実施の形態では、取得部23Dは、シンボル情報23Cを、初期化処理情報として取得する。
検証部23Eは、取得部23Dで取得したシンボル情報23Cに示される記憶場所から、該記憶場所に格納されている関数を読取る。そして、検証部23Eは、読取った関数の実行可否を検証する。
例えば、検証部23Eは、シンボル情報23Cに示される記憶場所に格納されている関数の実行内容を検証することによって、該関数の実行可否を検証する。
また、例えば、検証部23Eは、シンボル情報23Cに示される記憶場所に格納されている関数が、正当な関数であるか否かを認証することによって、該関数の実行可否を検証する。正当な関数である、とは、共有キャッシュ領域19Aに対して実行する初期化処理を実行するための関数であり、改竄されていない関数であることを示す。
検証部23Eが、関数を実行可と検証した場合、関数実行部23Hは、該関数を実行する。検証部23Eが該関数を実行することによって、共有キャッシュ領域19Aに対する複数の設定項目の内、ノンセキュアOS部25が設定を担当する設定項目の記憶場所に、初期設定値として予め定められた設定値が登録される。
そして、有効化部23Fは、関数実行部23Hによって関数が実行された場合、共有キャッシュ領域19Aを有効化する。
呼出部23Gは、第1の実施の形態の呼出部22Gと同様である。本実施の形態では、呼出部23Gは、有効化部22Fから第2切替命令を受付ける。そして、検証部23Eは、第2切替命令を受付けたときに、ノンセキュアモードNSへ切替える第2切替指示を、切替指示ハンドラ部26Cへ通知する。
次に、本実施の形態の情報処理装置10Aが実行する情報処理の手順の一例を説明する。
図8は、情報処理装置10Aが実行する情報処理の手順の一例を示す、フローチャートである。情報処理装置10Aは、情報処理装置10Aの起動時に、図8に示す情報処理の手順を実行する。
まず、S−MMU初期化部22Aが、S−MMU16を初期化する(ステップS200)。
次に、取得部23Dが、初期化処理情報として、シンボル情報23Cを管理部23Bから取得する(ステップS202)。
次に、検証部23Eが、ステップS202で取得したシンボル情報23Cに示される記憶場所から、該記憶場所に格納されている関数を読取る(ステップS204)。そして検証部23Eは、読取った関数の実行可否を検証する(ステップS206)。
ステップS206の検証により、実行可と検証された場合(ステップS208:Yes)、ステップS210へ進む。実行不可と検証された場合(ステップS208:No)、本ルーチンを終了する。
ステップS210では、関数実行部23Hが、ステップS206で検証した関数を実行する(ステップS210)。ステップS210の処理によって、共有キャッシュ領域19Aに対する複数の設定項目の内、ノンセキュアOS部25が設定を担当する設定項目の記憶場所に、初期設定値として予め定められた設定値が登録される。
次に、呼出部23Gが、共有キャッシュ領域19Aを有効化する(ステップS212)。
次に、切替部26Aが、セキュアモードSからノンセキュアモードNSへモードを切替える(ステップS214)。次に、OS初期化部25Aが、ノンセキュアOS部25の初期化処理を実行する(ステップS216)。そして、本ルーチンを終了する。
以上説明したように、本実施の形態の情報処理装置10Aは、取得部23Dと、検証部23Eと、関数実行部23Hと、有効化部23Fと、を備える。取得部23Dは、ノンセキュアOS部25が実行する初期化処理を実行するための関数の記憶場所を示すシンボル情報23Cを、初期化処理情報として取得する。検証部23Eは、シンボル情報23Cに示される記憶場所に格納されている関数の実行可否を検証する。関数実行部23Hは、該関数を実行可と検証した場合、該関数を実行する。そして、有効化部23Fは、関数が実行された場合、共有キャッシュ領域19A(共有リソース)を有効化する。
このように、本実施の形態では、セキュアOS部23は、自律的に取得した初期化処理情報に基づいて、共有リソース(共有キャッシュ領域19A)を有効化する。このため、セキュアOS部23は、共有リソースの有効化に関する処理を、セキュリティ性の低いノンセキュアOS部25からセキュアOS部23へ出力される信号に従って実行する必要が無い。すなわち、セキュアOS部23は、ノンセキュアOS部25からの信号を待つことなく、共有リソースを有効化することができる。
従って、本実施の形態の情報処理装置10Aは、信頼性向上を図ることができる。
(変形例4)
なお、上記第2の実施の形態では、管理部22Bは、シンボル情報23Cを管理する形態を説明した。そして、シンボル情報23Cは、ノンセキュアOS部25が共有キャッシュ領域19Aに対して実行する初期化処理、を実行するための関数の記憶場所を示す情報である場合を説明した。
しかし、シンボル情報23Cは、該関数のパラメータを示す情報であってもよい。この場合、取得部23Dは、該関数のパラメータを示すシンボル情報23Cを、初期化処理情報として取得することとなる。
この場合、検証部23Eは、取得部23Dで取得したシンボル情報23Cに示される記憶場所から、該記憶場所に格納されている関数のパラメータを読取る。そして、検証部23Eは、読取ったパラメータを導入した関数の実行可否を検証すればよい。
そして、上記第2の実施の形態と同様に、有効化部23Fは、関数実行部23Hによって関数が実行された場合、共有キャッシュ領域19Aを有効化すればよい。
また、上記変形例1で説明したように、情報処理装置10Aは、セキュアOS部22とノンセキュアOS部24とで、複数の共有リソースを共有してもよい。この場合、情報処理装置10Aは、複数の共有リソースの各々に対応する、上記関数または上記関数のパラメータの記憶場所を示す情報を、シンボル情報23Cとして用いればよい。
そして、取得部23Dは、初期化対象の共有リソースに対応する上記関数または上記関数のパラメータの記憶場所を示すシンボル情報23Cを初期化処理情報として取得し、有効化部23Fが、初期化対象の共有キャッシュ領域19Aを有効化すればよい。
また、上記変形例2と同様に、情報処理装置10Aは、共有リソースを備えるハードウェアの種類ごとに、上記関数を管理してもよい。この場合、情報処理装置10Aは、共有リソースを備えるハードウェアの種類に対応する、上記関数または上記関数のパラメータの記憶場所を示す情報を、シンボル情報23Cとして用いればよい。
(変形例5)
なお、上記実施の形態の情報処理装置10および情報処理装置10Aは、様々なシステムに適用可能である。例えば、上記実施の形態の情報処理装置10および情報処理装置10Aは、移動体の一例である自動車に搭載される車載ネットワークシステムに適用できる。
例えば、上記実施の形態の情報処理装置10および情報処理装置10Aは、車載ネットワークシステムに含まれる車載ゲートウェイ装置(以下、「GW」と略称する)に適用可能である。
図9は、情報処理システム1の概要を示す模式図である。情報処理システム1は、例えば、車両2に搭載されている。
情報処理システム1は、情報処理装置10と、複数のノード60と、を備える。なお、情報処理システム1は、情報処理装置10に代えて、情報処理装置10Aを備えた構成であってもよい。
情報処理装置10と複数のノード60とは、ネットワークNWを介して接続されている。図9に示す例では、情報処理システム1は、ネットワークNWとして、複数のサブネットワーク(サブネットワークNW1、サブネットワークNW2)を含む。これらの複数のサブネットワークの各々には、ノード60が接続されている。また、これらの複数のサブネットワークは、情報処理装置10に接続されている。
また、情報処理装置10には、V2X通信モジュール64および通信モジュール66が接続されている。通信モジュール66は、外部ネットワーク68を介して外部装置と通信するためのモジュールである。V2X通信モジュール64は、通信インフラを介さずに、他の車両2との間で直接無線通信を行うためのモジュールである。直接無線通信には、例えば、車車間・路車間通信(V2X:Vehicle−to−Everything)を用いる。なお、V2X通信は、C2X(Car−to−X)通信と称される場合もある。
図9には、情報処理装置10を、GWとして構成した場合を、一例として示した。本実施の形態では、情報処理装置10は、本来のゲートウェイとしての機能に加えて、上述した処理を実行すればよい。本来のゲートウェイとしての機能は、例えば、情報処理システム1内のサブネットワーク(例えば、サブネットワークNW1、サブネットワークNW2)間の通信の中継およびフィルタリングや、情報処理システム1と車外の外部ネットワーク68との間の通信の中継およびフィルタリングや、他の車両2との直接の通信の中継およびフィルタリングなどである。
ノード60は、情報処理装置10を介して他のノード60との間で、データを通信する電子機器である。ノード60は、例えば、ECU(電子制御装置:Electronic Control Unit)や、各種センサや、アクチュエータなどである。ECUは、車両2における各種制御を行う電子機器である。
情報処理システム1の通信規格は限定されない。情報処理システム1の通信規格は、例えば、CAN(Controller Area Network)やFlexRay(登録商標)などである。
このように、上記実施の形態の情報処理装置10および情報処理装置10Aを、車両2等の移動体に搭載された情報処理システム1に適用してもよい。
この場合、情報処理装置10は、車両2のエンジン起動時に、上述した図6に示す情報処理を実行すればよい。情報処理装置10Aを搭載した場合についても同様に、情報処理装置10Aは、車両2のエンジン起動時に、上述した図9に示す情報処理を実行すればよい。
(補足説明)
なお、上記実施の形態の情報処理装置10および情報処理装置10Aで実行される上記各処理を実行するためのプログラムは、HDD(ハードディスクドライブ)に記憶されていてもよい。また、上記実施の形態の上記実施の形態の情報処理装置10および情報処理装置10Aで実行される上記各処理を実行するためのプログラムは、ROMに予め組み込まれて提供されていてもよい。
また、上記実施の形態の情報処理装置10および情報処理装置10Aで実行される上記処理を実行するためのプログラムは、インストール可能な形式または実行可能な形式のファイルでCD−ROM(Compact Disc Read only memory)、CD−R(Compact Disc−Recordable)、メモリカード、DVD(Digital Versatile Disk)、フレキシブルディスク(FD)等のコンピュータで読み取り可能な記憶媒体に記憶されてコンピュータプログラムプロダクトとして提供されるようにしてもよい。また、上記実施の形態の情報処理装置10および情報処理装置10Aで実行される上記処理を実行するためのプログラムを、インターネットなどのネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するようにしてもよい。また、上記実施の形態の情報処理装置10および情報処理装置10Aで実行される上記処理を実行するためのプログラムを、インターネットなどのネットワーク経由で提供または配布するようにしてもよい。
以上、本発明の実施の形態および変形例を説明したが、これらの実施の形態および変形例は例として提示したものであり、発明の範囲を限定することは意図していない。これらの新規な実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これらの実施の形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
10、10A 情報処理装置
19A 共有キャッシュ領域
22、23 セキュアOS部
22D 取得部
22E 判定部
22F 有効化部
23D 取得部
23E 検証部
23F 有効化部
23H 関数実行部
24、25 ノンセキュアOS部

Claims (15)

  1. セキュアモードとノンセキュアモードとを切替えて動作する情報処理装置であって、
    前記セキュアモードで動作するセキュアOS部と、
    前記ノンセキュアモードで動作するノンセキュアOS部と、
    前記セキュアモードのときに、前記セキュアOS部と前記ノンセキュアOS部とで共有する共有リソースに対して前記ノンセキュアOS部が実行する初期化処理に関する初期化処理情報を自律的に取得する取得部と、
    前記初期化処理情報に基づいて、前記共有リソースを前記セキュアOS部と前記ノンセキュアOS部とで共有して利用可能に有効化する有効化部と、
    を有する、情報処理装置。
  2. 前記セキュアOS部は、
    前記取得部と、前記有効化部と、を有する、
    請求項1に記載の情報処理装置。
  3. 前記セキュアOS部は、
    前記初期化処理情報によって示される、前記ノンセキュアOS部による前記共有リソースに対する初期化処理の進行度合が、前記共有リソースの有効化条件を満たすか否かを判定する判定部を更に有し、
    前記有効化部は、
    前記有効化条件を満たすと判定した場合、前記共有リソースを有効化する、
    請求項1に記載の情報処理装置。
  4. 前記セキュアOS部は、
    前記共有リソースに対する設定項目と、前記設定項目に対する設定を前記セキュアOS部および前記ノンセキュアOS部の何れが担当するかを示す担当情報と、前記設定項目の設定値の設定場所と、前記設定項目に対する初期設定値と、を対応づけた設定管理情報を管理する管理部を更に有し、
    前記取得部は、
    前記共有リソースに対する1または複数の前記設定項目の内、前記ノンセキュアOS部が担当する前記設定項目の設定場所に設定されている設定値を、前記初期化処理情報として取得し、
    前記判定部は、
    取得した前記初期化処理情報に示される、前記ノンセキュアOS部が担当する前記設定項目の設定場所に設定されている設定値と、前記設定管理情報における前記ノンセキュアOS部が担当する設定項目に対する初期設定値と、が一致する割合によって表される前記進行度合が、前記有効化条件を満たすか否かを判定する、
    請求項3に記載の情報処理装置。
  5. 前記判定部は、
    前記進行度合が、前記設定管理情報における前記ノンセキュアOS部が担当する全ての前記設定項目に対応する前記初期設定値が前記設定場所に設定済であることを示す場合、前記有効化条件を満たすと判定する、
    請求項4に記載の情報処理装置。
  6. 前記管理部は、
    複数の共有リソースの各々に対応する前記設定管理情報を管理する、
    請求項4または請求項5に記載の情報処理装置。
  7. 前記管理部は、
    前記共有リソースを備えるハードウェアの種類に対応する前記設定管理情報を管理する、
    請求項4〜請求項6の何れか1項に記載の情報処理装置。
  8. 前記判定部は、
    前記ノンセキュアOS部が担当する少なくとも1つの前記設定項目に対する前記ノンセキュアOS部のセキュリティ機能が、前記設定項目ごとに予め設定された対応するセキュリティレベルを満たさない場合、前記共有リソースを有効化せず、前記ノンセキュアOS部へ動作終了指示を通知する、
    請求項4〜請求項7の何れか1項に記載の情報処理装置。
  9. 前記取得部は、
    前記ノンセキュアOS部が実行する前記初期化処理を実行するための関数の記憶場所を示すシンボル情報を、前記初期化処理情報として取得し、
    前記ノンセキュアOS部は、
    前記記憶場所に格納されている前記関数の実行可否を検証する検証部と、
    前記関数を実行可と検証した場合、前記関数を実行する関数実行部と、
    を備え、
    前記有効化部は、
    前記関数が実行された場合、前記共有リソースを有効化する、
    請求項1に記載の情報処理装置。
  10. 前記検証部は、
    前記記憶場所に格納されている前記関数の実行内容を検証することによって、前記関数の実行可否を検証する、
    請求項9に記載の情報処理装置。
  11. 前記検証部は、
    前記記憶場所に格納されている前記関数が正当な関数であるか否かを認証することによって、前記関数の実行可否を検証する、
    請求項9に記載の情報処理装置。
  12. 前記取得部は、
    前記ノンセキュアOS部が実行する前記初期化処理を実行するための関数のパラメータの記憶場所を示すシンボル情報を、前記初期化処理情報として取得し、
    前記ノンセキュアOS部は、
    前記記憶場所に格納されている前記パラメータを導入した前記関数の実行可否を検証する検証部と、
    前記関数を実行可と検証した場合、前記関数を実行する関数実行部と、
    を備え、
    前記有効化部は、
    前記関数が実行された場合、前記共有リソースを有効化する、
    請求項1に記載の情報処理装置。
  13. セキュアモードとノンセキュアモードとを切替えて動作する情報処理装置を備えた移動体であって、
    前記情報処理装置は、
    前記セキュアモードで動作するセキュアOS部と、
    前記ノンセキュアモードで動作するノンセキュアOS部と、
    前記セキュアモードのときに、前記セキュアOS部と前記ノンセキュアOS部とで共有する共有リソースに対して前記ノンセキュアOS部が実行する初期化処理に関する初期化処理情報を自律的に取得する取得部と、
    前記初期化処理情報に基づいて、前記共有リソースを前記セキュアOS部と前記ノンセキュアOS部とで共有して利用可能に有効化する有効化部と、
    を備える移動体。
  14. セキュアモードとノンセキュアモードとを切替えて動作する情報処理装置で実行する情報処理方法であって、
    前記セキュアモードのときに、前記セキュアモードで動作するセキュアOS部と前記ノンセキュアモードで動作するノンセキュアOS部とで共有する共有リソースに対して前記ノンセキュアOS部が実行する初期化処理に関する初期化処理情報を自律的に取得するステップと、
    前記初期化処理情報に基づいて、前記共有リソースを前記セキュアOS部と前記ノンセキュアOS部とで共有して利用可能に有効化するステップと、
    を含む情報処理方法。
  15. セキュアモードとノンセキュアモードとを切替えて動作する情報処理装置で実行するコンピュータに実行させるためのプログラムであって、
    前記セキュアモードのときに、前記セキュアモードで動作するセキュアOS部と前記ノンセキュアモードで動作するノンセキュアOS部とで共有する共有リソースに対して前記ノンセキュアOS部が実行する初期化処理に関する初期化処理情報を自律的に取得するステップと、
    前記初期化処理情報に基づいて、前記共有リソースを前記セキュアOS部と前記ノンセキュアOS部とで共有して利用可能に有効化するステップと、
    を前記コンピュータに実行させるためのプログラム。
JP2018129598A 2018-07-09 2018-07-09 情報処理装置、移動体、情報処理方法、およびプログラム Active JP6877388B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018129598A JP6877388B2 (ja) 2018-07-09 2018-07-09 情報処理装置、移動体、情報処理方法、およびプログラム
US16/285,271 US10909270B2 (en) 2018-07-09 2019-02-26 Information processing device, mobile object, information processing method, and computer program product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018129598A JP6877388B2 (ja) 2018-07-09 2018-07-09 情報処理装置、移動体、情報処理方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP2020009144A true JP2020009144A (ja) 2020-01-16
JP6877388B2 JP6877388B2 (ja) 2021-05-26

Family

ID=69102086

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018129598A Active JP6877388B2 (ja) 2018-07-09 2018-07-09 情報処理装置、移動体、情報処理方法、およびプログラム

Country Status (2)

Country Link
US (1) US10909270B2 (ja)
JP (1) JP6877388B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10956356B1 (en) * 2019-11-27 2021-03-23 Robert Bosch Gmbh Clock control to increase robustness of a serial bus interface
US11209891B2 (en) 2019-11-27 2021-12-28 Robert Bosch Gmbh Clock control to increase robustness of a serial bus interface

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009013825A1 (ja) * 2007-07-25 2009-01-29 Panasonic Corporation 情報処理装置、及び改竄検証方法
WO2012160760A1 (ja) * 2011-05-25 2012-11-29 パナソニック株式会社 情報処理装置および情報処理方法
US20140298026A1 (en) * 2013-03-26 2014-10-02 Kabushiki Kaisha Toshiba Information processing device and computer program product
JP2015064677A (ja) * 2013-09-24 2015-04-09 株式会社東芝 情報処理装置、情報処理システム、プログラム
WO2017034008A1 (ja) * 2015-08-25 2017-03-02 株式会社Seltech ハイパーバイザーを有するシステム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS486212Y1 (ja) 1969-02-22 1973-02-16
US8271976B2 (en) 2004-06-30 2012-09-18 Microsoft Corporation Systems and methods for initializing multiple virtual processors within a single virtual machine
JP6524635B2 (ja) * 2013-11-06 2019-06-05 株式会社リコー 情報蓄積システム及び情報蓄積方法
JP2017142722A (ja) 2016-02-12 2017-08-17 日本電信電話株式会社 仮想計算機システムおよびvm起動制御方法
JP6615726B2 (ja) 2016-09-16 2019-12-04 株式会社東芝 情報処理装置、情報処理方法及びプログラム
JP6762924B2 (ja) 2017-12-01 2020-09-30 株式会社東芝 情報処理装置、情報処理方法、およびプログラム

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009013825A1 (ja) * 2007-07-25 2009-01-29 Panasonic Corporation 情報処理装置、及び改竄検証方法
WO2012160760A1 (ja) * 2011-05-25 2012-11-29 パナソニック株式会社 情報処理装置および情報処理方法
US20140298026A1 (en) * 2013-03-26 2014-10-02 Kabushiki Kaisha Toshiba Information processing device and computer program product
JP2014191509A (ja) * 2013-03-26 2014-10-06 Toshiba Corp 情報処理装置、情報処理プログラム
JP2015064677A (ja) * 2013-09-24 2015-04-09 株式会社東芝 情報処理装置、情報処理システム、プログラム
WO2017034008A1 (ja) * 2015-08-25 2017-03-02 株式会社Seltech ハイパーバイザーを有するシステム
JPWO2017034008A1 (ja) * 2015-08-25 2017-08-24 株式会社Seltech ハイパーバイザーを有するシステム
JP2017146974A (ja) * 2015-08-25 2017-08-24 株式会社Seltech ハイパーバイザーを有するシステム
CN107924441A (zh) * 2015-08-25 2018-04-17 株式会社Seltech 具有虚拟机管理器的系统

Also Published As

Publication number Publication date
JP6877388B2 (ja) 2021-05-26
US20200012820A1 (en) 2020-01-09
US10909270B2 (en) 2021-02-02

Similar Documents

Publication Publication Date Title
US10871953B2 (en) Application update method and apparatus
US10789191B2 (en) Real-time embedded system
US20190372834A1 (en) Blockchain based device management
EP2526734B1 (en) Hierarchical routing and interface selection for multi-processor multimode network devices
KR102064690B1 (ko) 도메인들에 걸쳐 서비스 계층 리소스 전파
CN115291964A (zh) 减少无服务器函数启动延迟的机制
US10657246B2 (en) Authenticated discoverability of universal windows applications to WIN32 desktop applications
JP6661641B2 (ja) コンピューティングデバイス、サブスクリプションサーバ及び方法
EP3195176A1 (en) Trusted execution environment extensible computing device interface
JP2020524869A (ja) 仮想マシン管理
CN113168332B (zh) 数据处理方法、装置以及移动终端
KR102561083B1 (ko) 프로파일 기반 콘텐츠 및 서비스들
US20230221784A1 (en) System and method for power state enforced subscription management
US10715628B2 (en) Attribute operating method and device
TW201603518A (zh) 用於nfc的電子裝置、系統以及方法
JP6877388B2 (ja) 情報処理装置、移動体、情報処理方法、およびプログラム
US9888070B2 (en) Brokered advanced pairing
CN111722857A (zh) 软件开发工具包的更新方法、装置、电子设备及存储介质
CN110545328A (zh) 非入侵式服务功能扩展增强方法、装置及服务器
JP2022501733A (ja) データ管理の方法および装置並びにサーバ
KR20210043654A (ko) 자원 구성을 위한 방법, 장치 및 저장 매체
WO2022083342A1 (zh) 数据传输方法和电子设备
US10171970B2 (en) Resource notification method and system, local CSE, remote CSE and storage medium
CN113515299A (zh) 软件开发工具包sdk热升级方法、装置、设备及存储介质
US20230039450A1 (en) Systems, methods, and apparatus to identify functions for computational devices

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200618

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210317

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: 20210330

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210427

R151 Written notification of patent or utility model registration

Ref document number: 6877388

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151