Mruby/c

mruby/c（エムルビー・スラッシュ・シー）は、オブジェクト指向スクリプト言語｢Ruby｣を組み込みシステム向けに軽量化した｢mruby｣よりプログラム実行時に必要なメモリ消費量が少ないプログラミング言語処理系である。プログラム実行時に必要なメモリ消費量は約40KBと小さく、リソースに制約のあるワンチップマイコン上でも動作する。
国立大学法人九州工業大学(田中和明准教授)としまねソフト研究開発センターの共同研究によって開発され、オープンソースライセンスの3条項BSDライセンスに基づきオープンソースとして公開されている。

概要
mruby/cは、プログラミング言語｢Ruby｣の高い開発生産性と優れた可読性を特徴を継承した組み込みシステム開発向けの軽量なRuby実装である。プログラム実行時に必要なメモリ消費量が約40KBと非常に小さく、リソースに制約のあるワンチップマイコン上でも動作する。そのため、センサーネットワークやウェアラブルデバイスなどの小型IoT機器のソフトウェア開発はもちろん、既存デバイスへのDSL(ドメイン固有言語)追加にも適している。

 特徴 
 高い開発生産性：Rubyの持つ生産性・表現力の高さを引き継ぐ。C言語と比べて短いステップで実装可能。
 小さなマイコンで動作：省電力・OSを使わず高速起動。電池駆動を実現。
 コンカレントな動作：複数のプログラムを同時に実行可能。複数のプログラマが独立してコーディングが可能。

 mrubyとmruby/cの比較 
mruby/cmrubyメモリサイズ< 40KB< 250KBターゲットワンチップ・マイクロコントローラ一般的な組み込みソフトウェア開発

 ターゲットCPU 
 Arm(32bit)
 RX210(32bit)
 PIC24(16bit)
 ESP32(32bit)
 RP2040(32bit)

mruby/cを採用している製品
 工業用ミシンの補助装置 
 mruby/c標準搭載マイコンボード｢RBoard｣ 
 CO2モニタリングIoTシステム｢WaKaYo｣ 
 オートフォーカスアイウェア｢ViXion01S｣ 

 脚注 

 外部リンク 
 mruby/c on GitHub

Category:Ruby
Category:組み込みシステム
Category:オープンソースソフトウェア