Loadable module brings Xen to embedded Linux
Mar 21, 2006 — by LinuxDevices Staff — from the LinuxDevices Archive — 7 viewsSombrio Systems is alpha-testing a loadable kernel module and hard real-time application aimed at transforming a running Linux kernel into a Xen-compatible hypervisor. The Xen Loadable Module (XLM) can be used to build multi-function embedded devices in which each function runs in a protected domain, the company says.
Sombrio is a three-person engineering consulting company, and has no plans to offer XLM as a product, according to partner Christopher Stone. Instead, the company hopes to win contract work implementing the technology for client designs, possibly with additional help from an embedded development co-op the company belongs to.
XLM implements virtual CPUs that are scheduled on the available physical CPUs according to runtime-configurable, domain-specific parameters that can be adjusted on the fly, according to Sombrio. Like Xen, XLM has a low performance impact, according to the company. Module footprint is 156KB.
Unlike Xen, XLM was developed specifically for use in embedded systems, and will support a wide range of processor architectures, Sombrio says. It is being tested on 32-bit x86, with a port to 64-bit x86 expected next, and additional architecture support pending customer interest.
According to Sombrio, loading an XLM module in a running Linux kernel produces similar results to booting Xen, and then running Linux in domain 0. As with Xen, guest OSes running under XLM can use the domain 0 Linux kernel's device drivers, board support, network stacks, and other capabilities.
Currently, the XLM module is being tested with Linux 2.6.12 as the guest OS. VxWorks 6.2 and eCos support will be ready for demonstration and testing soon. Porting guest OSes to XLM will be easier than porting them to Xen, Sombrio claims.
Sombio projects a variety of uses for XLM, including:
- Redundant virtual machines with hot failover can protect against software faults
- Non-SMP (symmetrical multiprocessing) OSes can be run on multi-core processors
- XLM can support AMP (asynchronous multiprocessing) architectures in which Linux runs on one processor, and an RTOS runs on another
- Proprietary and GPL-licensed code can cohabitate without loss of rights, because the “hypervisor” architecture affords “license protection,” Sombrio says
Availability
The XLM module is currently alpha-testing, a process expected to last five to seven weeks. It will eventually be released under the GPLv2, likely after one or more customer implementations, according to Stone.
XLM availability will complete Sombrio's “Secure Embedded Domains” (SED) project, which aims to provide virtualization capabilities on top of the XLM module, the L4ka-Pistachio microkernel, and Xenomai. SED, in turn, is part of Sombrio's larger vision for an “industrial-strength” Linux reference implementation codenamed “Mekanix,” which the company hopes to finalize by year's end.
This article was originally published on LinuxDevices.com and has been donated to the open source community by QuinStreet Inc. Please visit LinuxToday.com for up-to-date news and articles about Linux and open source.