エニアOSE: マルチコア・プロセッサ対応 リアルタイムOS

分散環境向けに最適化された、コンパクト、高信頼性、ハイパフォーマンスなリアルタイムOS

エニアOSEは、モジュラー構造、スケーラブル、マイクロカーネル・アーキテクチャを用いた組込み用のリアルタイムOSです。 通信インフラ機器から携帯端末、マルチファンクション・プリンタ、自動車、航空/防衛、産業機器に至るまで、世界中で数多くの採用実績があります。 具体的には、例えば世界の携帯電話の半数以上の通話はエニアのRTOSでハンドリングされています。(全世界の約半数の基地局にOSEが採用。)  携帯端末側では世界中で出荷された携帯電話の約1/3にエニア製RTOSが登載されています。

  • 分かり易い構造なので導入までの学習が簡単
  • IPv6対応のプロトコルスタックと各種セキュリティ・フィーチャー
  • ヘテロジニアス分散環境にも有効なOS構造
  • OSEとLinux間をもつなぐ、マルチ・プラットフォーム、マルチレベル・インタープロセス・コミュニケーションのLINX
  • EclipseベースのIDE、システムレベル・デバッガ、プロファイリング等の広範囲なOSE専用開発ツールも完備
 
概要

コンピューターパフォーマンスが単純にCPUクロック周波数の向上に頼れなくなった近年、マルチコア技術は益々進化し、組込みシステムの中でも主流の地位を築こうとしています。 一方ソフトウェアプログラミングの世界では、これらマルチコア・プロセッサー用のソフトウェア開発は従来のシングルコア・プロセッサー用の開発に比較し、決して容易な仕事ではありません。 エニアOSEのスケーラブルなマルチコア・サポートは、従来のプログラミングに対する新しい回答です。

 

シンプルですがとても有力なAPIを提供するOSE上のプログラミングは、基本的に8つのシステムコールだけで多くのプログラムを組むことができます。 このバーサタイルなAPIとOSEのハイレベル・メッセージ・プロトコールが、アプリケーション規模と複雑性を解消し、シンプルかつパワフルなプログラミングを可能にします。OSEはサブセットAPIにより、少ないアプリケーションコードの変更によって、同OSEファミリーであるOSEck、OSE Epsilonとの間の移植性/再利用性も高めています。

 

OSEが長期に渡り世界中のアプリケーションで採用されている理由は、そのOS構造にあります。 モジュラー構造、マルチレイヤー・アーキテクチャ、非同期のダイレクト・メッセージ・パッシング等、様々な構造的、本質的な特長を備えています。 この本質的に分散されたアーキテクチャがハイパフォーマンスを確保するとともに、プログラマーがシングルCPUから大規模な分散環境(マルチコア/マルチCPU)システムまで容易に拡張できるアプリケーションの概念化を可能にします。

 

エニアのIPCサービスであるLINXは、マルチコア上に分散したアプリケーションもダイレクト・メッセージ・パッシングにより有機的に接続できます。 LINXはシングルCPU上、マルチコアCPU上、分散環境システムにおける複数ノードをも、シームレスにつなぎ、OSEとLinux間を有機的に接続することもできます。 (Linux用のLINXは無償です。) LINXは複雑なアプリケーションのパーティションや分散をシンプル化します。また最終コードの拡張性とメンテナンス性を向上させ、結果として最小の変更だけで既存アプリケーションを最新ハードウェア上で再利用できます。

 

OSEは最新のメモリ・プロテクション機能をサポートし、安全性と信頼性を確保しています。これらの機能はOSEのビルドインプロセス監視、障害検知、障害通知と結合し、アプリケーション開発とデバッグを簡素化するだけではなく、分散システムのテスト、アップグレードや認証をも容易にします。

 

OSEのマルチコア・エディションは従来のシングルコア・エディション上のアプリケーションとの下位互換を維持しています。 OSEマルチコア・エディションは、SMP型での使い易さを維持しながらAMP型並の高いパフォーマンスをマルチコアCPUから引き出します。 

 

OSEのファイルシステムサポートは多彩です。 クラッシュ・セーフ対応のファイルシステム、JEFF (Journaling Extensible File-system Format)は最新式のファイルシステムで、優れた特性と高いパフォーマンスを持っています。 JEFFはハイ・アベーラビリティ要求のある通信インフラ機器では標準的に選ばれているファイルシステムタイプです。

 

オプションのOSEシミュレーション環境であるOSEソフトカーネルは、OSEプロセスをWindows、Linux、Solarisホスト上でシミュレーションさせることができます。 これにより、ハードウェアが完成するまでソフトウェア開発を待つ必要がなく、ハードウェアが完成するまでの間も開発作業を進めることができ、いざハードウェアの準備が整ったら速やかに実機環境へ移行させることができます。

 

OptimaはEclipseベースのIDEです。 ビルド、ロード、デバッグ、プロファイリングを、CPU、システムレベルで提供します。

特長
  • 直観的なメッセージ・パッシング・アーキテクチャとプログラミングモデル。 モジュラー・システム設計により、プログラミングの複雑さを緩和、結果としてメンテナンスコスト削減とTTMの短縮を実現。
  • LINXによる優れたインタープロセス・コミュニケーションを実現。 分散化設計を簡素化し拡張性を増強。
  • モジュラー構造のレイヤード・マイクロカーネル・アーキテクチャー。 サービス(機能)とフットプリントをバランスさせながら、ケーネルをコンフィギュレーション可能。
  • 強いメモリ保護。 MMU対応。
  • ビルドイン・プロセス監視機能と障害検知機能。 OSEのエラー・ハンドラは3つのレベルで動作します。 先進のエラー検知とエラー処理により丈夫なアプリケーション開発を実現。 
  • ダイナミック・ランタイム・プログラム・ローディング。 プログラムは動作中でも動的にロード/アンロードできます。 
  • 包括的なネットワーク・セキュリティーサポート。 
  • クラッシュ・セーフなジャーナリング・ファイルシステムであるJEFFをサポート。
  • デマンド・ページング・サポート。 デマンド・ページングがRAM容量を最適量に抑え、RAMの部品コストを低減。
  • 低電力消費のスリープ・モードでパワー管理。
  • OSEソフトカーネル・シミュレーター。 実機(ハードウェア)がない状態でもプログラム開発が可能。 プロジェクトのスタートUPが向上。
  • エニアOptimaツール。 CPUとシステムレベルにおいて、ビルド、ロード、ラン、デバッグ、プロファイリングが可能。
プロセッサー

ARM9E

ARM11

Xscale

Cavium Octeon Plus (CM58xx and CM56xx)

IBM PPC4xx

IBM PPC7xx

Freescale MPC86xx (multicore support on MPC8641D)

Freescale MPC85xx (multicore support on MPC8572DS, QorIQ P2020)

Freescale MPC83xx

Freescale MPC82xx

Freescale MPC74xx

MIPS32

関連製品・サービス

ENEA Optima

ENEA dSPEED

ENEA LINX for OSE

Enea Illuminator

マルチコアOSの新しいかたち!

SMPタイプの使い易さとAMPの高パフォーマンスを同時に実現。 「How」はホワイトペーパーをご覧ください。

エニアマルチコア: SMP/AMPのハイブリッド 技術による高パフォーマンス・パケット・プロセッシングを実現