セキュアな仮想化

ライフクリティカル/ミッションクリティカルな組込みシステムを開発するエンジニアは、LinuxまたはAndroidの環境を追加する際には、さらに安全、セキュリティ、および信頼性の要件を達成しなければなりません。事業上の重要なメリットには、プラットフォームコストの削減、柔軟なソフトウェア基盤、オープンソースソフトウェアとの分離、およびソフトウェアの複雑性の軽減などがあります。

複雑なシステムの開発を劇的に変革

INTEGRITY Multivisor, secure virtualization, hypervisor, embedded INTEGRITY Multivisorは、同じマルチコアプロセッサ上で、LinuxやAndroidなどの汎用OSを実行しつつ、同時にライフクリティカル/ミッションクリティカルなソフトウェアを安全・セキュアに実行できます。 クリックして画像を拡大

組込み設計者はシステム仮想化に基づいて複雑なシステムの開発を劇的に変えようとしています。仮想化は異なるシステムを専用の仮想マシンにまとめ、1個のハードウェアプラットフォーム上で実行します。さらに、ハードウェアを抽象化することでプラットフォームの再利用や新ハードウェアへの素早い移行もできるようになります。

2003年から、INTEGRITY Multivisorは自動車、産業、航空宇宙、およびモバイルのプラットフォームで、この役割を果たしてきました。

INTEGRITY Multivisorは、1個以上のゲストOSを動作させると同時に、ライフクリティカル/ミッションクリティカルな機能をいろいろなマルチコアSoC上で実行することが可能で、さらに安全とセキュリティについて認証を受けている業界で唯一のアーキテクチャです。組込みにおける最難関の課題に対応すべく開発されたINTEGRITY Multivisorは、安全性、セキュリティ、および性能を落とさずに、複雑なシステム設計を短期間で、最適化とコスト削減を実現したうえで可能にするソリューションです。

図にあるように、INTEGRITYの信頼性の高い分離型、リアルタイムのパーティショニングアーキテクチャはミッションクリティカルなリアルタイムソフトウェアの機能と同時に任意のゲストOSを複数個実行します。アプリケーションとゲストOSはシングルコアまたはマルチコア上で効果的にスケジューリングされ、厳しいアクセス制御モデルのもとで互いに効果的な通信を行ったりGPU、Ethernetなどのシステムペリフェラルを共有したりできます。

仮想化機能

  • 共有のデバイス、およびペリフェラル:デバイスやペリフェラルは、専用にするかゲストOSやクリティカルな機能の間で共有にするか選択可能
  • IPC:ゲストOSとクリティカルな関数に規格準拠のプロセス間通信(IPC)を提供
  • 柔軟な設定:メモリやデバイスなどのシステムリソースのプロビジョニング
  • ハードウェア仮想化:可能ならハードウェア仮想化による高速化
  • ヘルスモニタ:性能監視、障害検知、およびゲストOSとアプリケーションの再起動が可能
  • マルチコアのゲスト:複数のゲストOSを複数のコア上で、オーバーラップさせながら実行。INTEGRITYの優先度ベースの自動負荷分散機能を活用
  • ソフトウェア開発キット(SDK):画期的なMULTIデバッガが付属。仮想化システムで実行するソフトウェアコンポーネントすべてをまとめて可視化し制御する機能を提供
  • マルチコア制御:非対称型マルチプロセッシング(AMP)モデルでゲストOSを静的にコアにバインドするか、対称型マルチプロセッシング(SMP)モデルで負荷を動的に割り振るか、システム要件に合わせて変更が可能

安全性・セキュリティの系譜

グローバルな業界団体がINTEGRITYの分離型カーネルアーキテクチャを高信頼性が要求されるシステム用アーキテクチャとして信頼しています。

  • ISO 26262 ASIL D カーエレクトロニクス
  • NSA認証のセキュリティ携帯電話
  • FAA DO-178B Level A 認証の民間機・軍用機向け航空機制御ライフクリティカル機能
  • FDA Class III ライフクリティカルな医療機器
  • EN 50128 SWSIL 4 認証の鉄道制御・保護システム
  • IEC-61508 SIL 3 認証の産業制御システム

