Run 2 OS Simultaneously on ARM (OMAP4) with Codezero Embedded Hypervisor

B Labs, a company specializing in ARM Virtualization, was at ARM Techcon 2011 showcasing Codezero, their Embedded Hypervisor to run multiple Linux OS such as Android and Chrome OS on ARM processors.

The main purpose of running 2 operating systems is to separate home and enterprise operating systems in mobile devices so that enterprise data is safe.

Charbax ( interviewed Bahadir Baldan, founder of B Labs, and showed a demo running 2 Android instances and another running Android and Linux in pandaboard.

The overhead is 10 to 15% according to B Labs, so the performance hit is minimal. They have already managed to run 4 OS on quad core processors with good performance. They are not able to run Windows operating systems (e.g. Windows Mobile 7.5/ Windows 8) yet, because Cortex A9 processors lack virtualization extensions. This will however be feasible with Cortex A15 processors as binary virtualization will be available. B Labs expects mobile virtualization to take off in 2013, as vdcresearch does:

Virtualization in embedded and mobile systems will increase
Driven by hardware bill of materials savings and reduced concerns regarding additional run-time execution latencies and costs, operating system virtualization will provide increased growth opportunities, and therefore will continue to be a significant focus for many suppliers.

Codezero is relatively small with about 10K lines of C code and is 100KB binary size.

If you have an OMAP4 pandaboard, you can try and/or develop for it by following the getting started instructions, it will show you how to install the hypervisor toolkit, build codezero for pandaboard and start development including how to port 3rd party software and using codezero API (12 System Calls).

If you don’t have a pandaboard, you could also download Vexpress/Cortex A9 image and run it in qemu.

Support CNX Software - Donate via PayPal or become a Patron on Patreon

Leave a Reply

3 Comment threads
0 Thread replies
Most reacted comment
Hottest comment thread
0 Comment authors
Mentor Embedded ARM Hypervisor Automotive Demo on Freescale i.MX6 BoardSamsung Unveils ATIV Q Android & Win8 Convertible Tablet, Galaxy NX DSLR Camera Running Android 4.2Canonical Brings Ubuntu Desktop to Multi-Core Android Smartphones | CNXSoft – Embedded Software Development Recent comment authors
newest oldest most voted
Notify of

[…] and Ubuntu UI) on top on that kernel. This technical solution should be more efficient than baremetal hypersivors such as Codezero, but requires the operating systems to share the same kernel, so for example, a combo iOS/Ubuntu […]


[…] Windows to get to Android, as both operating systems actually run simultaneously, probably via a bare metal hypervisor, and you can switch between the two within the blink of an eye thanks to the “dual OS” […]


[…] or desktop PC to run several operating systems simultaneous. About 2 years ago, I wrote about an embedded hypervisor running Linux and Android on the Pandaboard develompent board, with the goal of separating home and […]