日経テクノロジーonline SPECIAL

自動車、産業機器の機能安全の実装に適したRTOS

自動車や産業用システムなど「機能安全」への対応を迫られている分野で、米Green Hills Software(GHS)社のリアルタイムOS「INTEGRITY」の存在感が高まっている。アプリケーション空間を完全に分離できるなど、同OSを実装することにより、機能安全が定める厳しいソフトウェア要件を、高いレベルで満足する組み込みシステムで実現できるからだ。その仕組みや開発コンセプトなどについて、GHS 社の販売代理店で高度な技術サポートを提供しているアドバンスド・データ・コントロールズ(ADaC)に聞いた。

 安全性を、機能的な仕組みを用いて許容できるレベルで確保する、いわゆる「機能安全」。この概念が自動車や産業機器分野に広く浸透してきた。このうち自動車分野では、おおもとの機能安全規格「IEC 61508」をベースに定められた「ISO26262」の初版が2011年11月に発行されてからほぼ5年が経過した。業界では各サプライヤともに調査フェーズを終えて、実際の開発に反映するフェーズに移っている。

慶野 博是 氏
株式会社 アドバンスド・データ・コントロールズ
営業本部 営業支援・サポート部 部長

 ただし、コンセプト、システム、ハードウェア、ソフトウェア、生産、サポートなど、さまざまな階層や観点を規定したISO26262に準拠するには、アーキテクチャや開発スキームの大幅な変更が必要になる場合もある。このため、同規格に対応した製品開発を実現するのは容易ではないと言われている。

 機能安全に関して最も厳しい対応を求められる車載ECU(Electronic Control Unit)ソフトウェアの実行環境を機能安全の観点から見たときの課題を、ADaCの慶野博是氏は次のように説明する。

 「ISO26262でソフトウェアの開発を規定しているPart6では、安全性要求レベルを表すASIL(Automotive Safety Integrity Level)では、最も高いレベルのASILにすべてのソフトウェアコンポーネントを合わせなければならないといった項目や、パーティショニングを施したソフトウェア間で干渉があってはならないといった項目が定められています。このため場合によってはソフトウェア構成の抜本的な見直しや、もともと統合されていた機能を別々のECUに分散させるなどの対応が必要です。しかも、ISO26262の認証を取得するのであれば、それら規定に従っているというエビデンスを用意しなければなりません」。

完全な分離を実現

 自動車および産業機器の機能安全の実装に適したソフトウェア実行環境として、ADaCが推奨するのが、米Green Hills Software社が提供する「INTEGRITY」(インテグリティ)である(図1)。

 INTEGRITYは、もともとは軍事や航空宇宙などの分野を対象に開発されたリアルタイムOSで、信頼性、堅牢性、セキュリティなどに優れており、現在は、航空、宇宙、防衛、医療、鉄道、交通システム、自動車、産業全般など、信頼性や堅牢性を求められるさまざまな分野で活用されている。「機能安全という観点で見ると、カーネル空間とそれぞれのアプリケーション空間の完全な分離、および、アプリケーション間の完全な分離を実現していることが特徴です。仮にいずれかのアプリケーションに問題が生じたとしても、他のアプリケーションやカーネルに影響を与えません」(慶野氏)。つまり、ISO26262の分離要件を満たしているため、ASILのレベルが異なる複数のアプリケーション(ソフトウェアコンポーネント)を一つのINTEGRITY上に混在させることができる。そうすれば、ASILを揃えるためにアプリケーションを書き直さなくて済むうえに、それぞれの分離が保証されているため、テスト工数の削減ができる。分離カーネルを備えたOSとしてINTEGRITY自身が、「IEC61508:SIL3」認証を取得しているため、認証に際して必要になる証明を作成するための作業を軽減できる。これもINTEGRITYが設計者にもたらす大きな利点だ。

図1 米Green Hills Software社のリアルタイムOS「INTEGRITY」の基本構成
[画像のクリックで拡大表示]

ゲスト環境の「同居」も可能

 GHS社は、後述するセキュリティを担保する目的もあってINTEGRITYの内部アーキテクチャをほとんど公開していないが、ADaCによると、マイクロプロセッサのMMU(メモリ管理ユニット)を用いてユーザー空間には物理メモリ情報を持たない仮想アドレスを固定的に割り当てるほか、カーネルへのメモリ割り当ても動的ではなく静的に行うことでリソースをあらかじめ確定させておくなどの先進的な仕組みが取り入れられている。

