Erlang on Xen: Redefining the Software Stack, Viktor Sovietov
Explores erlang on Xen: Redefining the Software Stack, Viktor Sovietov and evaluates key implications for security practitioners.
Summary
## Overview
Viktor Sovietov and Maxim Kharchenko from Cloudozer present Erlang on Xen, a novel virtual machine executing Erlang code without an underlying operating system. Started in 2009 with intensive development beginning a year ago, this entirely new VM (sharing no code with Ericsson's standard VM) runs on Xen paravirtualized domains. It achieves 4-5 millisecond startup latency and spawns over 10 VMs per second on a single physical node, with high compatibility to standard Erlang/OTP.
## Seven Architectural Commandments
The speakers present core principles for next-generation cloud software:
1. **Do not assume operating system presence**: View the cloud and language runtime as the operating system, eliminating unnecessary OS overhead in every VM instance.
2. **Software must be oblivious to physical node boundaries**: Enable applications to leverage cloud elasticity without considering physical constraints, achieving true horizontal scalability and automatic resource scaling.
3. **All services share a unified scalable fabric**: Unified management reduces deployment and maintenance costs while improving resource scheduling and enabling autonomous cloud systems.
4. **Run computations near data**: Treat cloud storage as computing infrastructure, running lightweight instances close to physical disks to reduce network traffic and IO overhead.
5. **Child nodes receive configuration from parent only**: Expand Erlang's supervisor-worker hierarchy to VMs for semi-automatic or fully automatic configuration distribution in large distributed applications.
6. **Avoid administration at all costs**: Automate administrative tasks within applications using dedicated supervisor VMs, eliminating human bottlenecks.
7. **SMP is an abomination of cloud computing**: Single-CPU VMs are more portable and migrable than large multi-core instances, remaining hardware-agnostic.
## Technical Details
Erlang on Xen is incompatible with OS-dependent standard library components but provides a free build service for public deployment. The team demonstrates ephemeral services—VMs provisioning on-demand (e.g., per HTTP request) without consuming idle resources. Two related projects are in early development: (1) **Dom 0 on Erlang and Xen**, replacing Linux in dom 0 with Erlang for clearer interfaces and autonomous management, with hardware drivers isolated in unprivileged domains; (2) **JavaScript in Zen Portal**, isolating web scripts in separate Zen domains for security and enabling native code execution alongside JavaScript with estimated 10-20% JavaScript performance penalty but potential 3x speedup through native implementations.
## Takeaways
The vision treats language runtimes as operating systems, eliminating physical hardware assumptions. This enables faster provisioning, better resource utilization, improved elasticity, and simplified management. The JavaScript/Xen security isolation work demonstrates practical applications, while the broader architectural approach fundamentally challenges how distributed systems should be engineered for cloud environments.
Related talks
The Linux Foundation·43 min
Nikhil Khedekar · Kostas Alexis
Evaluates unified Autonomy Stack and evaluates key implications for security practitioners.
The Linux Foundation·36 min
The Power of Consolidation: A Unified Stack for Business Intelligence, Securi... Josh Lee & Mya Jaye
Analyzes the Power of Consolidation: A Unified Stack for Business Intelligence, Securi... Josh Lee & Mya Jaye and evaluates key implications for security practitioners.
The Linux Foundation·36 min
Analyzes the MODERN Modern Data Stack: Building an Open Distributed Data Warehouse Beyond... David Aronchick and evaluates key implications for security practitioners.


