- UID
- 1029342
- 性别
- 男
|
===========ARM虚拟化调研报告=================================================
调研报告,总的来说调研结果如下:
1) 当前ARM虚拟化背景:
a) 商用背景:虚拟化很早就有解决方案了,其中著名的是OKL4 Microvisor by OKL4, MVP by VMware,Red Bend Software, Trango,VLX for ARM by VirtualLogic, INTEGRITY secure virtualization by Green Hills Software。 除了Green Hill外,其他都是半虚拟化,但都不开源。。 只有OKL4可以看到性能测试数据。
b) 研究背景:xen on arm是开源解决方案的先驱,性能很差但是至少有类似解决方案了;KVM for ARM写的是技术报告但是也算紧随其后;NICTA和OKL的几个哥们重新做了一个微内核支持ARM全虚拟化拓展的hypervisor,只能跑在模拟器上。
c) 新思路:2011年SOSP论文中有人在Android上实现了操作系统虚拟化(相比于系统虚拟化,OS虚拟化运行一个内核下运行多个独立的用户空间,而不是之前的一个,chroot就是一种常见的OS虚拟化)。实现了多个Android相互切换,性能非常理想,而且非常适合Android虚拟化需求,是一种非常好的虚拟化思路。
2) ARM虚拟化架构及发展:ARM是虚拟化不友好的结构,主要体现在如下几个方面:
i. 具有非特权的敏感指令
ii. 特权级不够,保护地址比较麻烦
iii. 有些没ASID的TLB造成的TLB flush比较多~
另外ARM虚拟化硬件支持发展大概分为两个部分:
iv. ARM TRUEZONE提供了简要的硬件支持,最主要的是具有了两个模式secure和non-secure模式,应该修改了非特权的敏感指令bug,Green Hill公司在其上实现了全虚拟化
v. ARM在2010年又提出了硬件拓展虚拟化,在non-secure之中上又增加了一个hyp模式。具体内容详见第三篇分析
3) ARM虚拟化趋势:类似微内核的独立hypervisor在兴起(个人感觉主要还是OKL在支持,商用方面占据绝对优势)。Xen on ARM 和xen on KVM会随着ARM硬件虚拟化提出实现做改变。OS虚拟化的发展也是一种非常好的方向,目前OS虚拟化的商业化进程感觉会远超一般的虚拟化发展。
4) 测试方法:lmbench居然成了默认方式,模拟器上大概估算的也就是各个操作的延时~ |
|