[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] virtualization Android OS + XEN.

ThanksÂLeonardo and Stefano.

The information you shared is really helpful to get me started and get basic understanding of where Xen stands in its support for ARM.Â

Below is my understanding, request your help to correct me if I am wrong.

1) XEN support for the ARM processor where hardware virtualization is not supported is not there.

2) Presently XEN port has been tested Âon the following cards.Â
  • The Cortex A15 Real-time System Model's provided by ARM
  • A Cortex-A15 Processor running on the Versatile Express
  • The Arndale board
  • The Calxeda ECX-2000 (aka Midway) server
  • Allwinner A20/A31 boards
I have Odroid Cortex A9 board, which doesn't have hardware virtualization. So for sure XEN can't be ported on that.

Any idea or test results for Cortex A15 board (ODroidXU3 )Âprovided by ODroid. Whether this board is supported or not ?

Please can you share some other board models that are cheap and supported by XEN ARM. What I have found on net is that all boards having Cortex A15 and hardware virtualization support, so that they are compatible with XEN, are quite expensive.

Anshul Makkar

On Wed, Aug 6, 2014 at 1:58 PM, Leonardo Taccari <iamleot@xxxxxxxxx> wrote:
Hello Anshul,

On Wed, Aug 06, 2014 at 11:19:28AM +0200, anshul makkar wrote:
> [...]
> I am working on a project Virtualdroid where I aim to achieve isolation for
> each VM.
> [...]
> Please can you share your thoughts on above. I am target Cortex A9 without
> hardware virtualization support and Cortex A15 with HW virtualization
> support.
The Xen ARM project (that requires ARM hardware virtualization
extensions) is pretty stable and very active...

A feature that is missing, compared to Xen x86, is the guest VM
save/restore/migration[0] but reading your email probably you will not
need it.
An interesting page about other features not available or WIP is this:


...but I suggest you to also search that on xen-devel@ ML as well.

A good introduction to Xen ARM is ``Xen ARM with Virtualization
Extensions whitepaper'':


I've investigated and used a bit Xen ARM on Debian GNU/Linux armhf
testing system both for Dom0 and DomU on a cubieboard2.
Every steps needed are documented here (probably you can adapt them


...this link is also very helpful:


In very few words for the GNU/Linux case (but probably you can apply
them also for Android):
Â* You need a modified version of u-boot in order to start the CPU in
 Ânon-secure mode (Xen runs in HYP mode):
Â* Initial Xen ARM support was added in Linux 3.7[1], and better support is
 Âavailable on more recent versions.
Â* u-boot, Linux kernel and Xen hypervisors are easily cross-compilable,
 Âin the Debian GNU/Linux case you will find Emdebian project useful:
 ÂThe interesting package that includes everything needed for
 Âcross-compilation is ``gcc-4.7-arm-linux-gnueabihf''.
Â* For compiling the Xen toolstack (xl, libxl, ...) I've used
 Âdebootstrap to generate an armhf chroot and then I've compiled it
 Âthanks to QEMU user mode emulation (dynamic binary translation).
 ÂInteresting package for Debian GNU/Linux is ``qemu-user-static''.
 ÂAfter you have succesfully generated a chroot then copy
 Â``qemu-arm-static''in the chroot's /usr/bin and then simply by
 Âchroot(8)-ing into it you can install the gcc packages and use it
 Âlike you are in an armhf system without any problems.
 ÂI've done that on my university laboratory that has old Intel Core
 ÂDuo and compiling Xen toolstack on them is pretty fast.

If you would like to know more about ARM hardware virtualization
extensions ``Hardware-Supported Virtualization on ARM'' by P. Varanasi
and G. Heiser IMHO is a well written paper:


Have fun! :)

Â[0]: http://lists.xen.org/archives/html/xen-devel/2014-04/msg02057.html
  Here you can find patches (not applied AFAIK) regarding guest VM
Â[1]: http://kernelnewbies.org/Linux_3.7#head-7e55c4d19ada23abf473d08e4384cbe7a7d7772d

Anshul Makkar
Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.