マジセミドライブ

ウェビナー関連のニュースやITサービス&ツールの最新情報を随時配信します。

OSS情報

2020.01.01

【OSS情報アーカイブ】mruby

【OSS情報アーカイブ】mruby

※当記事に記載されている情報は、古くなっている場合があります。オフィシャルサイトで最新情報をご確認ください。

「mruby」とは

「mruby」基本情報

■概要

mruby(エムルビー)とは、Ruby言語の軽量実装です。組み込み開発やアプリケーション組み込み用途に向いています。

■基本説明

mrubyは、プログラミング言語「Ruby」のためのインタプリタであり、省メモリ版Ruby実装です。

一部ISO標準に準拠しており、「軽量」「簡単に組み込み可能」などの特徴があります。

■経緯

・2012年 初版リリース

mrubyプロジェクトは、Ruby言語の開発者でもある、まつもとゆきひろ氏が率いるプロジェクトで、100人以上の貢献者が開発に取り組んでいます。

mrubyは経済産業省のサポートを得て「平成22年度 地域イノベーション創出研究開発事業」「軽量Rubyを用いた組込みプラットフォームの研究・開発」において、2年の歳月をかけて開発されました。

主な特徴

■Rubyベース

mrubyは、Ruby言語がベースになっています。
→OSSxCloudNews →オープンソースの言語/Rubyとは

mrubyはRuby同様に、次のような特性を持っています。
・動的型付け言語(型なども実行時判断)
・「メモリ割り当て」「メモリ解放」などの管理が言語処理系により自動実行

■コンパイラ言語

コンパクト処理系「mruby VM」

mrubyは、VM(仮想マシン)上で動作するため環境に依存しません。

実行形式

Rubyアプリケーションはスクリプトですが、mrubyでは組み込み開発を考慮されており自由度が高くなっています。

・mrubyコンパイラによりバイトコードに変換して実行

・スクリプトのまま実行 など

クロス開発不要

mrubyアプリケーションは、環境に合わせたVMを用意することで動作できるため、クロス開発は不要です。

ハードウェア開発前にPC上でシミュレートすることで開発を開始できるメリットがあります。

■C言語との高い互換性

互換性

mrubyはC言語との高い互換性を持ちます。
・mrubyからC/C++の呼び出し
・C/C++からmrubyアプリの呼び出し など

C言語+mruby

mrubyは高速ですが、C言語と比較すると動作が遅い面もあるため「高速処理が必要な部分にはC/C++を使用」「その他はmrubyを使用」などのように、組み合わせて利用できます。

■インクリメンタルガベージコレクション

mrubyは緩やかなガベージコレクションを行うため、システムのリアルタイム性を損ないません。

ガベージコレクションの頻度を最適化する「Generational Mode」という手法も取り入れています。

■組み込み統合

組み込み開発における開発生産性

mrubyは、Rubyの「書きやすい」「習得しやすい」という特長を活かしつつ、組み込み開発の抱える短納期/高機能/低予算/技術者不足などの課題解消に貢献できる言語です。

省メモリ

mrubyは、100Kバイト程度の少ないメモリで動作できます。

アプリへの組み込み

一般的な組み込みシステムにmrubyを活用できますが、各種アプリケーションに対する組み込みも行えます。
・エディタのマクロ言語
・データベースのトランザクション言語
・アプリケーション設定ファイル
・Apacheへの組み込み(RubyでApacheを制御) など

補足情報

■同様製品

同様な機能を提供する製品として、次のようなものがあります。

オープンソース製品:「Lua」「P言語」など。

■オフィシャルサイト

オフィシャルサイト

→mruby

ライセンス情報

mrubyのライセンスは「MIT license」です。

詳細について、こちらを参照ください。
→GitHub →mruby/LEGAL

ダウンロード

→GitHub →mruby/mruby

 

参考元サイト

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

この記事のタグ一覧

おすすめの記事

【デジタル寺田の3分用語解説】「 VMWare 問題 」とは?🖥️

デジタル寺田の3分用語解説

2024.11.18

【デジタル寺田の3分用語解説】「 VMWare 問題 」とは?🖥️

「 VMWare 」の仮想化技術は、「ITインフラの効率化」に大きく貢献する技術ですが、Broadcomによる買収後のライセンス変更が大きな問題として注目されています。柔軟で慎重な契約見直しが今後の鍵となります。

【デジタル寺田の3分用語解説】「 2029年問題 」とは?📅

デジタル寺田の3分用語解説

2024.11.18

【デジタル寺田の3分用語解説】「 2029年問題 」とは?📅

「 2029年問題 」とは、高校でのデジタル教育改革により、新入社員と既存社員間でデジタルスキル格差が拡大する懸念を指します。企業は早急に対応が求められています。この格差は、企業競争力や業務効率にも、影響を及ぼす可能性があります。

【デジタル寺田の3分用語解説】「 経済産業省:コンテンツ制作のための 生成AI 利活用ガイドブック 」とは?📘

デジタル寺田の3分用語解説

2024.11.18

【デジタル寺田の3分用語解説】「 経済産業省:コンテンツ制作のための 生成AI 利活用ガイドブック 」とは?📘

経済産業省による「 生成AI 利活用ガイドブック 」は、企業やクリエイター向けに、安心して「生成AI」を利用するための、「指針」「実例」「注意点」を明示しています。「業務効率化」や「新しいアイデア創出」の支援を目的としています。