All of lore.kernel.org
 help / color / mirror / Atom feed
From: Leonardo Taccari <iamleot@gmail.com>
To: anshul makkar <anshulmakkar@gmail.com>
Cc: xen-devel@lists.xen.org
Subject: Re: virtualization Android OS + XEN.
Date: Wed, 6 Aug 2014 13:58:32 +0200	[thread overview]
Message-ID: <53e2184d.c65cc20a.28f3.6641@mx.google.com> (raw)
In-Reply-To: <CACZDEvGWhPXwyNcoVW+F5GWvRzB6t0gyDE-voHkEojy=YcbDpQ@mail.gmail.com>

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:

 http://wiki.xenproject.org/wiki/Xen_ARM_TODO

...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'':

 http://wiki.xen.org/wiki/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
easily):

 http://wiki.xen.org/wiki/Xen_ARMv7_with_Virtualization_Extensions/Allwinner

...this link is also very helpful:

 http://openmirage.org/wiki/xen-on-cubieboard2

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):
    https://github.com/jwrdegoede/u-boot-sunxi
 * 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:
    http://emdebian.org/crosstools.html
   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:

 http://apsys11.ucsd.edu/papers/apsys11-varanasi.pdf
 

HTH!
Have fun! :)
Ciao,
L.


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

  parent reply	other threads:[~2014-08-06 11:58 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-06  9:19 virtualization Android OS + XEN anshul makkar
2014-08-06  9:56 ` Stefano Stabellini
2014-08-06 11:58 ` Leonardo Taccari [this message]
2014-08-07  9:44   ` anshul makkar
2014-08-07 14:01     ` Julien Grall
2014-08-08 11:12       ` anshul makkar
2014-08-08 11:40         ` Stefano Stabellini
2014-08-10  6:34           ` anshul makkar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=53e2184d.c65cc20a.28f3.6641@mx.google.com \
    --to=iamleot@gmail.com \
    --cc=anshulmakkar@gmail.com \
    --cc=xen-devel@lists.xen.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.