組み込み向けオブジェクト指向言語はどうよ(2013.07〜)

最近 .netMF や mruby など、次世代の組み込み用の枠組みの話題が散見されるようになってきた。

Python 対 Ruby 対 C#

つまり

組み込みpython(?) 対 mruby 対 .NET MicroFramework

といった関係になるのだろうか。



.NET MF , mruby を比べると、共に中間コードを実行する、オブジェクト指向言語、ほぼ同程度のハードウエアリソースが必要など、それなりに似ている。pyMite は8ビットCPU版も存在するように若干守備範囲が違う。また、Lua の組み込み版 eLua や Squirrel もある。

.netMFmruby組み込みpython
(Python-on-a-Chip)
eLuaSquirrel
実行の方法VM
主な記述言語C#RubyPiMite?python?
クラス○(?)×
GUIライブラリ標準ありなし(独自実装) ?
CPUARMARM,RXAVR?ARM?ARM(M3)
サイズ?基本的には1つ(?)ミニマル,スタンダード,フル
の3つ
?
サイズ?
ROM/RAM
512K/128K(?)280K/120K
(IF誌2013.02.p112より)
55K/8K(C++で6,000行)
MMU不要??
デバッガ VisualStudioに包含 ?
割り込み 直接は記述できない(?) ?
マルチスレッド
(タスク)
preemptive preemptive nonpreemptive nonpreemptive
移植性
Web情報のまとめ

.netMF
 土井研.netMFページ
 http://doilab.net/web/jisyu/winnext/dotnetmf/index.html

PyMite
 組み込みpython(Python-on-a-Chip)
 http://code.google.com/p/python-on-a-chip/  

 土井研PyMiteページ
 http://doilab.net/web/jisyu/mic/pymite/index.html
 
mruby
 土井研mrubyページ
 http://doilab.net/web/jisyu/mic/mruby/index.html

 mrubyフォーラム
 http://forum.mruby.org/index.html

 IIJの解説
 http://www.iij.ad.jp/company/development/tech/activities/mruby/

 東芝情報システムの解説
  「組込みソフト開発の新潮流 軽量Rubyのご紹介」PDFが詳しい。
  CycloneIIIにVMを搭載した例も紹介されている。
 http://www.tjsys.co.jp/page.jsp?id=2998

 雑誌インターフェース連載「マイコンで使えるスクリプト言語「mruby」」
  第1回mrubyの特徴とコンパイラの準備       2013年2月号p112
  第2回お試し!Windowsパソコン上でmruby      2013年3月号p131
  第3回ハード制御はCにお任せ!C言語関数の呼び出し 2013年7月号p124

Squirrl
 土井研Squirrl
 http://doilab.net/web/jisyu/mic/index_squ.html

 日本語wiki
 http://ja.wikipedia.org/wiki/Squirrel

eLua
 eLua wiki
 http://wiki.eluaproject.net/FrontPage

比較
 TechVillage〜Rubyとmruby,何が違う? どう違う?
 http://www.kumikomi.net/archives/2012/10/ep14mrb1.php?page=1

 Rubyとpythonとの比較(他多数)
 http://www.ossnews.jp/closeup/articles/?aid=201304-00001