TOPPERS TECS WG 2016

7,672 views

Published on

TECS: TOPPERS Embedded Component System
In this document we provide you the outline of

Published in: Software
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
7,672
On SlideShare
0
From Embeds
0
Number of Embeds
6,159
Actions
Shares
0
Downloads
16
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

TOPPERS TECS WG 2016

  1. 1. TOPPERS TECS WG 大山博司 TOPPERS プロジェクト TECS WG 主査 名古屋大学大学院 情報科学研究科 客員教授 12016/06/03 TOPPERSプロジェクト
  2. 2. 目次  TECS の特徴  今年のトピックス – TECS が TOPPERS/ASP3 に同梱! – mruby-on-ev3rt+tecs_package を公開! – TECS リファレンスマニュアルを公開! 22016/06/03 TOPPERSプロジェクト
  3. 3. 組込みコンポーネントシステム TECS  TECS – TOPPERS Embedded Component System  組込みコンポーネントシステムとは – 組込みソフトウェアをコンポーネントやサブシス テムに分割して開発する方法を支援する仕組み – ソフトウェアを部品化して再利用性を高める、あ るいは部品流通を促進する仕組み  TECS の特徴 1) C言語のためのコンポーネントシステム 2) TOPPERS 系 OS に最適 3) 分散や高級言語 I/F をサポート 32016/06/03 TOPPERSプロジェクト
  4. 4. TECS の特徴 1) C言語のためのコンポーネントシステム  カプセル化できる – 関数インタフェースのみで結合  関数インタフェース :TECS では signature と呼ぶ  インタフェースの、より正確な定義 – C 言語のプロトタイプ宣言の曖昧さを TECS がカバー  ダイナミックバインディング(相当)を実現 – 関数テーブルを自動生成  関数テーブルの要否を、TECS ジェネレータが自動判定 (最適化でメモリおよび実行時オーバーヘッド低減)  静的な生成と結合 – 実行時オーバーヘッド、メモリオーバーヘッドの低減  マルチインスタンス化が容易(シングルトンも可) – 同種(同じセルタイプ)のコンポーネントを複数生成 – ポインタ渡し、ID(整数値) 渡しを選択可 42016/06/03 TOPPERSプロジェクト
  5. 5. TECS の特徴 2) TOPPERS の RTOS に最適  タスクやセマフォーなどもコンポーネント化 – コンポーネントシステムの下に隠さない  粒度の小さなものも気にせずコンポーネントにできる – インライン関数としてコンポーネントを実装  低オーバーヘッド  cfg, oil ファイルを自動生成 – factory (ルールが複雑な場合は celltype プラグイン)によ り自動生成  関数名を分かりやすい名前に再定義 ex) act_tsk ⇒ activate (シグニチャ名が対象を表す)  ROM 化をサポート  TOPPERS/HRP2 の保護ドメインを視覚的に表現 – ドメインに合わせて、コードを分割生成 5 ! 2016/06/03 TOPPERSプロジェクト
  6. 6. TECS の特徴 3) 分散や高級言語 I/F をサポート  分散フレームワーク – RPCPlugin, OpaqueRPCPlugin により、リモート呼出しに 必要なマーシャラ、アンマーシャラを自動生成 – 通信チャンネルの交換で、種々の環境に対応  mruby から TECS を操作 – MrubyBridgePlugin により、mruby から TECS コンポー ネントを操作するインタフェースコードを自動生成 インタフェースの、より正確な定義により、自動生成が可能と なる 2016/06/03 6TOPPERSプロジェクト
  7. 7. 目次  TECS の特徴  今年のトピックス – TECS が TOPPERS/ASP3 に同梱! – mruby-on-ev3rt+tecs_package を公開! – TECS リファレンスマニュアルを公開! 72016/06/03 TOPPERSプロジェクト
  8. 8. TECS が TOPPERS/ASP3 に同梱!  システムサービスのTECS化 – SysLog の実装のカスタマイズ容易化 ⇒プロダクトライン的な利用  TECS 版サンプルも同梱 – TECS を使用したアプリケーション開発用のサン プル 82016/06/03 TOPPERSプロジェクト
  9. 9. TOPPERS/ASP3 のシステムサービス ターゲット: ct11mpcore_gcc tecscde V0.5.1 を使用して cdl ファイルから作成 % rm -f gen/tecsgen.timestamp % make tecs “TECSGEN=tecscde.exe” ここから位置を移動して作成 色は、cdl ファイルを表す. 同じ色は、同じcdl ファイル に組上げ(セル)記述がある 92016/06/03 TOPPERSプロジェクト linux版は不要
  10. 10. TOPPERS/ASP3 のシステムサービス ターゲット: macosx_xcode cde ファイルの __tool_info__ (位置情報)を コピーして、同じ配置に している cdl ファイルの構成が 異なるため、 ct11mpcore と異なる 色づけとなる 微妙に異なることが わかる 10 この結合がなくなってい る 2016/06/03 TOPPERSプロジェクト
  11. 11. TOPPERS/ASP3 TECS 版サンプル 11 % mkdir obj_tecs % ../configure.rb -A tSample2 -T ct11mpcore_gcc で TECS 版サンプルを作成 2016/06/03 TOPPERSプロジェクト
  12. 12. TOPPERS/ASP3 TECS 版サンプル 12 サンプルアプリ部 システム サービス部 2016/06/03 TOPPERSプロジェクト
  13. 13. mruby-on-ev3rt+tecsパッケージを公開!  ダウンロード先 URL https://www.toppers.jp/tecs.html#mruby_ev3rt mruby-on-ev3rt+tecs_package-beta1.0.0.tar.gz  ドキュメント (同梱) – doc/mruby_on_ev3rt+tecs_build.pdf – doc/mruby_sample.pdf – doc/EV3RT_mruby_API_Reference.pdf – doc/EV3RT_mruby_API_Reference/index.html  ET ロボコン https://github.com/ETrobocon/etroboEV3/wiki 132016/06/03 TOPPERSプロジェクト
  14. 14. MINDSTORMS EV3用 mruby-on-ev3rt+tecsパッケージ 2016/06/03 14
  15. 15. MINDSTORMS EV3用 mruby-on-ev3rt+tecsパッケージ 2016/06/03 15 タスクとVM mruby ⇒ TECS ブリッジ とデバイスドライバ mruby ⇒ TECS ブリッジ 初期化セル (mruby へのクラス登録)
  16. 16. コア部分拡大 2016/06/03 16 タスクとVM
  17. 17. TECS リファレンスマニュアルを公開!  参照URL – http://dev.toppers.jp/trac_user/tecs/  TECS リファレンスマニュアル – TECS 利用者のためのマニュアル  TECS 仕様書 – TECS を実装できるまで詳細化した仕様が目標  CDL を BNF レベルで解説 (必ずしも読みやすくない)  最新仕様に追従できていない 2016/06/03 TOPPERSプロジェクト 17
  18. 18. TECS WG の活動  毎月一回WG ミーティングを開催 – TECS WG のML で案内を流しています  年に一回合宿を開催 (最近6年の開催場所) – 2010年度 下呂 – 2011年度 韓国 – 2012年度 島根 – 2013年度 福岡 – 2014年度 静岡(開発者会議併催), 兵庫(3月) – 2015年度 静岡(開発者会議併催), 琵琶湖(3月)  今年度も2回開催予定 – 2016年10月 静岡(開発者会議併催) – 2017年3月 未定(2017年3月) 182016/06/03 TOPPERSプロジェクト
  19. 19. わからないときは  TOPPERS 会員の皆さま – com-wg@toppers.jp … TECS WG の ML – dev@toppers.jp … 開発者 ML  非会員の皆さま – users@toppers.jp … ユーザー ML 192016/06/03 TOPPERSプロジェクト

×