デュアルOSチェンジャー TOPPERS-Pro SafeG

『TOPPERS-Pro SafeG』は、NPO法人TOPPERSプロジェクトが開発したオープンソースソフトウェア「SafeG」をベースとしています。

SafeG技術とは、ARMプロセッサのTrustZoneセキュリティ拡張機能を利用した技術です。この技術を活用することにより、同一ハードウェアプラットフォーム上で汎用OS(Linux/Android)とRTOSであるTOPPERSカーネルを分離し、安全に同時実行することができます。

主な特長

  • シングルコアでも安全にRTOS(TOPPERSカーネル)と汎用OSとを分離
    ARM TrustZone技術を活用し、仮に汎用OSが意図しない停止をしても、RTOSには影響がありません。
  • マルチコアにも対応
    マルチコアを使用する場合、RTOSと汎用OSとをコア毎に分けて使用することも可能であり、コアを共用することも可能です。(クアッドコアの場合、RTOS:汎用OSを、1:3で使用、2:4で使用、4:4で使用など、自由に設定できます。)
  • RTOSと汎用OSとの切替えが高速
    コアのクロックなどにも影響されますが、RTOSの割込み応答遅延は低く、デュアルOSをうたう製品群の中でトップクラスの速さを誇ります。一般的なCortex-A9コアの場合、RTOSの切替えに伴う割込み応答遅延は20μsec.以下です。
  • 優れたコストパフォーマンス
    TOPPERS-Pro SafeGはシンプルな構成であり、移植性に優れています。汎用OS側の修正量が少なくて済むため、購入時の改造コストやその後のメンテナンスコストが低く済むメリットがあります。
  • MDCOM(ドメイン間通信ライブラリ)を提供
    TOPPERS-Pro SafeGにはMDCOMと呼ばれる、RTOS(標準はTOPPERS-Pro/ASPもしくはTOPPERS-Pro/FMP)と汎用OS(標準はLinux)との通信ライブラリを提供します。通信方式としては、共有メモリを使うAPIとチャネル(イベント)通信を使うAPIとを用意しています。

対応環境

対応CPU Cortex-A
Cortex-A MPCore

ユーザーの利益性

  • 従来のµITRONのソフトウェア資産が、ほぼそのまま使用可能なため、工数の削減に寄与します。
  • 一般的なハイパーバイザのような極端なハードウェアの仮想化を行わずに、TrustZoneのワールドコンテキスト切替え機能のみを利用するため、オーバヘッドが非常に低くパフォーマンスが高いシステムを構築できます。
  • TOPPERSカーネルが優先される仕組みのため、リアルタイム性と高速起動を実現できます。
    オプション製品のQuickBoot Lite Editionを組み合わせることで、リアルタイムOSのみならず、Android/Linuxの高速起動を実現することも可能です。
  • Android/Linuxの変更が軽微であるため、OSのバージョンアップへの追随が容易です。

技術サポート体制

専任の担当者による技術サポートを提供いたします。

移植・チューニング

ユビキタスAIコーポレーションが提供するソフトウェアの移植サービスからアプリケーションの開発受託サービスなどを、別途承っております。開発期間が短い場合やエンジニアリングリソースが不足している時など、お客様に代わり経験豊富なエンジニアが移植、開発作業を行います。

【技術コラム】組込み機器でも使える仮想化(ハイパーバイザー)

近年、組込み機器でもハイパーバイザーによる仮想化を利用し、1CPU上で複数のOSを動かすケースが増えてきています。最近のCPUアーキテクチャはどれも仮想化支援機構を備えており、ハードウェア(HW)を仮想化するハイパーバイザーはこの機構を利用しています。

組込み機器で広く使われているARMプロセッサには、TrustZone(Security Extensions)とVirtualization Extensionsという2つの仮想化支援機構が存在します。

safe-g_column01.jpg

TrustZoneは、CPUにセキュア状態という概念を導入しました。
各状態用にHWリソースを2重化したことで、1CPUで2つのOSを動作させることが可能になりました。ハイパーバイザーによるOSの切替は、セキュア状態の切替に相当するために高速な切替が可能となっています。また、Non-Secure状態で動くOSは、Secure状態に割当てられたメモリへはアクセスできません。
これにより、セキュリティの確保も容易になりました。

一方、Virtualization Extensionsは、Non-Secure状態で複数のゲストOSを効率的に切り替えるための仮想化支援機能です。

以上のことから、TrustZoneはセキュリティや機能安全のためのセパレーション実現、リアルタイム性の確保に向いており、Virtualization Extensionsはデータセンターでのマルチインスタンスの実現などに適しています。

どちらの技術を利用しているかは、ハイパーバイザーにより異なります。それぞれ得意な領域が違うため、用途に応じたものを選ぶことが重要です。

関連製品:TOPPERS-Pro SafeG

製品を探す