Crazierl: An Experimental Erlang Operating System That Runs BEAM on Bare Metal
A developer has created Crazierl, an experimental operating system based around BEAM (the Erlang virtual machine) that can boot on x86 hardware and participate in Erlang distributed clusters, running entirely without a host OS underneath.
What Is Crazierl?
Crazierl is a hobby/experimental operating system that runs BEAM directly on bare metal. It supports 32-bit x86, BIOS boot, and two NIC drivers (virtio-net and realtek 8168). The project includes a browser-based demo running in a v86 JavaScript x86 virtual machine.
Key Features
- BEAM virtual machine running on bare metal (no Linux underneath)
- SMP support (crashy with high core counts in QEMU)
- Network capability: can join an Erlang distributed cluster
- Built-in chat application (start with chat:start())
- Two network drivers: virtio-net and realtek 8168
- Apache 2.0 license
Demo
The browser demo uses v86 JavaScript x86 virtual machine. Users can share a link with a hashtag and, after clicking a consent checkbox, link up into an Erlang dist cluster. The developer notes it works slowly on phones and recommends desktop use.
Significance
Erlang/BEAM is renowned for its fault-tolerant, distributed computing capabilities, powering systems like WhatsApp and RabbitMQ. Running it on bare metal eliminates OS overhead and demonstrates BEAM's viability as a standalone runtime environment.
Limitations
- 32-bit x86 only
- BIOS boot only (no UEFI)
- Only two NIC drivers
- Uses esoteric legacy VGA features
- TCP debug spew present
- Concurrency bugs in SMP kernel at high core counts
Source: Hacker News, github.com/russor/crazierl