= TOPPERS/EV3RT とは? = == TOPPERS/EV3RT とは? == [[TOC(depth=1, WhatsEV3RT, Download, DevEnv, SampleProgram, UserManual, EV3RTsAPI, EV3RTCXXAPI, EV3RTMAPI, FAQ, Contacts)]] * TOPPERS/EV3RT(Real-Time platform for EV3)は、メモリ保護機能付きRTOSである[http://toppers.jp/hrp2-kernel.html TOPPERS/HRP2カーネル]をベースとしたMindstorms EV3用の開発プラットフォームです。 * EV3RTを使って、CやC++等の開発言語でリアルタイム性の高いアプリケーションを開発することができます。 * [http://www.etrobo.jp/2015/ ETロボコン]2015の公式ソフトウェアプラットフォームの1つとして採用されています。 * [http://www.ertl.jp 名古屋大学 大学院情報学研究科 高田研究室]を中心に開発を進めています。 * 毎年,TOPPERSプロジェクト主催で無料セミナーを開催しています。セミナーの資料は,[wiki:seminar_text こちら]で公開しています。 == 特徴 == 主な特徴は以下の通りです。 * 起動が高速 * 約5秒! * メモリ消費量が少ない * 標準プラットフォームの約10% * 高いリアルタイム性 * 静的優先度割当て * プリエンプティブ優先度ベーススケジューリング * 予測可能性の高いカーネル構造 * メモリ保護機能 * カーネルは特権モードで動作 * アプリケーションは,非特権モード(ユーザモード)で動作.アプリケーションの不具合がカーネルに波及しない. * 豊富なAPI * μITRON仕様ベースのRTOS API * [http://toppers.jp/documents.html#ngki_spec TOPPERS次世代カーネル統合仕様]準拠のAPI * 標準Cライブラリ(Newlib) * EV3用C言語API * Linux 向けのデバイスドライバを移植(GPLのコードが含まれているので注意) * APIリファレンスは[http://www.toppers.jp/ev3pf/EV3RT_C_API_Reference/modules.html こちら] * EV3用C++言語 API(開発中) * ダイナミックローディング機能 * カーネルを停止することなく,アプリケーションを書換え可能 * ワークスペース機能 * 複数のアプリケーションの開発を容易に管理 == ソフトウェア構成 == [[Image(pic1.png)]]