穂積 広一 氏
株式会社 アドバンスド・データ・コントロールズ
技術本部 R&D部 部長(兼 副本部長)

 また、一般的なリアルタイムOSではメモリを動的に割り当てるときに、バッファ領域やヒープ領域がオーバーフローして他のアドレス領域に干渉を与える恐れがある。これに対して「固定割り当て」あるいは「静的割り当て」によってそうした問題を回避しているのもINTEGRITYの重要な特徴だ。

 こうした分離の仕組みによってINTEGRITYは仮想化環境としても優れているとADaCの穂積広一氏は説明する。「一般的な仮想化環境は、ハードウェアの上でハイパーバイザが走り、さらにその上でリアルタイムOSやゲストOSが動作します。そのため、どうしてもリアルタイム・アプリケーションの実行時にオーバーヘッドが生じます。INTEGRITYはハイパーバイザがもともと組み込まれた作りになっているため、リアルタイム・アプリケーションを高速に実行することが可能です」(穂積氏)。

外部からの侵入をしっかり遮断

 機能安全と並んで、近年の自動車のECUや産業機器の制御システムには高度なセキュリティも求められている。外部のネットワークに接続する仕組みが採り入れられるようになり、マルウェアの侵入や外部からの不正なアクセスへの対策が必要になってきたからだ。

 INTEGRITYはそうしたセキュリティのニーズにも高いレベルで満たせる。「もともとINTEGRITYは、米国国防総省が1983年に作成し、現在はISO/IEC 15408のコモンクライテリア(CC)に引き継がれているTCSEC(Trusted Computer System Evaluation Criteria)を満たすリアルタイムOSとして開発されました。そのため極めて堅牢な作りになっており、ISO/IEC 15408のEAL6+という最高レベルの評価保証レベルを取得しています」(慶野氏)。

 具体的な例として、INTEGRITY上でオープンOSのほか機能安全アプリケーションや一般アプリケーションが動作しているときに、オープンOS上にマルウェアが侵入したとしても、INTEGRITYはアプリケーション空間ごとの完全な分離が保たれているため、物理メモリやI/Oに直接アクセスは不可能。クラッキングはもちろん他のアプリケーションやINTEGRITY自体に影響を及ぼすこともできない(図2)。

図2 ゲスト空間を完全に分離して悪意あるソフトウェアの侵入を完全に防御
[画像のクリックで拡大表示]

コントローラの統合化にも最適

名知 克頼 氏
株式会社 アドバンスド・データ・コントロールズ
ビジネス開発部 担当部長

 INTEGRITYは、最近になって急速に進化している「デジタルコックピット(統合コンソール)」にも適している。 「最近は自動車分野も産業分野も機能を統合化する方向に進んでいます。この動きが先行しているのが、自動車のメータークラスタです。従来の計器類に加えて警告灯、カーナビゲーション・システムなどを一つのメータークラスタに一体化した『デジタルコックピット』の開発が急ピッチで進んでいます。特に最近は警告灯のように極めて高い信頼性を求められる機能を統合する動きがでてきたため、デジタルコックピット全体の安全性や信頼性に対する要求が、格段に厳しくなってきました」とADaCの名知克頼氏は語る。

  こうした中、具体的な問題もデジタルコックピットの開発の現場で浮上している。つまり、カーナビゲーションやマルチメディア(インフォテイメント)の制御にはオープンなLinuxあるいはAndroidが使われるケースが多い。これを、そのままゲストOSとしてデジタルコックピットに統合すると、他のアプリケーションへの干渉や脆弱性の問題を招く。こうした問題もINTEGRITYならば解決できる。

 機能安全への対応やセキュリティの強化など自動車や産業用システムを中心に、組み込みシステムに求められる要件は高度化の一途を辿っている。こうした状況に柔軟かつ速やかに対応できる組み込みシステムの実現をするうえで、有力なソリューションをもたらすのがGHS社のINTEGRITYと言えよう。

お問い合わせ
  • アドバンスド・データ・コントロールズ
    アドバンスド・データ・コントロールズ

    〒170-0004 東京都豊島区北大塚1丁目13番4号 オーク大塚ビル

    TEL:03-3576-5351(代)

    FAX:03-3576-1772

    URL:http://www.adac.co.jp/