source: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/README-mruby.txt@ 374

Last change on this file since 374 was 374, checked in by coas-nagasima, 5 years ago

mbed関連を更新
シリアルドライバをmbedのHALを使うよう変更
ファイルディスクリプタの処理を更新

  • Property charset set to UTF-8
  • Property svn:eol-style set to native
  • Property svn:mime-type set to text/plain
File size: 2.8 KB
Line 
1mruby
2 2017.4.17 新規
3 2017.11.4
4 大山 博司
5
6■概要
7
8mruby ディレクトリには、組込み用 mruby VM のセルタイプ、および
9MrubyBridgePlugin に対応したモジュールが含まれます.
10
11mruby V1.2.0 に対応しています.V1.1.0 でもビルドすることは可能です.
12
13ここには mruby の本体は含まれません.以下からダウンロードする必
14要があります.
15 http://forum.mruby.org/
16
17■TECS ジェネレータ V1.5 での変更
18
19tMruby.cdl (パス:tecsgen/tecs/mruby/tMruby.cdl) を新設した.
20以下を可能にするために tMruby を composite に分解した.
21 * mruby スクリプトの周期タスク実行
22 * VM ごとに異なる TLSF アロケータコンポーネントを使用
23
24tMruby.cdl では tMruby (ネームスペースパス:nMruby::tMruby) の実装
25を
26新しくした他、周期タスク実行用の tMrubyCyclic (同:nMruby::tMrubyCyclic)
27を新設した.tMruby を分解した、tMrubyVM セルタイプと、そのシグニチャ
28sMruby (sMruby.cdl内
29) も新設した.
30
31tMruby.cdl に置き換え可能だが、以下の点でビルド用 Makefile の変更が必
32要.
33 * TLSF ヘッダ tTLSFMalloc_inline.h へのパスを追加
34 * TLSF のオブジェクトの追加 (mruby+TECS on EV3 には実装
35済み)
36
37また、以下の点に留意する必
38要がある.
39 * TLSF は、VM ごとに 1MB を割り付ける
40
41このため、十分な空きメモリが必
42要である.
43このサイズは VM セルの定義で変更可能 (属性 memoryPoolSize).
44
45■ コンポーネント概要
46
47tMruby.cdl: (TECS ジェネレータ V1.5.0 以降)
48 celltype tMrubyVM
49 VM を実装
50するためのセルタイプ.メモリアロケータ TLSFMalloc を含ま
51 ない. 受け口 eMrubyVM のシグニチャは sMruby.
52
53 composite tMruby
54 受け口 eMrubyBody のシグニチャを sTaskBody とする.tTLSFMalloc も
55 組みå…
56¥ã‚Œ.
57
58 composite tMrubyCyclic
59 受け口 eMrubyBody のシグニチャを sTaskBody とする.tTLSFMalloc も
60 組みå…
61¥ã‚Œ.
62 周期タスク起床を前提としている.
63 一回目の呼出しでは mrb_open し、ブリッジセルを登録後、mrb_run を呼
64 び出してスクリプト実行を行う.スクリプト終了後に mrb_close は呼び
65 出されない.
66 二回目以降の呼出しでは mrb_run のみ呼び出される.
67 終了処理 mrb_close を呼びだす手段は提供していない.突然電源が切ら
68 れることを前提としている. (少なくとも最初の実装
69では).
70
71sMruby.cdl:
72 signature sMruby
73 初期化、実行、終了処理に分解したシグニチャ
Note: See TracBrowser for help on using the repository browser.