組み込み向けオブジェクト指向言語はどうよ(2013.07〜)
最近 .netMF や mruby など、次世代の組み込み用の枠組みの話題が散見されるようになってきた。
Python 対 Ruby 対 C#
つまり
組み込みpython(?) 対 mruby 対 .NET MicroFramework
といった関係になるのだろうか。
.NET MF , mruby を比べると、共に中間コードを実行する、オブジェクト指向言語、ほぼ同程度のハードウエアリソースが必要など、それなりに似ている。pyMite は8ビットCPU版も存在するように若干守備範囲が違う。また、Lua の組み込み版 eLua や Squirrel もある。
.netMF mruby 組み込みpython
(Python-on-a-Chip)eLua Squirrel 実行の方法 VM 主な記述言語 C# Ruby PiMite?python? クラス ○ ○ ○(?) × ○ GUIライブラリ 標準あり なし(独自実装) ? CPU ARM ARM,RX AVR?ARM? ARM(M3) サイズ? 基本的には1つ(?) ミニマル,スタンダード,フル
の3つ? サイズ?
ROM/RAM512K/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