embOS
embOS
リアルタイムオペレーティングシステム
embOSは、組込みリアルタイムアプリケーションの開発のための基盤として使用するために設計された優先度制御のリアルタイムオペレーティングシステムです。それは、ゼロ割り込みレイテンシ*、RAMとROMの両方で最小のメモリ消費量だけでなく、高速性と汎用性のために最適化された高性能なRTOSです。embOSの開発プロセスを通して、マイクロコントローラの限られた資源を常に念頭に保持されています。embOSの内部構造は、さまざまな業界のニーズに合わせて、さまざまな顧客との様々なアプリケーションに最適化されています。embOSは、異なるCPUへのアプリケーションの移植が容易、完全なソース互換の異なるプラットフォーム(8/16/32ビット)上です。その"高度にモジュラー構造は、ROMサイズが非常に小さく抑え、必要な機能のみがリンクされていることを保証します。タスクが簡単に作成することと安全にお互いがこのようなセマフォ、メールボックス、およびイベントなどの通信メカニズムの完全なパレットを使用して相互に通信できます。割り込みサービスルーチン(ISR)はまた、これらの通信メカニズムを活用することができます。
*優先順位の高い割り込みがembOSでは無効にされることはありません。
機能
- プリエンプティブスケジューリング:READY状態のすべてのタスクの、最高の優先度を持つものが優先順位の逆転が適用されるような状況を除いて、実行されることを保証します。
- 同一の優先順位を持つタスクはラウンドロビンスケジューリング。
- プリエンプションは、タスク全体またはプログラムのセクションに対して無効にできます。
- スレッドローカルストレージのサポート。
- スレッドセーフなシステムライブラリのサポート。
- したがって設定作業は必要ありません
- 最大255個の優先事項に:すべてのタスクは、個々の優先度を持つことができる=>タスクの応答が正確にアプリケーションの要件に応じて定義することができます。
- タスクの無制限の数(使用可能なメモリ量によってのみ制限されます)。
- セマフォの数に制限(使用可能なメモリ量によってのみ制限されます)。
- メールボックスの数に制限(使用可能なメモリ量によってのみ制限されます)。
- メッセージのサイズと数は自由に定義することができます。
- ソフトウェアタイマの無制限の数(使用可能なメモリ量によってのみ制限されます)。
- 時間分解能のダニは自由に(デフォルトは1msです)を選択することができます。
- 高分解能の時間測定(ダニよりも正確)。
- 電源管理:未使用のCPU時間は、自動的に消費電力を最小限に抑え、停止モードで消費することができます。
- フル割り込みサポート:ほとんどのAPI関数は、割り込みサービスルーチン(ISR)内から使用することができます。
- ゼロ割り込みレイテンシの時間。
- ネストされた割り込みが許可されています。
- 簡単にスタートするためのアプリケーションとプロジェクト(BSP)を起動します。
- ビルドは、開発の簡素化、実行時チェックを実行デバッグする。
- タスクのプロファイルごとに高精度。
- リアルタイムカーネルのビューア(embOSView)が含まれています。
- 非常に高速かつ効率的に、まだ小さいコード。
- 最小RAM使用量。
- アセンブリ言語で記述されたコア。
- すべてのAPI関数は、C / C + + /アセンブリから呼び出すことができます。
- 源としてのマイクロコントローラのハードウェアの初期化。
- 同じCPUでサポートされていないハードウェア用のBSPは、ユーザーが簡単に書き込むことができます。
ソフトウェア構造とコンポーネント
サポートされているCPU
embOSは、CPUと開発環境のさまざまなに移植されています。我々は常にリストに新しいデバイスを追加する。
embOSの試用版
様々なプロセッサについては、embOSはフル機能の試用版としてダウンロードすることも可能です。すべての試用版もダウンロードページから個別にダウンロードすることができるユーザーマニュアルとembOSViewツール、スタートプロジェクトを行って完全な準備が含まれています。もちろん、試用版のためのいくつかの制限があります:製品の試用版を使用することは許可されていません。embOSライブラリの試用版は、3つのタスクの最大時間制限なしで実行。アプリケーションが4つ以上のタスクを作成する場合、embOSは12時間の時間制限後に停止します。顧客サポートは含まれていません。embOSの試用版は使用するプロセッサに対応しているかどうかを確認するには、サポートされるプロセッサのリストをチェックしてください。
embOSViewを使用してプロファイリング
IAR Embedded WorkbenchにするためのembOSプラグイン
IAR Embedded Workbenchの™のためのembOSプラグインは、デバッグセッション中にembOSの意識を提供します。このようなタスク、リソースセマフォ、メールボックス、またはタイマーのようないくつかのembOSオブジェクトの状態を検査することができます。
embOSの標準的なアプリケーション
embOSは、バッテリ駆動、シングルチップ製品から、超高速応答性、柔軟性、複数のタスクを要求するシステムに任意のアプリケーションで使用することができます。典型的なフィールドは次のとおりです。工業用機器のテストおよび計測機器の通信医療機器民生用電子機器...
テクニカル情報
カーネルのサイズ(ROM)1100から1600バイト*
カーネルのRAM使用率18から25バイト*
10MHzのM16Cと1ミリ秒の割り込みでカーネルのCPU使用率:未満0.3パーセント
15バイト* - RAMの使用量は9メールボックス
RAM使用量のバイナリとカウンティングセマフォ3バイト
RAM使用量のリソースセマフォ4〜5バイト*
RAMの使用量のタイマー9から11バイト*
RAMの使用量のイベント0
基本的な時間の単位(1ティック)デフォルト1ミリ秒は、、最小に設定することができます。100マイクロ秒(M16C 10MHzで)*
無の独立したタスクの起動時間。タスクの(例:代表値12我M16C @ 10MHz)の
ゼロ割り込みレイテンシ
タスクの数:無制限(のみ利用可能なRAMで)
メールボックスの数:無制限(のみ利用可能なRAMで)
セマフォの数:無制限(のみ利用可能なRAMで)
S / Wタイマーの数:無制限(のみ利用可能なRAMで)
マックス。ない。255:優先順位の
マックス。ない。同一の優先順位を持つタスク(ラウンドロビンスケジューリング)無制限の
- カーネルのサイズ(ROM)1100から1600バイト*
- カーネルのRAM使用率18から25バイト*
- 10MHzのM16Cと1ミリ秒の割り込みでカーネルのCPU使用率:未満0.3パーセント
- 15バイト* - RAMの使用量は9メールボックス
- RAM使用量のバイナリとカウンティングセマフォ3バイト
- RAM使用量のリソースセマフォ4〜5バイト*
- RAMの使用量のタイマー9から11バイト*
- RAMの使用量のイベント0
- 基本的な時間の単位(1ティック)デフォルト1ミリ秒は、、最小に設定することができます。100マイクロ秒(M16C 10MHzで)*
- 無の独立したタスクの起動時間。タスクの(例:代表値12我M16C @ 10MHz)の
- ゼロ割り込みレイテンシ
- タスクの数:無制限(のみ利用可能なRAMで)
- メールボックスの数:無制限(のみ利用可能なRAMで)
- セマフォの数:無制限(のみ利用可能なRAMで)
- S / Wタイマーの数:無制限(のみ利用可能なRAMで)
- マックス。ない。255:優先順位の
- マックス。ない。同一の優先順位を持つタスク(ラウンドロビンスケジューリング)無制限
* CPU、コンパイラや使用ライブラリの機種により異なります。
ライブラリとソースコード
embOSは、ライブラリやソースコードとして利用可能であり、ソースコードのバージョンは、ライブラリとライブラリのソースコードが含まれています。どちらのバージョンは、スタートプロジェクト、BSPおよびembOSViewに行く準備が付属しています。ライブラリの異なるビルドも含まれています:リリース/スタック、アプリケーションプログラムから、通常、リリースで使用され、ビルドのビルドチェック、デバッグ/プロファイリング、通常、開発段階で使用されるビルド。ライブラリは、コンパイラのサポートされているすべてのメモリモデル、デバッグライブラリーとアイドルタスクとハードウェアの初期化のためのソースコードを含むembOSの全機能を提供します。しかし、ライブラリはライブラリルーチンとカーネルのソースレベルのデバッグを許可しません。完全なソース版は、究極のオプションが用意されています:embOSは、異なるデータサイズのために再コンパイルすることができます。異なるコンパイルオプションは、生成されたコードの完全な制御を与える、それが可能な汎用性やメモリの最小要件については、システムを最適化すること。システム全体をデバッグして修正することができます。