MicroRuby as a Multi-VM Operating System
With the emergence of PicoRuby, mruby-centered technologies have increasingly been used as lightweight operating environments for microcontrollers.
In this talk, I present a more self-contained approach: an operating system for microcontrollers built around MicroRuby, where the mruby VM serves as the system core. I call this framework Family mruby OS.
The system enables developers to write and run Ruby applications directly on a microcontroller with a GUI, using a USB keyboard, mouse, and display—without relying on a PC.
By leveraging FreeRTOS, multiple MicroRuby VMs, as well as VMs of other languages, can run concurrently at the machine-code level, enabling true multi-VM execution while keeping Ruby responsible for application lifecycle management.
I will explain the design and implementation of this framework, discuss the key technical challenges involved, and demonstrate the system running on real hardware.
-
Katsuhiko KageyamaI am an embedded software engineer and engineering manager at aptpod, Inc. Outside of my day job, I have been working on personal mruby-related projects for many years. Recently, my focus has been on PicoRuby, MicroRuby, and their practical applications.