Hi,
On 09/22/2014 08:26 AM, Praveen B wrote:
Hi
We are able to run Genode-14.08 on i.MX6 board. Now I am planning to add support for virtualization for Genode on i.MX6.
As the processor is Cortex-A9, it does not have virtualization extensions. So I am planning to implement a hypervisor to run para-virtualized linux, similar to the one proposed in the following paper, http://systems.cs.columbia.edu/archive/pub/2014/03/kvm-arm-the-design-and-im...
The paper you're refering to doesn't use a para-virtualization approach, but uses hardware assisted virtualization.
I am not sure that would work for ARMv7 as they have only tested for ARMv5. Can you suggest any other para-virtualization solutions preferred for the implementation of Genode. I saw L4Linux but it is a port of linux to L4Re and not to the kernel itself. On the other hand, SierraVisor and Xen are bare metal hypervisors.
You're right vanilla L4Linux is tied to L4Re, but we've a port of L4Linux that runs on Genode, but on Fiasco.OC only. Alternatively, if one instance of Linux is enough for your scenario, you might use the normal world of TrustZone to ease up para-virtualization, as you don't have to implement CPU virtualization on your own, but other devices only. The third alternative of course is to para-virtualize Linux from scratch.
The road map for Genode 14.11 says virtualization support for Cortex-A7. I assume you will be using virtualization extensions and not a para-virtualization solution.
Yes, we're planning to support hardware-assisted virtualization, although it should be called Cortex-A15 instead of Cortex-A7. Nevertheless, the difference should be negligible.
Can you suggest which is the best place to start. Should I implement a VMM similar to tz_vmm server or should it be implemented in base-hw as VMM should be in supevisor mode and not user mode.
If you're planning to build a para-virtualized solution on your own, I would strongly recommend to follow the spirit of Genode's microkernel based architecture. To minimize the trusted computing base (TCB) of all applications, the kernel shouldn't include code that is used just by a corner-case (para-virtualization) application. Instead use the scheme of having the virtual machine monitor within the user-mode. Thereby, the VMM might be linked together with the para-virtualized VM, like it is done in the L4Linux approach, or you change to a disjunct VMM task whenever the VM traps.
Regards Stefan
Regards Praveen Srinivas M.Tech 2nd Year, CSE, IIT Madras
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.cl...
genode-main mailing list genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main