ハイパーバイザの多くは、ゲスト環境をサポートするために必要なソフトウェア、例えばデバイスドライバやミドルウェアをモノリシックなアーキテクチャにバンドルしています。その結果、汎用のオペレーティングシステムと同じように、未知の脆弱性にさらされ、共通のポイントで障害を起こすようになってしまっています。Xen、VMware、およびその他の商用のハイパーバイザなどでは、多数の仮想マシンの「エスケープ」やサブバージョンが発見されています。

それとは対照的に、INTEGRITY MultivisorはリアルタイムOS INTEGRITYの安全でセキュアな分離カーネルの仮想化サービスで、クリティカルな環境の大部分でソフトウェアを分離して保護できることが既に認証されています。

顧客使用事例

INTEGRITY Multivisorは他ではできない方法でエンジニアリングを変革します。次に示す例はすべてGreen Hills Softwareの顧客での事例をもとにしたものです。

自動車の統合型コクピット

  • インフォテインメント、ADAS、セキュアゲートウェイ、およびデジタル計器クラスタを統合して自動車のコストと使用容量を削減
  • クラスタの警告ランプ、リアビューカメラ、およびゲストOS障害監視など、セーフティクリティカルなアプリケーションを実行
  • コネクテッドカーの通信機能をセーフティクリティカル、セキュリティクリティカルなゲートウェイアプリケーションと統合

次世代の携帯電話プラットフォーム

  • 企業の環境と個人の環境を複数のインスタンスのモバイルOSでセキュアに実行
  • スマートフォンで共通の機能を提供するほか、仮想クレジットカードや仮想チケット配布(公共交通機関など)、仮想キー、および個人認証など次世代のセキュリティアプリケーションも可能

多階層セキュアワークステーション

  • 会社と個人のデスクトップ環境をセキュアに統合
  • セキュリティ水準に差のあるいろいろなワークステーションをセキュア、シンプルかつコスト削減につながる方法で1台のワークステーションに統合
  • 高性能で単線の暗号化データ通信を実現

インテリジェントな兵器システム

  • タブレット型の高機能なLinuxグラフィカルインターフェースを搭載
  • リアルタイムアプリケーションで兵器の状態を安定して表示(LinuxのGUIとセキュアに多重化)、セーフティクリティカルな兵器のプログラミング

仮想化システム向けの高度なデバッギングと仮想化

MULTIデバッガはLinuxカーネル、リアルタイムOS INTEGRITY、デバイスツリー、アプリケーション、およびデバイスドライバなど仮想化システム上で実行されるソフトウェアコンポーネントをすべて統一的に可視化、制御します。

仮想化された組込みシステムでは、同時に実行できるソフトウェアの階層を増やすことができます。そのため、コードやその相互作用のデバッギングは従来の組込みシステムとは比べ物にならないくらい複雑です。実行されるコードがレイヤごとに一目瞭然でなければ開発効率は大きく落ち込み、新製品のスケジュールにも影響が出ます。

1990年代前半、MULTIデバッガはいろいろなデスクトップOS上で複数の組込みOS、言語、およびプロセッサのデバッグが可能なグラフィカルインターフェースを備えた初の商用デバッガでした。そして現在、この組込み仮想化の時代に、MULTIデバッガは再び「初めて」この複雑なターゲット環境の詳細な可視化と制御に成功したデバッガとなりました。

競合の仮想化アーキテクチャでは、いろいろなメーカーの出しているいろいろなデバッガが入り乱れ、それぞれ個別に設定を行わなければなりません。MULTIデバッガは対照的に、あらゆる実行レベルを同時に可視化、制御します。

  • Linuxその他のゲストOSのアプリケーション
  • リアルタイムアプリケーション
  • LinuxカーネルとLinuxデバイスドライバ
  • 仮想マシンモニタ
  • リアルタイムOSのカーネル