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 Kageyama
    Katsuhiko Kageyama

    I 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.